From e1c132bd080480cf882e80ccd5cc8ad8e57b5427 Mon Sep 17 00:00:00 2001 From: TR Lim Date: Tue, 29 Nov 2016 09:07:26 +0900 Subject: [PATCH] codec/packet: add `set_pts/dts` methods --- src/codec/packet/packet.rs | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/src/codec/packet/packet.rs b/src/codec/packet/packet.rs index 0e9ce2c..8edc604 100644 --- a/src/codec/packet/packet.rs +++ b/src/codec/packet/packet.rs @@ -121,8 +121,25 @@ impl Packet { } #[inline] - pub fn dts(&self) -> i64 { - self.0.dts as i64 + pub fn set_pts(&mut self, value: Option) { + unsafe { + (*self.as_mut_ptr()).pts = value.unwrap_or(AV_NOPTS_VALUE); + } + } + + #[inline] + pub fn dts(&self) -> Option { + match self.0.dts { + AV_NOPTS_VALUE => None, + dts => Some(dts as i64), + } + } + + #[inline] + pub fn set_dts(&mut self, value: Option) { + unsafe { + (*self.as_mut_ptr()).dts = value.unwrap_or(AV_NOPTS_VALUE); + } } #[inline]