X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;ds=sidebyside;f=nihav-rad%2Fsrc%2Fdemuxers%2Fsmacker.rs;h=00724cf5b0c7be3b0a2d9ccaeebcc9e9ed396167;hb=217de10bc01258d3a479c2784d6c5542c30b0f63;hp=340af85989617c928cc968dce3b09498d2da7315;hpb=a480a0de101483d802a11e72d758dae00fa4860a;p=nihav.git diff --git a/nihav-rad/src/demuxers/smacker.rs b/nihav-rad/src/demuxers/smacker.rs index 340af85..00724cf 100644 --- a/nihav-rad/src/demuxers/smacker.rs +++ b/nihav-rad/src/demuxers/smacker.rs @@ -252,11 +252,7 @@ impl<'a> DemuxCore<'a> for SmackerVideoDemuxer<'a> { Ok(pkt) } 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, - }; + let seek_to_start = matches!(time, NATimePoint::Milliseconds(0) | NATimePoint::PTS(0)); if seek_to_start { let start = self.start; self.src.seek(SeekFrom::Start(start))?; @@ -294,7 +290,7 @@ impl<'a> SmackerVideoDemuxer<'a> { } } fn reset_state(&mut self) { - self.queued_packets.truncate(0); + self.queued_packets.clear(); } } @@ -314,6 +310,7 @@ mod test { #[test] fn test_smk_demux() { + // sample: https://samples.mplayerhq.hu/game-formats/smacker/20130507_audio-distortion.smk let mut file = File::open("assets/RAD/20130507_audio-distortion.smk").unwrap(); // let mut file = File::open("assets/RAD/ajfstr1.smk").unwrap(); // let mut file = File::open("assets/RAD/credits.smk").unwrap();