]> git.nihav.org Git - nihav.git/blobdiff - src/codecs/h263/rv10.rs
rmdec: handle situation when last partial frame is full frame
[nihav.git] / src / codecs / h263 / rv10.rs
index 0093f87da1013b1a3f36e3a974d5f5c18be793ec..202d757d1eed2b25ca47fcb29547d71e1e158c71 100644 (file)
@@ -90,7 +90,7 @@ impl<'a> RealVideo10BR<'a> {
 
 #[allow(unused_variables)]
     fn decode_block(&mut self, sstate: &SliceState, quant: u8, intra: bool, coded: bool, blk: &mut [i16; 64], plane_no: usize) -> DecoderResult<()> {
-        let mut br = &mut self.br;
+        let br = &mut self.br;
         let mut idx = 0;
         if intra {
             let mut dc;
@@ -224,7 +224,7 @@ println!("decoding picture header size {}", if self.num_slices > 1 { self.slice_
         let mb_end = shdr.mb_x + shdr.mb_y * self.mb_w + shdr.mb_c;
 
         let ftype = if !shdr.is_p { Type::I } else { Type::P };
-        let picinfo = PicInfo::new(self.w, self.h, ftype, false, false, shdr.qscale, 0, None, None);
+        let picinfo = PicInfo::new(self.w, self.h, ftype, MVMode::Old, false, false, shdr.qscale, 0, None, None);
         Ok(picinfo)
     }
 
@@ -240,7 +240,7 @@ println!("decoding picture header size {}", if self.num_slices > 1 { self.slice_
     }
 
     fn decode_block_header(&mut self, info: &PicInfo, slice: &SliceInfo, sstate: &SliceState) -> DecoderResult<BlockInfo> {
-        let mut br = &mut self.br;
+        let br = &mut self.br;
         let mut q = slice.get_quant();
         match info.get_mode() {
             Type::I => {
@@ -321,7 +321,7 @@ impl<'a> RealVideo10BR<'a> {
     fn read_slice_header(&mut self) -> DecoderResult<RV10SliceInfo> {
         validate!(self.slice_no < self.num_slices);
 
-        let mut br = &mut self.br;
+        let br = &mut self.br;
         br.seek(self.slice_off[self.slice_no] * 8)?;
 
         let marker      = br.read(1)?;