summaryrefslogtreecommitdiffstats
path: root/nihav-rad/src
diff options
context:
space:
mode:
Diffstat (limited to 'nihav-rad/src')
-rw-r--r--nihav-rad/src/codecs/bink2.rs3
-rw-r--r--nihav-rad/src/codecs/binkaud.rs3
-rw-r--r--nihav-rad/src/codecs/binkvid.rs3
-rw-r--r--nihav-rad/src/codecs/smacker.rs4
4 files changed, 13 insertions, 0 deletions
diff --git a/nihav-rad/src/codecs/bink2.rs b/nihav-rad/src/codecs/bink2.rs
index 8c09478..e56bff7 100644
--- a/nihav-rad/src/codecs/bink2.rs
+++ b/nihav-rad/src/codecs/bink2.rs
@@ -1937,6 +1937,9 @@ impl NADecoder for Bink2Decoder {
frm.set_frame_type(if self.key_frame { FrameType::I } else { FrameType::P });
Ok(frm.into_ref())
}
+ fn flush(&mut self) {
+ self.ips.clear();
+ }
}
pub fn get_decoder() -> Box<dyn NADecoder> {
diff --git a/nihav-rad/src/codecs/binkaud.rs b/nihav-rad/src/codecs/binkaud.rs
index b0c4fc2..86f4fb0 100644
--- a/nihav-rad/src/codecs/binkaud.rs
+++ b/nihav-rad/src/codecs/binkaud.rs
@@ -273,6 +273,9 @@ impl NADecoder for BinkAudioDecoder {
Err(DecoderError::InvalidData)
}
}
+ fn flush(&mut self) {
+ self.delay = [[0.0; 256]; 2];
+ }
}
pub fn get_decoder_dct() -> Box<dyn NADecoder> {
diff --git a/nihav-rad/src/codecs/binkvid.rs b/nihav-rad/src/codecs/binkvid.rs
index 69e30fe..6d6c14a 100644
--- a/nihav-rad/src/codecs/binkvid.rs
+++ b/nihav-rad/src/codecs/binkvid.rs
@@ -1258,6 +1258,9 @@ println!("decode frame {} b={} i={}", pkt.get_pts().unwrap(), self.is_ver_b, sel
frm.set_frame_type(FrameType::P);
Ok(frm.into_ref())
}
+ fn flush(&mut self) {
+ self.ips.clear();
+ }
}
pub fn get_decoder() -> Box<dyn NADecoder> {
diff --git a/nihav-rad/src/codecs/smacker.rs b/nihav-rad/src/codecs/smacker.rs
index 99d40d6..cb7d0ba 100644
--- a/nihav-rad/src/codecs/smacker.rs
+++ b/nihav-rad/src/codecs/smacker.rs
@@ -465,6 +465,8 @@ impl NADecoder for SmackerVideoDecoder {
frm.set_frame_type(ftype);
Ok(frm.into_ref())
}
+ fn flush(&mut self) {
+ }
}
pub fn get_decoder_video() -> Box<dyn NADecoder> {
@@ -589,6 +591,8 @@ impl NADecoder for SmackerAudioDecoder {
Err(DecoderError::InvalidData)
}
}
+ fn flush(&mut self) {
+ }
}
pub fn get_decoder_audio() -> Box<dyn NADecoder> {