X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=nihav-indeo%2Fsrc%2Fcodecs%2Fimc.rs;h=ea4d0b02d700c12eeb2375ebd1658b92aee655e3;hb=e6aaad5c5273cd814b5748b7faf3751835a37217;hp=e94704c64c64f2d10b3eaa38c1429dd25b10985e;hpb=886cde4847280b96e10d240c2f2d76abec121dc8;p=nihav.git diff --git a/nihav-indeo/src/codecs/imc.rs b/nihav-indeo/src/codecs/imc.rs index e94704c..ea4d0b0 100644 --- a/nihav-indeo/src/codecs/imc.rs +++ b/nihav-indeo/src/codecs/imc.rs @@ -161,7 +161,7 @@ impl BitAlloc { if len < 0 { len = 0; } if len > 6 { len = 6; } self.band_bits[band] = len as u8; - cur_bits += (self.band_width[band] as i32) * (len as i32); + cur_bits += (self.band_width[band] as i32) * len; if len > 0 { acc += self.band_width[band] as i32; } @@ -643,7 +643,7 @@ impl IMCDecoder { } if self.ba.band_present[band] { let band_w = IMC_BANDS[band + 1] - IMC_BANDS[band]; - let bitsum = self.ba.band_bitsum[band] as usize; + let bitsum = self.ba.band_bitsum[band]; if (bitsum > 0) && (((band_w * 3) >> 1) > bitsum) { self.ba.band_skip[band] = true; } @@ -652,7 +652,7 @@ impl IMCDecoder { self.read_skip_flags(br)?; - let mut ch_data = &mut self.ch_data[ch]; + let ch_data = &mut self.ch_data[ch]; for band in 0..BANDS { ch_data.adj_floor[band] = ch_data.new_floor[band]; let band_w = IMC_BANDS[band + 1] - IMC_BANDS[band]; @@ -675,7 +675,7 @@ impl IMCDecoder { } if bits_freed < 0 { return Err(DecoderError::Bug); } - self.ba.adjust_bit_allocation(&mut ch_data, bits_freed); + self.ba.adjust_bit_allocation(ch_data, bits_freed); Ok(()) } @@ -903,8 +903,8 @@ impl NADecoder for IMCDecoder { let channels = self.ainfo.get_channels() as usize; for chunk in pktbuf.chunks(BLOCK_SIZE * channels) { for ch in 0..channels { - let off = abuf.get_offset(ch as usize) + start; - self.decode_block(chunk, ch as usize, &mut dst[off..off+COEFFS])?; + let off = abuf.get_offset(ch) + start; + self.decode_block(chunk, ch, &mut dst[off..off+COEFFS])?; } if (channels == 2) && ((chunk[1] & 0x20) != 0) { let off1 = abuf.get_offset(0) + start;