From: Kostya Shishkov Date: Sat, 22 Aug 2026 17:01:58 +0000 (+0200) Subject: duck_ivf: support files with zero declared frames X-Git-Url: https://git.nihav.org/?a=commitdiff_plain;h=afeaafd57f1a0d84e26ce9bd7b2a5c93bac058ec;p=nihav.git duck_ivf: support files with zero declared frames --- 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;