@moq/media-sync
Transport-neutral media clock, pacing, cancellation, and generation-safe delivery queues shared by Hang and moqtail.
Delivery callbacks stage effects and return a commit function. Resetting or cancelling the owning track after an await prevents that commit from running.
Release
@moq/media-sync is proposed upstream to moq-dev/moq from
Blockcast/moq feat/media-sync-core and is not
released there yet. The @moq scope belongs to moq-dev, so this workspace package is private and is never
published under that name.
Consumers outside this repository install the temporary Blockcast release through an npm alias, which keeps
their @moq/media-sync imports unchanged:
"@moq/media-sync": "npm:@blockcast/[email protected]"
bun run pack:blockcast builds that tarball with the identity and upstream provenance in release.json, records
the source commit in the manifest's blockcast.source, refuses file:/link:/workspace:/absolute dependency
specs, installs it into a temporary consumer, imports both entrypoints, runs the shared clock vectors, and removes
the temporary files.
Switch back once moq-dev publishes @moq/media-sync with these exports: point the alias at the upstream package,
confirm the shared vectors pass against it, and delete release.json and pack.ts.