aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKostya Shishkov <kostya.shishkov@gmail.com>2019-05-15 11:58:16 +0200
committerKostya Shishkov <kostya.shishkov@gmail.com>2019-05-15 11:58:16 +0200
commite69b11482edfe7d2d3604a828e46990df78ef852 (patch)
tree1d64c8227ffb260059630f6f0a99efa71c371f35
parent8a7352c04dd848eea6519f0d775d98d547b90a39 (diff)
downloadnihav-e69b11482edfe7d2d3604a828e46990df78ef852.tar.gz
game: fix some clippy warnings
-rw-r--r--nihav-game/src/codecs/bmv.rs6
-rw-r--r--nihav-game/src/codecs/bmv3.rs13
-rw-r--r--nihav-game/src/codecs/gremlinvideo.rs6
-rw-r--r--nihav-game/src/codecs/mod.rs2
-rw-r--r--nihav-game/src/codecs/vmd.rs14
-rw-r--r--nihav-game/src/demuxers/bmv.rs17
-rw-r--r--nihav-game/src/demuxers/gdv.rs16
-rw-r--r--nihav-game/src/demuxers/mod.rs4
-rw-r--r--nihav-game/src/demuxers/vmd.rs10
9 files changed, 36 insertions, 52 deletions
diff --git a/nihav-game/src/codecs/bmv.rs b/nihav-game/src/codecs/bmv.rs
index c00760e..f2458af 100644
--- a/nihav-game/src/codecs/bmv.rs
+++ b/nihav-game/src/codecs/bmv.rs
@@ -206,9 +206,7 @@ impl NADecoder for BMVVideoDecoder {
}
let pos = br.tell() as usize;
- let bufret = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 0);
- if let Err(_) = bufret { return Err(DecoderError::InvalidData); }
- let mut bufinfo = bufret.unwrap();
+ let mut bufinfo = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 0)?;
self.decode_frame(&src[pos..], &mut bufinfo, line)?;
@@ -242,7 +240,7 @@ impl BMVAudioDecoder {
}
fn scale_sample(samp: u8, scale: i32) -> i16 {
- let val = (((samp as i8) as i32) * scale) >> 5;
+ let val = (i32::from(samp as i8) * scale) >> 5;
if val < -32768 {
-32768
} else if val > 32767 {
diff --git a/nihav-game/src/codecs/bmv3.rs b/nihav-game/src/codecs/bmv3.rs
index b30628e..efc3c7e 100644
--- a/nihav-game/src/codecs/bmv3.rs
+++ b/nihav-game/src/codecs/bmv3.rs
@@ -85,11 +85,6 @@ struct BMV3VideoDecoder {
impl BMV3VideoDecoder {
fn new() -> Self {
- let mut frame1 = Vec::with_capacity(BMV_MAX_SIZE);
- frame1.resize(BMV_MAX_SIZE, 0);
- let mut frame2 = Vec::with_capacity(BMV_MAX_SIZE);
- frame2.resize(BMV_MAX_SIZE, 0);
-
let mut pixels = [0u16; 256];
for (i, el) in pixels.iter_mut().enumerate() {
*el = i as u16;
@@ -105,8 +100,8 @@ impl BMV3VideoDecoder {
info: NACodecInfoRef::default(),
stride: 0,
height: 0,
- frame: frame1,
- prev_frame: frame2,
+ frame: vec![0; BMV_MAX_SIZE],
+ prev_frame: vec![0; BMV_MAX_SIZE],
pixels, pixbuf,
mode: BMV3Mode::Normal,
pos: 0,
@@ -481,9 +476,7 @@ impl NADecoder for BMV3VideoDecoder {
self.pos = off + self.stride;
self.is_intra = (flags & BMV_INTRA) == BMV_INTRA;
- let bufret = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 0);
- if let Err(_) = bufret { return Err(DecoderError::InvalidData); }
- let bufinfo = bufret.unwrap();
+ let bufinfo = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 0)?;
self.decode_frame(&mut br)?;
diff --git a/nihav-game/src/codecs/gremlinvideo.rs b/nihav-game/src/codecs/gremlinvideo.rs
index 19021ee..621e23c 100644
--- a/nihav-game/src/codecs/gremlinvideo.rs
+++ b/nihav-game/src/codecs/gremlinvideo.rs
@@ -50,7 +50,7 @@ impl Bits32 {
self.queue >>= nbits;
self.fill -= nbits;
if self.fill <= 16 {
- self.queue |= (br.read_u16le()? as u32) << self.fill;
+ self.queue |= u32::from(br.read_u16le()?) << self.fill;
self.fill += 16;
}
Ok(res)
@@ -447,9 +447,7 @@ impl NADecoder for GremlinVideoDecoder {
return Err(DecoderError::NotImplemented);
}
- let bufret = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 0);
- if let Err(_) = bufret { return Err(DecoderError::InvalidData); }
- let mut bufinfo = bufret.unwrap();
+ let mut bufinfo = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 0)?;
self.output_frame(&mut bufinfo, w, h);
diff --git a/nihav-game/src/codecs/mod.rs b/nihav-game/src/codecs/mod.rs
index 0cd5f35..29e025e 100644
--- a/nihav-game/src/codecs/mod.rs
+++ b/nihav-game/src/codecs/mod.rs
@@ -33,7 +33,7 @@ const GAME_CODECS: &[DecoderInfo] = &[
];
pub fn game_register_all_codecs(rd: &mut RegisteredDecoders) {
- for decoder in GAME_CODECS.into_iter() {
+ for decoder in GAME_CODECS.iter() {
rd.add_decoder(decoder.clone());
}
}
diff --git a/nihav-game/src/codecs/vmd.rs b/nihav-game/src/codecs/vmd.rs
index ea6c31d..4284716 100644
--- a/nihav-game/src/codecs/vmd.rs
+++ b/nihav-game/src/codecs/vmd.rs
@@ -142,7 +142,7 @@ fn decode_frame_data(br: &mut ByteReader, dst: &mut [u8], mut dpos: usize, strid
}
Ok(false)
},
- _ => return Err(DecoderError::InvalidData),
+ _ => Err(DecoderError::InvalidData),
}
}
@@ -202,7 +202,7 @@ impl VMDVideoDecoder {
let method = br.read_byte()?;
let is_intra;
if (method & 0x80) != 0 {
- validate!(self.buf.len() > 0);
+ validate!(!self.buf.is_empty());
lz_unpack(br, &mut self.buf)?;
let mut mr = MemoryReader::new_read(&self.buf);
let mut buf_br = ByteReader::new(&mut mr);
@@ -251,9 +251,7 @@ impl NADecoder for VMDVideoDecoder {
if let Some(bbuf) = bufret {
buf = bbuf;
} else {
- let bufret = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 4);
- if let Err(_) = bufret { return Err(DecoderError::InvalidData); }
- let bufinfo = bufret.unwrap();
+ let bufinfo = alloc_video_buffer(self.info.get_properties().get_video_info().unwrap(), 4)?;
buf = bufinfo.get_vbuf().unwrap();
self.hams.add_frame(buf);
buf = self.hams.get_output_frame().unwrap();
@@ -324,7 +322,7 @@ impl VMDAudioDecoder {
} else {
let mut pred: [i32; 2] = [0; 2];
for ch in 0..channels {
- pred[ch] = br.read_u16le()? as i32;
+ pred[ch] = i32::from(br.read_u16le()?);
dst[off[ch]] = pred[ch] as i16;
off[ch] += 1;
}
@@ -333,9 +331,9 @@ impl VMDAudioDecoder {
for _ in channels..self.blk_align*channels {
let b = br.read_byte()? as usize;
if (b & 0x80) != 0 {
- pred[ch] -= SOL_AUD_STEPS16[b & 0x7F] as i32;
+ pred[ch] -= i32::from(SOL_AUD_STEPS16[b & 0x7F]);
} else {
- pred[ch] += SOL_AUD_STEPS16[b & 0x7F] as i32;
+ pred[ch] += i32::from(SOL_AUD_STEPS16[b & 0x7F]);
}
//pred[ch] = pred[ch].max(-32768).min(32767);
dst[off[ch]] = pred[ch] as i16;
diff --git a/nihav-game/src/demuxers/bmv.rs b/nihav-game/src/demuxers/bmv.rs
index 6ef023b..afb1731 100644
--- a/nihav-game/src/demuxers/bmv.rs
+++ b/nihav-game/src/demuxers/bmv.rs
@@ -30,7 +30,7 @@ impl<'a> DemuxCore<'a> for BMVDemuxer<'a> {
}
fn get_frame(&mut self, strmgr: &mut StreamManager) -> DemuxerResult<NAPacket> {
- if self.pkt_buf.len() > 0 {
+ if !self.pkt_buf.is_empty() {
return Ok(self.pkt_buf.pop().unwrap());
}
@@ -51,13 +51,12 @@ impl<'a> DemuxCore<'a> for BMVDemuxer<'a> {
let (tb_num, tb_den) = str.get_timebase();
let ts = NATimeInfo::new(Some(self.apos), None, None, tb_num, tb_den);
let apkt = self.src.read_packet(str, ts, false, asize)?;
- self.apos += (nblocks as u64) * 32;
+ self.apos += u64::from(nblocks) * 32;
self.pkt_buf.push(apkt);
} else {
asize = 0;
}
- let mut buf: Vec<u8> = Vec::with_capacity(size - asize + 1);
- buf.resize(size - asize + 1, 0);
+ let mut buf: Vec<u8> = vec![0; size - asize + 1];
buf[0] = ctype;
self.src.read_buf(&mut buf[1..])?;
@@ -158,7 +157,7 @@ impl<'a> DemuxCore<'a> for BMV3Demuxer<'a> {
}
fn get_frame(&mut self, strmgr: &mut StreamManager) -> DemuxerResult<NAPacket> {
- if self.pkt_buf.len() > 0 {
+ if !self.pkt_buf.is_empty() {
return Ok(self.pkt_buf.pop().unwrap());
}
@@ -178,8 +177,7 @@ impl<'a> DemuxCore<'a> for BMV3Demuxer<'a> {
asize = self.asize;
}
validate!(asize <= size);
- let mut buf: Vec<u8> = Vec::with_capacity(asize + 1);
- buf.resize(asize + 1, 0);
+ let mut buf: Vec<u8> = vec![0; asize + 1];
buf[0] = (self.src.tell() & 1) as u8;
self.src.read_buf(&mut buf[1..])?;
@@ -194,14 +192,13 @@ impl<'a> DemuxCore<'a> for BMV3Demuxer<'a> {
asize = 0;
}
if size == asize {
- if self.pkt_buf.len() > 0 {
+ if !self.pkt_buf.is_empty() {
return Ok(self.pkt_buf.pop().unwrap());
} else {
continue;
}
}
- let mut buf: Vec<u8> = Vec::with_capacity(size - asize + 1);
- buf.resize(size - asize + 1, 0);
+ let mut buf: Vec<u8> = vec![0; size - asize + 1];
buf[0] = ctype;
self.src.read_buf(&mut buf[1..])?;
diff --git a/nihav-game/src/demuxers/gdv.rs b/nihav-game/src/demuxers/gdv.rs
index 6fde92b..6f27cc4 100644
--- a/nihav-game/src/demuxers/gdv.rs
+++ b/nihav-game/src/demuxers/gdv.rs
@@ -80,18 +80,18 @@ impl<'a> DemuxCore<'a> for GremlinVideoDemuxer<'a> {
}
let vhdr = NAVideoInfo::new(width as usize, height as usize, false, PAL8_FORMAT);
let vci = NACodecTypeInfo::Video(vhdr);
- let vinfo = NACodecInfo::new("gdv-video", vci, if edata.len() == 0 { None } else { Some(edata) });
- self.v_id = strmgr.add_stream(NAStream::new(StreamType::Video, 0, vinfo, 1, fps as u32));
+ let vinfo = NACodecInfo::new("gdv-video", vci, if edata.is_empty() { None } else { Some(edata) });
+ self.v_id = strmgr.add_stream(NAStream::new(StreamType::Video, 0, vinfo, 1, u32::from(fps)));
}
if (aflags & 1) != 0 {
let channels = if (aflags & 2) != 0 { 2 } else { 1 };
let packed = if (aflags & 8) != 0 { 1 } else { 0 };
let depth = if (aflags & 4) != 0 { 16 } else { 8 };
- let ahdr = NAAudioInfo::new(rate as u32, channels as u8, if depth == 16 { SND_S16_FORMAT } else { SND_U8_FORMAT }, 2);
+ let ahdr = NAAudioInfo::new(u32::from(rate), channels as u8, if depth == 16 { SND_S16_FORMAT } else { SND_U8_FORMAT }, 2);
let ainfo = NACodecInfo::new(if packed != 0 { "gdv-audio" } else { "pcm" },
NACodecTypeInfo::Audio(ahdr), None);
- self.a_id = strmgr.add_stream(NAStream::new(StreamType::Audio, 1, ainfo, 1, rate as u32));
+ self.a_id = strmgr.add_stream(NAStream::new(StreamType::Audio, 1, ainfo, 1, u32::from(rate)));
self.asize = (((rate / fps) * channels * (depth / 8)) >> packed) as usize;
self.apacked = (aflags & 8) != 0;
@@ -139,7 +139,7 @@ pktdta: Vec::new(),
self.state = GDVState::AudioRead;
let str = strmgr.get_stream(self.a_id.unwrap()).unwrap();
let (tb_num, tb_den) = str.get_timebase();
- let ts = NATimeInfo::new(Some(self.cur_frame as u64), None, None, tb_num, tb_den);
+ let ts = NATimeInfo::new(Some(u64::from(self.cur_frame)), None, None, tb_num, tb_den);
self.src.read_packet(str, ts, true, self.asize)
}
@@ -152,10 +152,10 @@ pktdta: Vec::new(),
let tmp = src.peek_u32le()?;
let flags = (tmp & 0xFF) as usize;
self.state = GDVState::NewFrame;
- self.cur_frame = self.cur_frame + 1;
+ self.cur_frame += 1;
let (tb_num, tb_den) = str.get_timebase();
- let ts = NATimeInfo::new(Some((self.cur_frame - 1) as u64), None, None, tb_num, tb_den);
- src.read_packet(str, ts, if (flags & 64) != 0 { true } else { false }, size)
+ let ts = NATimeInfo::new(Some(u64::from(self.cur_frame - 1)), None, None, tb_num, tb_den);
+ src.read_packet(str, ts, (flags & 64) != 0, size)
}
}
diff --git a/nihav-game/src/demuxers/mod.rs b/nihav-game/src/demuxers/mod.rs
index 884539c..7dca6d2 100644
--- a/nihav-game/src/demuxers/mod.rs
+++ b/nihav-game/src/demuxers/mod.rs
@@ -12,7 +12,7 @@ mod gdv;
#[cfg(feature="demuxer_vmd")]
mod vmd;
-const GAME_DEMUXERS: &[&'static DemuxerCreator] = &[
+const GAME_DEMUXERS: &[&DemuxerCreator] = &[
#[cfg(feature="demuxer_bmv")]
&bmv::BMVDemuxerCreator {},
#[cfg(feature="demuxer_bmv3")]
@@ -24,7 +24,7 @@ const GAME_DEMUXERS: &[&'static DemuxerCreator] = &[
];
pub fn game_register_all_demuxers(rd: &mut RegisteredDemuxers) {
- for demuxer in GAME_DEMUXERS.into_iter() {
+ for demuxer in GAME_DEMUXERS.iter() {
rd.add_demuxer(*demuxer);
}
}
diff --git a/nihav-game/src/demuxers/vmd.rs b/nihav-game/src/demuxers/vmd.rs
index 80c503a..cc4ac0e 100644
--- a/nihav-game/src/demuxers/vmd.rs
+++ b/nihav-game/src/demuxers/vmd.rs
@@ -53,7 +53,7 @@ impl<'a> DemuxCore<'a> for VMDDemuxer<'a> {
let vinfo = NACodecInfo::new(if !self.is_indeo { "vmd-video" } else { "indeo3" }, vci, Some(edata));
self.vid_id = strmgr.add_stream(NAStream::new(StreamType::Video, 0, vinfo, 1, 12)).unwrap();
- let srate = read_u16le(&header[804..])? as u32;
+ let srate = u32::from(read_u16le(&header[804..])?);
let block_size;
if srate > 0 {
let bsize = read_u16le(&header[806..])? as usize;
@@ -74,8 +74,8 @@ impl<'a> DemuxCore<'a> for VMDDemuxer<'a> {
block_size = 0;
}
- let adelay = read_u16le(&header[808..])? as u32;
- let idx_off = read_u32le(&header[812..])? as u64;
+ let adelay = u32::from(read_u16le(&header[808..])?);
+ let idx_off = u64::from(read_u32le(&header[812..])?);
src.seek(SeekFrom::Start(idx_off))?;
let mut offs: Vec<u32> = Vec::with_capacity(nframes);
for i in 0..nframes {
@@ -122,7 +122,7 @@ impl<'a> DemuxCore<'a> for VMDDemuxer<'a> {
if self.fno >= self.frames.len() { return Err(DemuxerError::EOF); }
let cur_frame = &self.frames[self.fno];
//println!("fno {} -> type {} size {} @ {:X} ts {}", self.fno, cur_frame.chtype, cur_frame.size, cur_frame.off, cur_frame.ts);
- let next_pos = cur_frame.off as u64;
+ let next_pos = u64::from(cur_frame.off);
if self.src.tell() != next_pos {
self.src.seek(SeekFrom::Start(next_pos))?;
}
@@ -143,7 +143,7 @@ impl<'a> DemuxCore<'a> for VMDDemuxer<'a> {
let str_id = if is_video { self.vid_id } else { self.aud_id };
let str = strmgr.get_stream(str_id).unwrap();
let (tb_num, tb_den) = str.get_timebase();
- let ts = NATimeInfo::new(Some(cur_frame.ts as u64), None, None, tb_num, tb_den);
+ let ts = NATimeInfo::new(Some(u64::from(cur_frame.ts)), None, None, tb_num, tb_den);
let pkt = NAPacket::new(str, ts, false, buf);
Ok(pkt)