split nihav-codec-support crate from nihav-core
[nihav.git] / nihav-realmedia / src / codecs / rv20.rs
index b312a128c8c4e5e4d0e60562fcb127e1185b4248..4fae009db72fc9afadd212e7ac5fd8096346f09c 100644 (file)
@@ -3,10 +3,11 @@ use nihav_core::io::codebook::*;
 use nihav_core::formats;
 use nihav_core::frame::*;
 use nihav_core::codecs::*;
-use nihav_core::codecs::h263::*;
-use nihav_core::codecs::h263::code::H263BlockDSP;
-use nihav_core::codecs::h263::decoder::*;
-use nihav_core::codecs::h263::data::*;
+use nihav_codec_support::codecs::{MV, ZIGZAG};
+use nihav_codec_support::codecs::h263::*;
+use nihav_codec_support::codecs::h263::code::H263BlockDSP;
+use nihav_codec_support::codecs::h263::decoder::*;
+use nihav_codec_support::codecs::h263::data::*;
 
 
 #[allow(dead_code)]
@@ -78,7 +79,7 @@ impl<'a> RealVideo20BR<'a> {
         let mut slice_offs = Vec::with_capacity(nslices);
         {
             let offs = &src[1..][..nslices * 8];
-            let mut br = BitReader::new(offs, offs.len(), BitReaderMode::BE);
+            let mut br = BitReader::new(offs, BitReaderMode::BE);
             for _ in 0..nslices {
                 br.skip(32).unwrap();
                 let off = br.read(32).unwrap();
@@ -97,7 +98,7 @@ impl<'a> RealVideo20BR<'a> {
             }
         }
         RealVideo20BR {
-            br:         BitReader::new(&src[soff..], src.len() - soff, BitReaderMode::BE),
+            br:         BitReader::new(&src[soff..], BitReaderMode::BE),
             tables,
             num_slices: nslices,
             slice_no:   0,
@@ -519,7 +520,7 @@ const H263_MBB: &[MBB; 7] = &[
     MBB{ blocks: 65536, bits: 14 },
 ];
 
-pub fn get_decoder() -> Box<dyn NADecoder> {
+pub fn get_decoder() -> Box<dyn NADecoder + Send> {
     Box::new(RealVideo20Decoder::new())
 }
 
@@ -528,8 +529,8 @@ mod test {
     use nihav_core::codecs::RegisteredDecoders;
     use nihav_core::demuxers::RegisteredDemuxers;
     use nihav_core::test::dec_video::*;
-    use crate::codecs::realmedia_register_all_codecs;
-    use crate::demuxers::realmedia_register_all_demuxers;
+    use crate::realmedia_register_all_codecs;
+    use crate::realmedia_register_all_demuxers;
     #[test]
     fn test_rv20() {
         let mut dmx_reg = RegisteredDemuxers::new();