npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@hypit/audio-track

v0.2.0

Published

Audio Track is the plain sound-placement package:

Readme

@hypit/audio-track

Audio Track is the plain sound-placement package:

Audio Clip = normalized audio source + absolute Window + sampling + mix
Audio Track = additive set of Audio Clips

Timeline supplies the program clock, not hidden audio. Each Clip names its own normalized source and destination Window. The Track publishes .program for declared tooling and .audio as an ordinary peer contribution to Film.

<time:Window id="reveal-hit-window" timeline={program.timeline}
  from={reveal} for="600ms"/>

<audio:Track id="mix" timeline={program.timeline}>
  <audio:Clip id="voice" source={speaker-media.media} during={program.speaker}/>
  <audio:Clip id="music" source={music-media.media} during={program.window}
    gain="0.18" fade-in="12f" fade-out="18f">
    <audio:Map target-at="end" source-at="end" rate="1"
      wrap-from="start" wrap-until="end"/>
  </audio:Clip>
  <audio:Clip id="reveal-hit" source={hit-media.media}
    during={reveal-hit-window} gain="0.45"/>
</audio:Track>

during consumes a resolved Window. Timeline authoring or a domain projector declares that value upstream; Audio Track neither constructs time ranges nor recognizes semantic, beat or other domains.

gain is a linear multiplier and fades default to zero. Omitting Map means bounded partial identity: target start maps to source start at native rate, and excess Window time is silent. One Map relates target and source intervals through an exact positive rate; wrap-from/wrap-until makes a selected source interval periodic. A Map without rate, anchors or wrap fits its source interval across its target interval while preserving pitch; optional min-rate/max-rate bounds make that fit fail instead of silently exceeding an authored safety range. Multiple non-overlapping Maps form one partial function, and gaps are silence.

Audio deliberately does not inherit visual-only laws such as a zero-rate held frame or reverse picture sampling. It owns positive, pitch-preserving tempo mapping in the same small algebraic shape, without placing an audiovisual policy in Core.

Speech, music, ambience and effects are equal Audio Clips. A source that helped determine Timeline duration or anchors leaves no special marker in the audio-placement path. Reusing one normalized source in two Clips creates two independent occurrences.

Audio Track has no generic Presentation, Style or Use. Ducking, crossfades, continuing speaker roles and other relationships spanning multiple Clips are ordinary components. They may calculate level automation—gain envelopes and audibility regions—and publish a normal terminal AudioTrack; the base package and Core do not acquire a catalogue of sound roles or effects.

Using synchronized media here does not make its picture visible. Author picture independently with @hypit/visual-track.

Distribution and Studio

Audio Track is an independently versioned official Author Package. The official Hypit video Distribution installs it by an ordinary npm dependency, while Source selects it explicitly with <import from="@hypit/audio-track@1" .../>. The package owns its Clip/Track authoring model, runtime facet and specialized Studio companion in one activation and one release lifecycle.

The terminal Composition.AudioTrack ABI remains owned by Composition rather than this package. Other components can therefore publish an AudioTrack without depending on Audio Track, and Studio's generic terminal fallback can still display those contributions. Package managers and ordinary lockfiles select the physical package version; Hypit does not add another version or installation mechanism.