X-Git-Url: https://git.nihav.org/?p=nihav.git;a=blobdiff_plain;f=nihav-rad%2Fsrc%2Fcodecs%2Fbinkaud.rs;h=1cdb0a1ddbf2c7d6334414786946f8577606cdbf;hp=29b8f98abfa439a3d5ca04f5d909f2ebde2ec583;hb=78fb6560c73965d834b215fb0b49505ae5443288;hpb=b4d5b8515e75383b4fc59ea2813c90c615d59a96 diff --git a/nihav-rad/src/codecs/binkaud.rs b/nihav-rad/src/codecs/binkaud.rs index 29b8f98..1cdb0a1 100644 --- a/nihav-rad/src/codecs/binkaud.rs +++ b/nihav-rad/src/codecs/binkaud.rs @@ -130,6 +130,7 @@ impl BinkAudioDecoder { } Ok(()) } + #[allow(clippy::transmute_ptr_to_ptr)] fn output(&mut self, dst: &mut [f32], off0: usize, off1: usize, chno: usize) { match self.transform { Transform::DCT(ref mut dct) => { @@ -278,6 +279,12 @@ impl NADecoder for BinkAudioDecoder { } } +impl NAOptionHandler for BinkAudioDecoder { + 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_dct() -> Box { Box::new(BinkAudioDecoder::new(true)) } @@ -290,22 +297,28 @@ pub fn get_decoder_rdft() -> Box { mod test { use nihav_core::codecs::RegisteredDecoders; use nihav_core::demuxers::RegisteredDemuxers; - use nihav_core::test::dec_video::*; - use crate::rad_register_all_codecs; + use nihav_codec_support::test::dec_video::*; + use crate::rad_register_all_decoders; use crate::rad_register_all_demuxers; #[test] - fn test_bink_audio() { + fn test_bink_audio_dct() { + let mut dmx_reg = RegisteredDemuxers::new(); + rad_register_all_demuxers(&mut dmx_reg); + let mut dec_reg = RegisteredDecoders::new(); + rad_register_all_decoders(&mut dec_reg); + + let file = "assets/RAD/ActivisionLogo.bik"; + test_decode_audio("bink", file, None, None/*Some("bink")*/, &dmx_reg, &dec_reg); + } + #[test] + fn test_bink_audio_rdft() { let mut dmx_reg = RegisteredDemuxers::new(); rad_register_all_demuxers(&mut dmx_reg); let mut dec_reg = RegisteredDecoders::new(); - rad_register_all_codecs(&mut dec_reg); + rad_register_all_decoders(&mut dec_reg); -// let file = "assets/RAD/ActivisionLogo.bik"; - let file = "assets/RAD/original.bik"; -// let file = "assets/RAD/Snd0a110c51.dee"; -// let file = "assets/RAD/NEW.BIK"; -// let file = "assets/RAD/ge_video_86l.bk2"; + let file = "assets/RAD/NWCLOGO.BIK"; test_decode_audio("bink", file, None, None/*Some("bink")*/, &dmx_reg, &dec_reg); } }