make all codec crates export just register_all functions and document them
[nihav.git] / nihav-duck / src / codecs / dkadpcm.rs
index 24f5b5b8d95cb48575c40cbcc08431a0753521c9..b662a747ab329fe4180bfc423a299a643087c3c4 100644 (file)
@@ -167,11 +167,11 @@ impl NADecoder for DuckADPCMDecoder {
     }
 }
 
-pub fn get_decoder_dk3() -> Box<dyn NADecoder> {
+pub fn get_decoder_dk3() -> Box<dyn NADecoder + Send> {
     Box::new(DuckADPCMDecoder::new(true))
 }
 
-pub fn get_decoder_dk4() -> Box<dyn NADecoder> {
+pub fn get_decoder_dk4() -> Box<dyn NADecoder + Send> {
     Box::new(DuckADPCMDecoder::new(false))
 }
 
@@ -180,8 +180,8 @@ mod test {
     use nihav_core::codecs::RegisteredDecoders;
     use nihav_core::demuxers::RegisteredDemuxers;
     use nihav_core::test::dec_video::*;
-    use crate::codecs::duck_register_all_codecs;
-    use nihav_commonfmt::demuxers::generic_register_all_demuxers;
+    use crate::duck_register_all_codecs;
+    use nihav_commonfmt::generic_register_all_demuxers;
     #[test]
     fn test_dk3() {
         let mut dmx_reg = RegisteredDemuxers::new();
@@ -189,8 +189,10 @@ mod test {
         let mut dec_reg = RegisteredDecoders::new();
         duck_register_all_codecs(&mut dec_reg);
 
-        let file = "assets/Duck/AVI-DUCK-dk3.duk";
-        test_decode_audio("avi", file, Some(100), "dk3", &dmx_reg, &dec_reg);
+        //let file = "assets/Duck/AVI-DUCK-dk3.duk";
+        //test_decode_audio("avi", file, Some(100), None/*Some("dk3")*/, &dmx_reg, &dec_reg);
+        test_decoding("avi", "adpcm-dk3", "assets/Duck/AVI-DUCK-dk3.duk", None, &dmx_reg, &dec_reg,
+                      ExpectedTestResult::MD5([0xa48fae0a, 0xa536b27f, 0x169ecc19, 0x8436fade]));
     }
     #[test]
     fn test_dk4() {
@@ -199,8 +201,10 @@ mod test {
         let mut dec_reg = RegisteredDecoders::new();
         duck_register_all_codecs(&mut dec_reg);
 
-        let file = "assets/Duck/virtuafighter2-opening1.avi";
-        test_decode_audio("avi", file, Some(100), "dk4", &dmx_reg, &dec_reg);
+//        let file = "assets/Duck/virtuafighter2-opening1.avi";
+//        test_decode_audio("avi", file, Some(100), None/*Some("dk4")*/, &dmx_reg, &dec_reg);
+        test_decoding("avi", "adpcm-dk4", "assets/Duck/virtuafighter2-opening1.avi", None, &dmx_reg, &dec_reg,
+                      ExpectedTestResult::MD5([0x04e40d15, 0xf65b3427, 0x1dd5181f, 0xf321b56f]));
     }
 }