impl<'a> Intel263BR<'a> {
fn new(src: &'a [u8], tables: &'a Tables) -> Self {
Intel263BR {
- br: BitReader::new(src, src.len(), BitReaderMode::BE),
+ br: BitReader::new(src, BitReaderMode::BE),
tables,
gob_no: 0,
mb_w: 0,
}
idx += run;
validate!(idx < 64);
- let oidx = H263_ZIGZAG[idx as usize];
+ let oidx = ZIGZAG[idx as usize];
blk[oidx] = level;
idx += 1;
if last { break; }
frm.set_frame_type(if self.dec.is_intra() { FrameType::I } else { FrameType::P });
Ok(frm.into_ref())
}
+ fn flush(&mut self) {
+ self.dec.flush();
+ }
}
-pub fn get_decoder() -> Box<dyn NADecoder> {
+pub fn get_decoder() -> Box<dyn NADecoder + Send> {
Box::new(Intel263Decoder::new())
}
use nihav_core::codecs::RegisteredDecoders;
use nihav_core::demuxers::RegisteredDemuxers;
use nihav_core::test::dec_video::*;
- use crate::codecs::indeo_register_all_codecs;
- use nihav_commonfmt::demuxers::generic_register_all_demuxers;
+ use crate::indeo_register_all_codecs;
+ use nihav_commonfmt::generic_register_all_demuxers;
#[test]
fn test_intel263() {
let mut dmx_reg = RegisteredDemuxers::new();