X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=nihav-rad%2Fsrc%2Fdemuxers%2Fsmacker.rs;h=6d1173cc2b6350abad16c8397fb849f03244bd44;hb=24d998947d55228ec37a08cd391983c6239e3c0c;hp=41cad05e853d5bd3527b3d8da737bff660fb40bc;hpb=787b8d03074419d7f8e6b52daba02a3807444bc2;p=nihav.git diff --git a/nihav-rad/src/demuxers/smacker.rs b/nihav-rad/src/demuxers/smacker.rs index 41cad05..6d1173c 100644 --- a/nihav-rad/src/demuxers/smacker.rs +++ b/nihav-rad/src/demuxers/smacker.rs @@ -95,6 +95,7 @@ fn get_pts_inc(val: i32) -> u64 { } impl<'a> DemuxCore<'a> for SmackerVideoDemuxer<'a> { + #[allow(clippy::unreadable_literal)] fn open(&mut self, strmgr: &mut StreamManager, _seek_idx: &mut SeekIndex) -> DemuxerResult<()> { let src = &mut self.src; let mut magic: [u8; 4] = [0; 4]; @@ -164,6 +165,8 @@ impl<'a> DemuxCore<'a> for SmackerVideoDemuxer<'a> { Ok(()) } + #[allow(clippy::identity_op)] + #[allow(clippy::unreadable_literal)] fn get_frame(&mut self, strmgr: &mut StreamManager) -> DemuxerResult { if !self.queued_packets.is_empty() { let pkt = self.queued_packets.pop().unwrap(); @@ -248,8 +251,13 @@ impl<'a> DemuxCore<'a> for SmackerVideoDemuxer<'a> { Ok(pkt) } - fn seek(&mut self, time: u64, _seek_idx: &SeekIndex) -> DemuxerResult<()> { - if time == 0 { + fn seek(&mut self, time: NATimePoint, _seek_idx: &SeekIndex) -> DemuxerResult<()> { + let seek_to_start = match time { + NATimePoint::Milliseconds(0) => true, + NATimePoint::PTS(0) => true, + _ => false, + }; + if seek_to_start { let start = self.start; self.src.seek(SeekFrom::Start(start))?; self.cur_frame = 0;