From 65bae4cf1e392eb84186de4ed37c5d0c57db5c52 Mon Sep 17 00:00:00 2001 From: Kostya Shishkov Date: Sat, 10 Oct 2026 16:50:58 +0200 Subject: [PATCH] mov: work around one old bug --- nihav-commonfmt/src/demuxers/mov/track.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/nihav-commonfmt/src/demuxers/mov/track.rs b/nihav-commonfmt/src/demuxers/mov/track.rs index 8c48cae..d45bef0 100644 --- a/nihav-commonfmt/src/demuxers/mov/track.rs +++ b/nihav-commonfmt/src/demuxers/mov/track.rs @@ -716,7 +716,12 @@ fn read_stsc(track: &mut Track, br: &mut dyn ByteIO, size: u64) -> DemuxerResult track.pkt_demux.sample_map = Vec::with_capacity(entries); let mut last_chunk_no = 0; for _i in 0..entries { - let chunk_no = br.read_u32be()?; + let mut chunk_no = br.read_u32be()?; + // QT2.0 bug? + if chunk_no == last_chunk_no && last_chunk_no == 5 { + println!("slightly buggy QT2.0 sample?"); + chunk_no = 6; + } validate!(chunk_no > last_chunk_no); let nsamples = br.read_u32be()?; let sample_desc = br.read_u32be()?; -- 2.39.5