X-Git-Url: https://git.nihav.org/?p=nihav.git;a=blobdiff_plain;f=nihav-realmedia%2Fsrc%2Fcodecs%2Fra288.rs;h=624769dd04fc816bec4069789bca69c53c2d1006;hp=9a30ab467967958ef4ff7510a5209f1f06a77f0b;hb=78fb6560c73965d834b215fb0b49505ae5443288;hpb=e07387c7f125550a41faf36a509b252cf71d7f9a diff --git a/nihav-realmedia/src/codecs/ra288.rs b/nihav-realmedia/src/codecs/ra288.rs index 9a30ab4..624769d 100644 --- a/nihav-realmedia/src/codecs/ra288.rs +++ b/nihav-realmedia/src/codecs/ra288.rs @@ -175,7 +175,7 @@ impl NADecoder for RA288Decoder { let dst = adata.get_data_mut().unwrap(); for (input, output) in pktbuf.chunks(FRAME_SIZE).zip(dst.chunks_mut(NBLOCKS * BLOCKSIZE)) { - let mut br = BitReader::new(input, input.len(), BitReaderMode::LE); + let mut br = BitReader::new(input, BitReaderMode::LE); for (i, block) in output.chunks_mut(BLOCKSIZE).enumerate() { let gain = RA288_GAIN_TAB[br.read(3)? as usize]; @@ -197,9 +197,17 @@ impl NADecoder for RA288Decoder { frm.set_keyframe(true); Ok(frm.into_ref()) } + fn flush(&mut self) { + } +} + +impl NAOptionHandler for RA288Decoder { + fn get_supported_options(&self) -> &[NAOptionDefinition] { &[] } + fn set_options(&mut self, _options: &[NAOption]) { } + fn query_option_value(&self, _name: &str) -> Option { None } } -pub fn get_decoder() -> Box { +pub fn get_decoder() -> Box { Box::new(RA288Decoder::new()) } @@ -207,18 +215,18 @@ pub fn get_decoder() -> Box { mod test { use nihav_core::codecs::RegisteredDecoders; use nihav_core::demuxers::RegisteredDemuxers; - use nihav_core::test::dec_video::*; - use crate::codecs::realmedia_register_all_codecs; - use crate::demuxers::realmedia_register_all_demuxers; + use nihav_codec_support::test::dec_video::*; + use crate::realmedia_register_all_decoders; + use crate::realmedia_register_all_demuxers; #[test] fn test_ra288() { let mut dmx_reg = RegisteredDemuxers::new(); realmedia_register_all_demuxers(&mut dmx_reg); let mut dec_reg = RegisteredDecoders::new(); - realmedia_register_all_codecs(&mut dec_reg); + realmedia_register_all_decoders(&mut dec_reg); let file = "assets/RV/A0000044.rm"; - test_decode_audio("realmedia", file, Some(5000), "ra28.8", &dmx_reg, &dec_reg); + test_decode_audio("realmedia", file, Some(5000), None/*Some("ra28.8")*/, &dmx_reg, &dec_reg); } }