mirror of
https://github.com/storytold/filmcraft.git
synced 2026-10-24 10:10:05 -06:00
ffmpeg prints "corrupt decoded frame" as a warning, so the oracle's `-v error -ec 0` decode let a stream with a whole slice missing pass silently. Switching that decode to `-v warning` is not enough: with `-ec 0`, ffmpeg 7.1/8.1 flags every picture that has more than one slice, libx264's multi-slice streams included, while the pixels are unchanged. That is the 119/120 in #74; the encoder's bitstream is not at fault (VideoToolbox decodes the same streams bit-identically, and ffmpeg with strict error detection reports nothing). The oracle now decodes with ffmpeg's default concealment, `-v warning` and `-err_detect +crccheck+bitstream+buffer+explode`, fails on any output or a non-zero exit, and still compares every pixel with the encoder's reconstruction. A negative control drops and truncates slices (CAVLC and CABAC, 3 slices) and checks the oracle reports each one; it fails with the old flags. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>