review: also drop ffmpeg's "Last message repeated N times" summary

With stderr piped, ffmpeg collapses identical messages into one copy
plus a summary line, which still failed the verdict.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Roland 2026-10-23 11:28:16 -06:00
parent 2eb4737689
commit bff1a1470e
No known key found for this signature in database
GPG key ID: 1BA620CE6C9A4680
2 changed files with 8 additions and 1 deletions

View file

@ -164,7 +164,10 @@ def tail_decode_command(video_path: Path, seconds: int = None) -> Tuple[str | Pa
# The null muxer complains about duplicate timestamps after the frames have decoded; it is not damage.
TAIL_DECODE_IGNORED_ERRORS = re.compile(r'^\[null @ \w+] Application provided invalid, non monotonically increasing dts')
# A repeat summary only counts the previous message, whose first copy is still judged.
TAIL_DECODE_IGNORED_ERRORS = re.compile(
r'^\[null @ \w+] Application provided invalid, non monotonically increasing dts'
r'|^\s*Last message repeated \d+ times\s*$')
def _tail_decode_verdict(return_code: int, stderr: bytes | str) -> Tuple[bool, str]:

View file

@ -676,6 +676,10 @@ NULL_MUXER_DTS = b'[null @ 0x5555faf7fa70] Application provided invalid, non mon
# Duplicate timestamps are reported by the null muxer, not a decoder; the stream decoded.
(0, NULL_MUXER_DTS, True, ''),
(0, NULL_MUXER_DTS * 3, True, ''),
# ffmpeg collapses identical messages into a summary line when stderr is not a terminal.
(0, NULL_MUXER_DTS + b' Last message repeated 118 times\n', True, ''),
(0, NULL_MUXER_DTS + b' Last message repeated 118 times\n[h264 @ 0x1] Invalid NAL unit size\n', False,
'[h264 @ 0x1] Invalid NAL unit size'),
(0, NULL_MUXER_DTS + b'[h264 @ 0x1] Invalid NAL unit size\n', False, '[h264 @ 0x1] Invalid NAL unit size'),
(0, b'[h264 @ 0x1] error while decoding MB 3 4\n', False, '[h264 @ 0x1] error while decoding MB 3 4'),
(1, NULL_MUXER_DTS, False, ''),