Skip to main content

TsFix

Struct TsFix 

Source
pub struct TsFix { /* private fields */ }
Expand description

A repair / remux engine for MPEG-2 TS byte streams.

Constructed via TsFix::builderTsFixBuilder::build.

Feed 188-byte TS packets one at a time with push; call finish at end-of-stream to flush any buffered state.

Implementations§

Source§

impl TsFix

Source

pub fn builder() -> TsFixBuilder

Create a new builder for configuring a TsFix engine.

Source

pub fn push( &mut self, packet: &[u8], out: impl FnMut(&[u8]), ) -> Result<(), Error>

Feed one 188-byte TS packet into the engine.

out is called once per emitted packet (may be called zero or more times if an op suppresses or multiplies packets).

Returns Err if packet is not exactly 188 bytes or lacks the 0x47 sync byte (ISO/IEC 13818-1 §2.4.3.2).

Source

pub fn finish(&mut self, out: impl FnMut(&[u8]))

Flush any internally buffered state at end-of-stream.

Must be called after the last push to ensure that buffering operations (e.g. PCR interpolation) emit their final packets.

Auto Trait Implementations§

§

impl !RefUnwindSafe for TsFix

§

impl !Sync for TsFix

§

impl !UnwindSafe for TsFix

§

impl Freeze for TsFix

§

impl Send for TsFix

§

impl Unpin for TsFix

§

impl UnsafeUnpin for TsFix

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.