X-Git-Url: https://git.nihav.org/?p=nihav.git;a=blobdiff_plain;f=nihav-commonfmt%2Fsrc%2Fcodecs%2Fts102366.rs;h=c4b18004169c0827f8a6c9828471d60d9ac378b6;hp=d6f214403323472bbfcbf45363f575e04c7224de;hb=78fb6560c73965d834b215fb0b49505ae5443288;hpb=5580b11b0e9daf065c81a8b354295c6d5d1dd3dd diff --git a/nihav-commonfmt/src/codecs/ts102366.rs b/nihav-commonfmt/src/codecs/ts102366.rs index d6f2144..c4b1800 100644 --- a/nihav-commonfmt/src/codecs/ts102366.rs +++ b/nihav-commonfmt/src/codecs/ts102366.rs @@ -2,7 +2,7 @@ use nihav_core::formats::*; use nihav_core::frame::*; use nihav_core::codecs::*; use nihav_core::io::bitreader::*; -use nihav_core::dsp::fft::*; +use nihav_codec_support::dsp::fft::*; use std::str::FromStr; use std::f32::consts; @@ -831,6 +831,7 @@ impl AudioBlock { bap_buf_fill: [0; 3], } } + #[allow(clippy::cyclomatic_complexity)] fn read(&mut self, br: &mut BitReader, bsi: &BSI, fscod: usize, blk_no: usize) -> DecoderResult { let channels = bsi.acmod.get_num_channels(); let is_stereo = bsi.acmod == ACMode::Stereo; @@ -1171,9 +1172,9 @@ impl NADecoder for AudioDecoder { let mut br; if (pktbuf[0] == MAGIC_BYTE0) && (pktbuf[1] == MAGIC_BYTE1) { - br = BitReader::new(pktbuf.as_slice(), pktbuf.len(), BitReaderMode::BE); + br = BitReader::new(pktbuf.as_slice(), BitReaderMode::BE); } else if (pktbuf[0] == MAGIC_BYTE1) && (pktbuf[1] == MAGIC_BYTE0) { - br = BitReader::new(pktbuf.as_slice(), pktbuf.len(), BitReaderMode::LE16MSB); + br = BitReader::new(pktbuf.as_slice(), BitReaderMode::LE16MSB); } else { return Err(DecoderError::InvalidData); } @@ -1240,7 +1241,13 @@ impl NADecoder for AudioDecoder { } } -pub fn get_decoder() -> Box { +impl NAOptionHandler for AudioDecoder { + 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 { Box::new(AudioDecoder::new()) } @@ -1248,15 +1255,15 @@ pub fn get_decoder() -> Box { mod test { use nihav_core::codecs::RegisteredDecoders; use nihav_core::demuxers::RegisteredDemuxers; - use nihav_core::test::dec_video::test_decode_audio; - use crate::codecs::generic_register_all_codecs; - use nihav_realmedia::demuxers::realmedia_register_all_demuxers; + use nihav_codec_support::test::dec_video::test_decode_audio; + use crate::generic_register_all_decoders; + use nihav_realmedia::realmedia_register_all_demuxers; #[test] fn test_ts102366() { let mut dmx_reg = RegisteredDemuxers::new(); realmedia_register_all_demuxers(&mut dmx_reg); let mut dec_reg = RegisteredDecoders::new(); - generic_register_all_codecs(&mut dec_reg); + generic_register_all_decoders(&mut dec_reg); let file = "assets/RV/sp_sample1.rm"; test_decode_audio("realmedia", file, Some(12000), None/*Some("ac3")*/, &dmx_reg, &dec_reg);