From afeaafd57f1a0d84e26ce9bd7b2a5c93bac058ec Mon Sep 17 00:00:00 2001 From: Kostya Shishkov Date: Sat, 22 Aug 2026 19:01:58 +0200 Subject: [PATCH] duck_ivf: support files with zero declared frames --- nihav-duck/src/demuxers/ivf.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/nihav-duck/src/demuxers/ivf.rs b/nihav-duck/src/demuxers/ivf.rs index 8ed287a..61dbcbe 100644 --- a/nihav-duck/src/demuxers/ivf.rs +++ b/nihav-duck/src/demuxers/ivf.rs @@ -49,8 +49,9 @@ impl<'a> DemuxCore<'a> for IVFDemuxer<'a> { } fn get_frame(&mut self, strmgr: &mut StreamManager) -> DemuxerResult { - while self.frameno < self.nframes { - let fsize = self.src.read_u32le()? as usize; + while self.nframes == 0 || self.frameno < self.nframes { + let fsize = self.src.read_u32le() + .map_err(|err| if self.nframes == 0 { DemuxerError::EOF } else { DemuxerError::from(err) })? as usize; let tstamp = self.src.read_u64le()?; self.frameno += 1; -- 2.39.5