pub struct FormatOptions {
    pub prebuild_seek_index: bool,
    pub seek_index_fill_rate: u16,
    pub enable_gapless: bool,
}
Expand description

FormatOptions is a common set of options that all demuxers use.

Fields§

§prebuild_seek_index: bool

If a FormatReader requires a seek index, but the container does not provide one, build the seek index during instantiation instead of building it progressively. Default: false.

§seek_index_fill_rate: u16

If a seek index needs to be built, this value determines how often in seconds of decoded content an entry is added to the index. Default: 20.

Note: This is a CPU vs. memory trade-off. A high value will increase the amount of IO required during a seek, whereas a low value will require more memory. The default chosen is a good compromise for casual playback of music, podcasts, movies, etc. However, for highly-interactive applications, this value should be decreased.

§enable_gapless: bool

Enable support for gapless playback. Default: false.

When enabled, the reader will provide trim information in packets that may be used by decoders to trim any encoder delay or padding.

When enabled, this option will also alter the value and interpretation of timestamps and durations such that they are relative to the non-trimmed region.

Trait Implementations§

source§

impl Clone for FormatOptions

source§

fn clone(&self) -> FormatOptions

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for FormatOptions

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for FormatOptions

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl Copy for FormatOptions

Auto Trait Implementations§

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<F, T> IntoSample<T> for F
where T: FromSample<F>,

source§

fn into_sample(self) -> T

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

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

§

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>,

§

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.