X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=nihav-indeo%2Fsrc%2Fcodecs%2Findeo3enc%2Fmod.rs;h=dc638bc791c14b872ad87e3c55d2f208b73defdc;hb=5f9bf7648f667952b787c77afde07d23ac7c01de;hp=1c6bf77bc1972fe2cc10c6ee42bacd53d3a1bbc0;hpb=f5c61879b56145c3fe371edeb58fb3b7abd94851;p=nihav.git diff --git a/nihav-indeo/src/codecs/indeo3enc/mod.rs b/nihav-indeo/src/codecs/indeo3enc/mod.rs index 1c6bf77..dc638bc 100644 --- a/nihav-indeo/src/codecs/indeo3enc/mod.rs +++ b/nihav-indeo/src/codecs/indeo3enc/mod.rs @@ -148,7 +148,7 @@ impl Indeo3Encoder { } let mut iw = Indeo3Writer::new(dbuf); - self.cframe.plane[planeno].encode_tree(&mut iw, &tree, &mut self.cenc, is_intra, ref_plane); + self.cframe.plane[planeno].encode_tree(&mut iw, &tree, &mut self.cenc, ref_plane); drop(iw); while (dbuf.len() & 3) != 0 { dbuf.push(0); @@ -273,6 +273,7 @@ impl NAEncoder for Indeo3Encoder { let fsize = dbuf.len() as u32; self.rc.advance(fsize); + self.frameno += 1; self.pkt = Some(NAPacket::new(self.stream.clone().unwrap(), frm.ts, false, dbuf)); return Ok(()); @@ -355,7 +356,7 @@ impl NAEncoder for Indeo3Encoder { self.encode_planes(&mut dbuf, &trees, is_intra)?; let cur_quant = self.cenc.quant.unwrap_or(42); - if !is_intra && cur_quant < 8 { + if self.try_again && !is_intra && cur_quant < 8 { let expected_size = self.rc.get_expected_size(); if expected_size > 0 { let cur_size = dbuf.len() as u32;