Skip to content

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 20 Jul 14:47
Migrate muxer: deprecated mp4-muxer -> Mediabunny

mp4-muxer is deprecated upstream; Mediabunny (same author) supersedes
it. Like-for-like migration of the fast exporter's muxing layer:

- Muxer/ArrayBufferTarget -> Output + Mp4OutputFormat(fastStart
  "in-memory") + BufferTarget, per the official migration guide
- addVideoChunk/addAudioChunk -> EncodedVideoPacketSource /
  EncodedAudioPacketSource .add(EncodedPacket.fromEncodedChunk(...));
  adds are async, so per-track promise chains preserve decode order
  behind the sync encoder callbacks
- our own encoding logic (pickAvc codec probe, AAC bitrate ladder,
  queue backpressure) is unchanged

New e2e regression test encodes a real 1s clip through VideoEncoder +
Mediabunny and asserts a valid MP4 (ftyp) comes out — video-only so it
runs on Linux CI too (no AAC encode in Linux Chromium). Finding along
the way: Playwright's chromium-headless-shell build crashes on
VideoEncoder.encode despite isConfigSupported returning true — browser
tests now use the full chromium build (channel "chromium").

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>