Make BitReader rely on passed slice size without the additional arguments.
[nihav.git] / nihav-commonfmt / src / codecs / ts102366.rs
index 65b1b9e28eec85640721db607e68421dd1c6a3f1..55460497a651cb875f899ef2cc68400ce3a9857a 100644 (file)
@@ -1171,9 +1171,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);
         }
@@ -1235,9 +1235,12 @@ impl NADecoder for AudioDecoder {
         frm.set_keyframe(true);
         Ok(frm.into_ref())
     }
+    fn flush(&mut self) {
+        self.delay = [[0.0; BLOCK_LEN]; MAX_CHANNELS + 1];
+    }
 }
 
-pub fn get_decoder() -> Box<dyn NADecoder> {
+pub fn get_decoder() -> Box<dyn NADecoder + Send> {
     Box::new(AudioDecoder::new())
 }
 
@@ -1256,7 +1259,7 @@ mod test {
         generic_register_all_codecs(&mut dec_reg);
 
         let file = "assets/RV/sp_sample1.rm";
-        test_decode_audio("realmedia", file, Some(12000), "ac3", &dmx_reg, &dec_reg);
+        test_decode_audio("realmedia", file, Some(12000), None/*Some("ac3")*/, &dmx_reg, &dec_reg);
     }
 }