X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=src%2Fdemuxers%2Fgdv.rs;h=605593802abd5738bbdb83b38a3e9f6e39fc18a4;hb=d7fcdd86dd9f353e6f7b19bf84592698c4b020be;hp=c556197828dec46036905efe4e499d1bcb860b40;hpb=5869fd634c6a174ef2c541ddad4b1a4e9ec26d29;p=nihav.git diff --git a/src/demuxers/gdv.rs b/src/demuxers/gdv.rs index c556197..6055938 100644 --- a/src/demuxers/gdv.rs +++ b/src/demuxers/gdv.rs @@ -1,7 +1,6 @@ use super::*; use io::byteio::*; use frame::*; -use std::io::SeekFrom; //use std::collections::HashMap; enum GDVState { @@ -123,9 +122,8 @@ pktdta: Vec::new(), let magic = src.read_u16be()?; if magic != 0x0513 { return Err(DemuxerError::InvalidData); } let size = (src.read_u16le()? as usize) + 4; - let tmp = src.read_u32le()?; + let tmp = src.peek_u32le()?; let flags = (tmp & 0xFF) as usize; - src.seek(SeekFrom::Current(-4))?; self.state = GDVState::NewFrame; self.cur_frame = self.cur_frame + 1; src.read_packet(str, Some((self.cur_frame - 1) as u64), None, None, if (flags & 64) != 0 { true } else { false }, size)