mirror of
https://github.com/storytold/filmcraft.git
synced 2026-10-24 10:10:05 -06:00
#790: Matroska audio oracle checks the encoded signal, robust to older ffmpeg
ffmpeg's CLI handles Matroska priming differently by version: 9.x trims CodecDelay, 2023-24 static builds keep the priming samples (AAC 1024, AC-3 / E-AC-3 256, MP3 1105), so a +-40-sample best-lag search against its decode landed on a spurious minimum (4 or 24 samples). matroska_audio_oracle now has ffmpeg encode a reference signal we generate (low-passed xorshift noise) and asserts our decode lines up with that signal to the sample, the stream's own CodecDelay trimmed: version-independent, and it fails on the old ms-rounded trim (-16). ffmpeg's decode is compared after a best-lag search bounded by the CodecDelay; its lag is reported, the waveform must match (< 1e-3). E-AC-3 joins the cases. eac3_oracle's .mkv case accepts lag 0 or the 256-sample priming; MP4 / MOV / TS stay strictly at lag 0. Verified with ffmpeg 9.0.2 and the static N-71064 (2024-06) build. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
3b48565ecb
commit
c2c7f1206c
@@ -39,7 +39,7 @@ only). "Tested" names the evidence.
|
||||
| QuickTime MOV | read + write | yes | yes (H.264, HEVC, ProRes, DNxHR, APV, MJPEG, PCM) | ffprobe | 90% |
|
||||
| MXF OP1a / OP-Atom | read + write (XDCAM, AVC-Intra, P2, AS-10 / AS-11, JPEG 2000, DNx) | yes (AVC, DNx, ProRes, MPEG-2, PCM / AES3, timecode) | OP1a (DNxHR, ProRes, H.264), OP-Atom | index-table seeking tests | 70% |
|
||||
| MPEG TS / PS (AVCHD `.mts`, `.m2ts`, `.ts`, `.mpg`, `.vob`, `.mod`) | read; write MPEG-2 / Blu-ray / DVD | yes | **no** | fixtures | 65% |
|
||||
| Matroska / WebM | read (limited) | yes (H.264, HEVC, VP9, AV1, ProRes, MJPEG + AAC, Opus, FLAC, MP3, Vorbis, PCM); WebM black report (#432), MKV multi-audio (#601) | no | fixtures; audio sample-aligned with ffmpeg (#790) | 75% |
|
||||
| Matroska / WebM | read (limited) | yes (H.264, HEVC, VP9, AV1, ProRes, MJPEG + AAC, Opus, FLAC, MP3, Vorbis, PCM); WebM black report (#432), MKV multi-audio (#601) | no | fixtures; audio sample-aligned with the encoded signal (#790) | 75% |
|
||||
| **AVI** | read + write | **no** (extension listed, no demuxer, #598) | no | — | 0% |
|
||||
| WMV / ASF | read; write on Windows | no | no | — | 0% |
|
||||
| FLV / F4V | read + write | no | no | — | 0% |
|
||||
|
||||
Reference in New Issue
Block a user