rename register_all_codecs to register_all_decoders
[nihav.git] / nihav-commonfmt / src / codecs / aac.rs
index c2ef76aab74c7e60806f701cb73b7cea56c0cca6..d3f991b4da925f1bee1deec2257bd44c29317389 100644 (file)
@@ -1,8 +1,8 @@
 use nihav_core::formats::*;
 use nihav_core::frame::*;
 use nihav_core::codecs::*;
-use nihav_core::dsp::mdct::IMDCT;
-use nihav_core::dsp::window::*;
+use nihav_codec_support::dsp::mdct::IMDCT;
+use nihav_codec_support::dsp::window::*;
 use nihav_core::io::bitreader::*;
 use nihav_core::io::codebook::*;
 use std::fmt;
@@ -147,7 +147,7 @@ impl M4AInfo {
         }
     }
     fn read(&mut self, src: &[u8]) -> DecoderResult<()> {
-        let mut br = BitReader::new(src, src.len(), BitReaderMode::BE);
+        let mut br = BitReader::new(src, BitReaderMode::BE);
         self.otype = Self::read_object_type(&mut br)?;
         self.srate = Self::read_sampling_frequency(&mut br)?;
         validate!(self.srate > 0);
@@ -1003,6 +1003,7 @@ impl DSP {
             tmp: [0.0; 2048], ew_buf: [0.0; 1152],
         }
     }
+    #[allow(clippy::cyclomatic_complexity)]
     fn synth(&mut self, coeffs: &[f32; 1024], delay: &mut [f32; 1024], seq: u8, window_shape: bool, prev_window_shape: bool, dst: &mut [f32]) {
         let long_win  = if window_shape { &self.kbd_long_win  } else { &self.sine_long_win };
         let short_win = if window_shape { &self.kbd_short_win } else { &self.sine_short_win };
@@ -1238,7 +1239,7 @@ impl NADecoder for AACDecoder {
         let ainfo = self.info.get_properties().get_audio_info().unwrap();
         let mut abuf = alloc_audio_buffer(ainfo, self.m4ainfo.samples, self.chmap.clone())?;
 
-        let mut br = BitReader::new(&pktbuf, pktbuf.len(), BitReaderMode::BE);
+        let mut br = BitReader::new(&pktbuf, BitReaderMode::BE);
         match self.m4ainfo.otype {
             M4AType::LC => {
                     self.decode_ga(&mut br, &mut abuf)?;
@@ -1258,6 +1259,12 @@ impl NADecoder for AACDecoder {
     }
 }
 
+impl NAOptionHandler for AACDecoder {
+    fn get_supported_options(&self) -> &[NAOptionDefinition] { &[] }
+    fn set_options(&mut self, _options: &[NAOption]) { }
+    fn query_option_value(&self, _name: &str) -> Option<NAValue> { None }
+}
+
 pub fn get_decoder() -> Box<dyn NADecoder + Send> {
     Box::new(AACDecoder::new())
 }
@@ -1266,15 +1273,15 @@ pub fn get_decoder() -> Box<dyn NADecoder + Send> {
 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_aac() {
         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/rv40_weighted_mc.rmvb";
         let file = "assets/RV/rv40_weighted_mc_2.rmvb";