+ if hdr.ftype != FrameType::B {
+ self.ref0_pts = self.ref1_pts;
+ self.ref1_pts = pkt.get_pts().unwrap_or(0);
+ self.ref0_ts = self.ref1_ts;
+ self.ref1_ts = hdr.ts as u64;
+ if (self.ref1_pts > self.ref0_pts) && (self.ref1_ts > self.ref0_ts) {
+ self.ts_scale = (self.ref1_pts - self.ref0_pts) / (self.ref1_ts - self.ref0_ts);
+ }
+ }
+ let mut frm = NAFrame::new_from_pkt(pkt, self.info.clone(), NABufferType::Video(buf));