#52

Add Opus audio to MP4 recordings

Openchruffinswants to merge intofrom

Summary

Add audio to recordings.

  • Add a dedicated continuous Opus encoder for recordings, preserving silence and leaving live viewer audio behavior unchanged.
  • Include Opus packets as a synchronized audio track in recorded MP4s across Linux, macOS, and Windows capture paths.
  • Preserve audio packet timestamps so MP4 edit lists trim audio before the video origin and retain gaps between capture runs.
  • Use static Opus linkage on Windows, matching the existing microphone bindings.
  • Add a tone/silence/tone integration test that verifies H.264 + Opus tracks and audio timing.

Testing

  • cargo fmt --check
  • cargo test --locked on macOS (18 passed, 1 ignored) and Linux (18 passed, 1 ignored)
  • node --check bench/tests/record-audio.mjs
  • Linux build and end-to-end bench/tests/record-audio.mjs passed in an isolated Docker container.

Activity

3