From: Kostya Shishkov Date: Sun, 4 Feb 2018 17:49:49 +0000 (+0100) Subject: clearvideo: implement skip frame X-Git-Url: https://git.nihav.org/?p=nihav.git;a=commitdiff_plain;h=9e8a5d2d663e9e88cac9cff09d12385320331c3d clearvideo: implement skip frame --- diff --git a/src/codecs/clearvideo.rs b/src/codecs/clearvideo.rs index 6b880e1..7b31c0d 100644 --- a/src/codecs/clearvideo.rs +++ b/src/codecs/clearvideo.rs @@ -721,6 +721,14 @@ impl NADecoder for ClearVideoDecoder { 0 }; if src.len() <= off + 1 { return Err(DecoderError::ShortData); } + + if (src[off] & 0x7F) == 0x30 { + let mut frm = NAFrame::new_from_pkt(pkt, self.info.clone(), NABufferType::None); + frm.set_keyframe(false); + frm.set_frame_type(FrameType::Skip); + return Ok(Rc::new(RefCell::new(frm))); + } + let is_intra = (src[off] & 2) == 2; let mut br = BitReader::new(&src[(off + 1)..], src.len() - (off + 1), BitReaderMode::BE);