ffmpreg 0.1.2

An experimental general-purpose multimedia toolkit.
Documentation
use super::time::Timebase;

#[derive(Debug, Clone)]
pub struct Packet {
	pub data: Vec<u8>,
	pub pts: i64,
	pub dts: i64,
	pub timebase: Timebase,
	pub stream_index: usize,
}

impl Packet {
	pub fn new(data: Vec<u8>, stream_index: usize, timebase: Timebase) -> Self {
		Self { data, pts: 0, dts: 0, timebase, stream_index }
	}

	pub fn with_pts(mut self, pts: i64) -> Self {
		self.pts = pts;
		self
	}

	pub fn with_dts(mut self, dts: i64) -> Self {
		self.dts = dts;
		self
	}

	pub fn size(&self) -> usize {
		self.data.len()
	}

	pub fn is_empty(&self) -> bool {
		self.data.is_empty()
	}
}