X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=nihav-commonfmt%2Fsrc%2Fcodecs%2Fcinepakenc.rs;h=3269cf8ea7ef7de5fb111cdc5bce516b36306acc;hb=0ad1f05e99c19c79acc7f5e8e18a94468af275ac;hp=38f7cecb5c0365e28871caf8e75cf0210af12f43;hpb=9a57fda16f90ad87e8a2ca0e896fa617e9ce8753;p=nihav.git diff --git a/nihav-commonfmt/src/codecs/cinepakenc.rs b/nihav-commonfmt/src/codecs/cinepakenc.rs index 38f7cec..3269cf8 100644 --- a/nihav-commonfmt/src/codecs/cinepakenc.rs +++ b/nihav-commonfmt/src/codecs/cinepakenc.rs @@ -169,7 +169,7 @@ impl MaskWriter { } } fn reset(&mut self) { - self.masks.truncate(0); + self.masks.clear(); self.mask = 0; self.pos = 0; } @@ -303,8 +303,8 @@ impl CinepakEncoder { let mut voff = in_frm.get_offset(2) + start / 2 * vstride; let (width, _) = in_frm.get_dimensions(0); let data = in_frm.get_data(); - self.v1_entries.truncate(0); - self.v4_entries.truncate(0); + self.v1_entries.clear(); + self.v4_entries.clear(); for _ in (start..end).step_by(4) { for x in (0..width).step_by(4) { let mut yblk = [0; 16]; @@ -530,7 +530,7 @@ impl CinepakEncoder { } } fn calc_skip_dist(&mut self, in_frm: &NAVideoBuffer, start: usize, end: usize) { - self.skip_dist.truncate(0); + self.skip_dist.clear(); if let Some(ref ref_frm) = self.lastfrm { let rystride = ref_frm.get_stride(0); let mut ryoff = ref_frm.get_offset(0) + start * rystride; @@ -677,8 +677,8 @@ impl CinepakEncoder { } } - self.v1_idx.truncate(0); - self.v4_idx.truncate(0); + self.v1_idx.clear(); + self.v4_idx.clear(); self.masks.reset(); for (v1_entry, v4_entries) in self.v1_entries.iter().zip(self.v4_entries.chunks(4)) { @@ -810,8 +810,8 @@ impl CinepakEncoder { } } - self.v1_idx.truncate(0); - self.v4_idx.truncate(0); + self.v1_idx.clear(); + self.v4_idx.clear(); self.masks.reset(); let mut skip_iter = self.skip_dist.iter(); @@ -1100,6 +1100,7 @@ mod test { let mut enc_reg = RegisteredEncoders::new(); generic_register_all_encoders(&mut enc_reg); + // sample: https://samples.mplayerhq.hu/V-codecs/UCOD/TalkingHead_352x288.avi let dec_config = DecoderTestParams { demuxer: "avi", in_name: "assets/Misc/TalkingHead_352x288.avi", @@ -1128,8 +1129,8 @@ mod test { tb_den: 0, flags: 0, }; - //test_encoding_to_file(&dec_config, &enc_config, enc_params); - test_encoding_md5(&dec_config, &enc_config, enc_params, + //test_encoding_to_file(&dec_config, &enc_config, enc_params, &[]); + test_encoding_md5(&dec_config, &enc_config, enc_params, &[], &[0xd73cb3c7, 0x30d59f90, 0x1d6e0e28, 0x5b72cc0c]); } }