Struct MediaHeaderBox

Source
pub struct MediaHeaderBox {
    pub full_header: FullBoxHeader,
    pub creation_time: u64,
    pub modification_time: u64,
    pub timescale: u32,
    pub duration: u64,
    pub language: Langauge,
    pub pre_defined: u16,
}
Expand description

Media header box

ISO/IEC 14496-12 - 8.4.2

Fields§

§full_header: FullBoxHeader

The full box header.

§creation_time: u64

An integer that declares the creation time of the media in this track (in seconds since midnight, Jan. 1, 1904, in UTC time).

§modification_time: u64

An integer that declares the most recent time the media in this track was modified (in seconds since midnight, Jan. 1, 1904, in UTC time).

§timescale: u32

An integer that specifies the number of time units that pass in one second for this media. For example, a time coordinate system that measures time in sixtieths of a second has a time scale of 60.

§duration: u64

An integer that declares the duration of this media (in the scale of the timescale) and should be the largest composition timestamp plus the duration of that sample. If the duration cannot be determined then duration is set to all 1s.

§language: Langauge

Declares the language code for this media, as a packed three-character code defined in ISO 639-2.

§pre_defined: u16

Pre-defined 16 bits, must be set to 0.

Implementations§

Source§

impl MediaHeaderBox

Source

pub fn new( creation_time: u64, modification_time: u64, timescale: u32, duration: u64, ) -> Self

Creates a new MediaHeaderBox with the specified parameters.

All other fields are set to their default values.

Trait Implementations§

Source§

impl Debug for MediaHeaderBox

Source§

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

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

impl<'a> Deserialize<'a> for MediaHeaderBox

Source§

fn deserialize<R>(reader: R) -> Result<Self>
where R: ZeroCopyReader<'a>,

Deserialize a value from the given zero-copy reader.
Source§

impl<'a> DeserializeSeed<'a, BoxHeader> for MediaHeaderBox

Source§

fn deserialize_seed<R>(reader: R, _seed: BoxHeader) -> Result<Self>
where R: ZeroCopyReader<'a>,

Deserialize a value from the given zero-copy reader using the provided seed.
Source§

impl IsoBox for MediaHeaderBox

Source§

const TYPE: BoxType

The box type of this box.
Source§

fn add_header_size(payload_size: usize) -> usize

This function calculates the header size, adds it to the given payload size and return the result. Read more
Source§

fn box_header(&self) -> BoxHeader

Constructs a BoxHeader for this box.
Source§

fn serialize_box_header<W>(&self, writer: W) -> Result<()>
where W: Write,

Serializes the box header returned by IsoBox::box_header to the given writer.
Source§

impl IsoSized for MediaHeaderBox

Source§

fn size(&self) -> usize

Returns the size of the type when serialized.
Source§

impl PartialEq for MediaHeaderBox

Source§

fn eq(&self, other: &MediaHeaderBox) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for MediaHeaderBox

Source§

fn serialize<W>(&self, writer: W) -> Result<()>
where W: Write,

Serialize the value into the given writer.
Source§

impl Eq for MediaHeaderBox

Source§

impl StructuralPartialEq for MediaHeaderBox

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> Az for T

Source§

fn az<Dst>(self) -> Dst
where T: Cast<Dst>,

Casts the value.
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<Src, Dst> CastFrom<Src> for Dst
where Src: Cast<Dst>,

Source§

fn cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> CheckedAs for T

Source§

fn checked_as<Dst>(self) -> Option<Dst>
where T: CheckedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> CheckedCastFrom<Src> for Dst
where Src: CheckedCast<Dst>,

Source§

fn checked_cast_from(src: Src) -> Option<Dst>

Casts the value.
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<Src, Dst> LosslessTryInto<Dst> for Src
where Dst: LosslessTryFrom<Src>,

Source§

fn lossless_try_into(self) -> Option<Dst>

Performs the conversion.
Source§

impl<Src, Dst> LossyInto<Dst> for Src
where Dst: LossyFrom<Src>,

Source§

fn lossy_into(self) -> Dst

Performs the conversion.
Source§

impl<T> OverflowingAs for T

Source§

fn overflowing_as<Dst>(self) -> (Dst, bool)
where T: OverflowingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> OverflowingCastFrom<Src> for Dst
where Src: OverflowingCast<Dst>,

Source§

fn overflowing_cast_from(src: Src) -> (Dst, bool)

Casts the value.
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> SaturatingAs for T

Source§

fn saturating_as<Dst>(self) -> Dst
where T: SaturatingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> SaturatingCastFrom<Src> for Dst
where Src: SaturatingCast<Dst>,

Source§

fn saturating_cast_from(src: Src) -> Dst

Casts the value.
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.
Source§

impl<T> UnwrappedAs for T

Source§

fn unwrapped_as<Dst>(self) -> Dst
where T: UnwrappedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> UnwrappedCastFrom<Src> for Dst
where Src: UnwrappedCast<Dst>,

Source§

fn unwrapped_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> WrappingAs for T

Source§

fn wrapping_as<Dst>(self) -> Dst
where T: WrappingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> WrappingCastFrom<Src> for Dst
where Src: WrappingCast<Dst>,

Source§

fn wrapping_cast_from(src: Src) -> Dst

Casts the value.