X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=nihav-game%2Fsrc%2Fcodecs%2Fmidivid.rs;h=fec4cd64f66915b7dda55272db8a64b8c170b889;hb=886cde4847280b96e10d240c2f2d76abec121dc8;hp=74ec75f6b33f689abf7d891d0b48f8584738bf13;hpb=7d57ae2f680d7a1eba7af2ee831f305b2f0f9324;p=nihav.git diff --git a/nihav-game/src/codecs/midivid.rs b/nihav-game/src/codecs/midivid.rs index 74ec75f..fec4cd6 100644 --- a/nihav-game/src/codecs/midivid.rs +++ b/nihav-game/src/codecs/midivid.rs @@ -5,7 +5,7 @@ use nihav_codec_support::codecs::HAMShuffler; #[derive(Default)] struct MidividDecoder { info: NACodecInfoRef, - hams: HAMShuffler, + hams: HAMShuffler, lzbuf: Vec, width: usize, height: usize, @@ -22,10 +22,10 @@ fn lz_decompress(src: &[u8], dst: &mut [u8]) -> DecoderResult<()> { let mut dpos = 0; let end = src.len(); while spos < end { - let oplo = src[spos] as u16; + let oplo = u16::from(src[spos]); spos += 1; if spos >= end { return Err(DecoderError::ShortData); } - let ophi = src[spos] as u16; + let ophi = u16::from(src[spos]); spos += 1; let mut op = (ophi << 8) | oplo; for _ in 0..16 { @@ -58,6 +58,7 @@ fn lz_decompress(src: &[u8], dst: &mut [u8]) -> DecoderResult<()> { Ok(()) } +#[allow(clippy::identity_op)] fn decode_frame(frm: &mut NASimpleVideoFrame, src: &[u8], width: usize, height: usize) -> DecoderResult { validate!(src.len() > 8); let num_vec = read_u16le(&src[0..])? as usize; @@ -191,15 +192,16 @@ mod test { use nihav_core::codecs::RegisteredDecoders; use nihav_core::demuxers::RegisteredDemuxers; use nihav_codec_support::test::dec_video::*; - use crate::game_register_all_codecs; + use crate::game_register_all_decoders; use nihav_commonfmt::generic_register_all_demuxers; #[test] fn test_midivid_video() { let mut dmx_reg = RegisteredDemuxers::new(); generic_register_all_demuxers(&mut dmx_reg); let mut dec_reg = RegisteredDecoders::new(); - game_register_all_codecs(&mut dec_reg); + game_register_all_decoders(&mut dec_reg); + // sample: https://samples.mplayerhq.hu/V-codecs/MVDV.avi test_decoding("avi", "midivid", "assets/Game/MVDV.avi", Some(16), &dmx_reg, &dec_reg, ExpectedTestResult::MD5Frames(vec![ [0x383e1995, 0x32bf000d, 0x2067aa2e, 0x54425bd4],