crates/codecs decodes Opus with filmcraft-opus (48 kHz output): - Matroska/WebM A_OPUS: CodecPrivate = OpusHead. CodecDelay removes the pre-skip exactly (header pre-skip when CodecDelay is absent); packet starts are accumulated from TOC durations because block timestamps are only tick-accurate. Random access decodes max(SeekPreRoll, 320 ms) first. - MP4/MOV Opus + dOps: edit list removes pre-skip (dOps pre-skip without one); same pre-roll on random access. - Family-1 surround reordered from Vorbis to WAV/SMPTE channel order; corrupt packets are concealed instead of failing. Tests (ffmpeg/libopus fixtures, skipped when absent): WebM stereo, MKV mono VoIP (SILK/hybrid), MKV 5.1 multistream, MP4 stereo; sample-aligned against libopus (52-89 dB sequential, 45-89 dB after random access). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| src | ||
| Cargo.toml | ||