use nihav_core::io::byteio::*;
use nihav_core::io::bitreader::*;
use nihav_core::io::codebook::*;
use nihav_core::io::byteio::*;
use nihav_core::io::bitreader::*;
use nihav_core::io::codebook::*;
let len = br.read(2)? as usize;
let mut syms: [u8; 16] = [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15];
let mut tmp: [u8; 16] = [0; 16];
let len = br.read(2)? as usize;
let mut syms: [u8; 16] = [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15];
let mut tmp: [u8; 16] = [0; 16];
}
fn read_bundles_binkb(&mut self, br: &mut BitReader) -> DecoderResult<()> {
self.btype.read_binkb(br)?;
}
fn read_bundles_binkb(&mut self, br: &mut BitReader) -> DecoderResult<()> {
self.btype.read_binkb(br)?;
let xpos = ((bx * 8) as isize) + (xoff as isize);
let ypos = ((by * 8) as isize) + (yoff as isize);
validate!((xpos >= 0) && (xpos + 8 <= (self.cur_w as isize)));
let xpos = ((bx * 8) as isize) + (xoff as isize);
let ypos = ((by * 8) as isize) + (yoff as isize);
validate!((xpos >= 0) && (xpos + 8 <= (self.cur_w as isize)));
let stride = buf.get_stride(plane_no);
let mut off = buf.get_offset(plane_no);
let (width, height) = buf.get_dimensions(plane_no);
let stride = buf.get_stride(plane_no);
let mut off = buf.get_offset(plane_no);
let (width, height) = buf.get_dimensions(plane_no);
let dst = data.as_mut_slice();
let bw = (width + 7) >> 3;
let bh = (height + 7) >> 3;
let dst = data.as_mut_slice();
let bw = (width + 7) >> 3;
let bh = (height + 7) >> 3;
self.cur_h = (height + 7) & !7;
self.cur_plane = plane_no;
self.init_bundle_lengths_binkb();
self.cur_h = (height + 7) & !7;
self.cur_plane = plane_no;
self.init_bundle_lengths_binkb();
let stride = buf.get_stride(plane_no);
let mut off = buf.get_offset(plane_no);
let (width, height) = buf.get_dimensions(plane_no);
let stride = buf.get_stride(plane_no);
let mut off = buf.get_offset(plane_no);
let (width, height) = buf.get_dimensions(plane_no);
let dst = data.as_mut_slice();
let bw = (width + 7) >> 3;
let bh = (height + 7) >> 3;
let dst = data.as_mut_slice();
let bw = (width + 7) >> 3;
let bh = (height + 7) >> 3;
let q_index = if let Some(qidx) = q { qidx } else { br.read(4)? as usize };
let qmat = &quant_matrices[q_index];
block[0] = block[0].wrapping_mul(qmat[0]) >> 11;
let q_index = if let Some(qidx) = q { qidx } else { br.read(4)? as usize };
let qmat = &quant_matrices[q_index];
block[0] = block[0].wrapping_mul(qmat[0]) >> 11;
if let NACodecTypeInfo::Video(vinfo) = info.get_properties() {
let w = vinfo.get_width();
let h = vinfo.get_height();
if let NACodecTypeInfo::Video(vinfo) = info.get_properties() {
let w = vinfo.get_width();
let h = vinfo.get_height();
None, None, None, None, 0, 1);
}
let myinfo = NACodecTypeInfo::Video(NAVideoInfo::new(w, h, false, fmt));
None, None, None, None, 0, 1);
}
let myinfo = NACodecTypeInfo::Video(NAVideoInfo::new(w, h, false, fmt));
//self.init_bundle_lengths(w.max(8), (w + 7) >> 3);
self.init_bundle_bufs((w + 7) >> 3, (h + 7) >> 3);
//self.init_bundle_lengths(w.max(8), (w + 7) >> 3);
self.init_bundle_bufs((w + 7) >> 3, (h + 7) >> 3);
- let bufret = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 4);
- if let Err(_) = bufret { return Err(DecoderError::InvalidData); }
- let mut bufinfo = bufret.unwrap();
+ let bufinfo = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 4)?;
buf = bufinfo.get_vbuf().unwrap();
self.key_frame = true;
self.hams.add_frame(buf);
buf = self.hams.get_output_frame().unwrap();
}
} else {
buf = bufinfo.get_vbuf().unwrap();
self.key_frame = true;
self.hams.add_frame(buf);
buf = self.hams.get_output_frame().unwrap();
}
} else {
- let bufret = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 4);
- if let Err(_) = bufret { return Err(DecoderError::InvalidData); }
- let mut bufinfo = bufret.unwrap();
+ let bufinfo = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 4)?;
if !self.is_ver_b {
self.ips.add_frame(bufinfo.get_vbuf().unwrap());
}
let mut frm = NAFrame::new_from_pkt(pkt, self.info.clone(), bufinfo);
frm.set_frame_type(FrameType::P);
if !self.is_ver_b {
self.ips.add_frame(bufinfo.get_vbuf().unwrap());
}
let mut frm = NAFrame::new_from_pkt(pkt, self.info.clone(), bufinfo);
frm.set_frame_type(FrameType::P);
- use nihav_core::test::dec_video::*;
- use crate::codecs::rad_register_all_codecs;
- use crate::demuxers::rad_register_all_demuxers;
+ use nihav_codec_support::test::dec_video::*;
+ use crate::rad_register_all_codecs;
+ use crate::rad_register_all_demuxers;