X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=nihav-rad%2Fsrc%2Fcodecs%2Fsmacker.rs;h=c22362b6b2a5721d265a639bcec3bc56a232f3c2;hb=08a1fab72215ea7716f51adf7008f85372e80c71;hp=f3628bedc6f6e92a1e1a0041dd63056639b596eb;hpb=01613464323864a655c994820d3c43df1954e3b2;p=nihav.git diff --git a/nihav-rad/src/codecs/smacker.rs b/nihav-rad/src/codecs/smacker.rs index f3628be..c22362b 100644 --- a/nihav-rad/src/codecs/smacker.rs +++ b/nihav-rad/src/codecs/smacker.rs @@ -444,9 +444,7 @@ impl NADecoder for SmackerVideoDecoder { if src.len() > PAL_SIZE { let mut br = BitReader::new(&src[PAL_SIZE..], src.len() - PAL_SIZE, BitReaderMode::LE); - let bufret = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 2); - if let Err(_) = bufret { return Err(DecoderError::InvalidData); } - bufinfo = bufret.unwrap(); + bufinfo = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 2)?; let mut buf = bufinfo.get_vbuf().unwrap(); is_intra = self.decode_frame(&mut br)?; self.output_frame(&mut buf); @@ -467,9 +465,11 @@ impl NADecoder for SmackerVideoDecoder { frm.set_frame_type(ftype); Ok(frm.into_ref()) } + fn flush(&mut self) { + } } -pub fn get_decoder_video() -> Box { +pub fn get_decoder_video() -> Box { Box::new(SmackerVideoDecoder::new()) } @@ -591,9 +591,11 @@ impl NADecoder for SmackerAudioDecoder { Err(DecoderError::InvalidData) } } + fn flush(&mut self) { + } } -pub fn get_decoder_audio() -> Box { +pub fn get_decoder_audio() -> Box { Box::new(SmackerAudioDecoder::new()) } @@ -626,6 +628,6 @@ mod test { //let file = "assets/RAD/20130507_audio-distortion.smk"; let file = "assets/RAD/wetlogo.smk"; - test_decode_audio("smacker", file, None, "smk", &dmx_reg, &dec_reg); + test_decode_audio("smacker", file, None, None/*Some("smk")*/, &dmx_reg, &dec_reg); } }