Struct ESDescriptor

Source
pub struct ESDescriptor<'a> {
    pub es_id: u16,
    pub stream_priority: u8,
    pub depends_on_es_id: Option<u16>,
    pub url_string: Option<StringCow<'a>>,
    pub ocr_es_id: Option<u16>,
    pub dec_config_descr: DecoderConfigDescriptor<'a>,
    pub sl_config_descr: Option<SLConfigDescriptor>,
    pub unknown_descriptors: Vec<UnknownDescriptor<'a>>,
}
Expand description

ES Descriptor

ISO/IEC 14496-1 - 7.2.6.5

Fields§

§es_id: u16

Provides a unique label for each elementary stream within its name scope. The values 0 and 0xFFFF are reserved.

§stream_priority: u8

Indicates a relative measure for the priority of this elementary stream. An elementary stream with a higher streamPriority is more important than one with a lower streamPriority. The absolute values of streamPriority are not normatively defined.

§depends_on_es_id: Option<u16>

Is the ES_ID of another elementary stream on which this elementary stream depends. The stream with dependsOn_ES_ID shall also be associated to the same object descriptor as the current ES_Descriptor.

§url_string: Option<StringCow<'a>>

Points to the location of an SL-packetized stream by name. The parameters of the SL-packetized stream that is retrieved from the URL are fully specified in this ES_Descriptor. See also 7.2.7.3.3. Permissible URLs may be constrained by profile and levels as well as by specific delivery layers.

§ocr_es_id: Option<u16>

Indicates the ES_ID of the elementary stream within the name scope (see 7.2.7.2.4) from which the time base for this elementary stream is derived. Circular references between elementary streams are not permitted.

§dec_config_descr: DecoderConfigDescriptor<'a>§sl_config_descr: Option<SLConfigDescriptor>§unknown_descriptors: Vec<UnknownDescriptor<'a>>

A list of descriptors that are contained in this descriptor but not deserialized.

Could be any of:

  • IPI_DescrPointer
  • IP_IdentificationDataSet
  • IPMP_DescriptorPointer
  • LanguageDescriptor
  • QoS_Descriptor
  • RegistrationDescriptor
  • ExtensionDescriptor

Implementations§

Source§

impl ESDescriptor<'_>

Source

pub fn base_descriptor(&self) -> BaseDescriptor

Returns the base descriptor of this ESDescriptor.

Trait Implementations§

Source§

impl<'a> Debug for ESDescriptor<'a>

Source§

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

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

impl<'a> Deserialize<'a> for ESDescriptor<'a>

Source§

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

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

impl IsoSized for ESDescriptor<'_>

Source§

fn size(&self) -> usize

Returns the size of the type when serialized.
Source§

impl<'a> PartialEq for ESDescriptor<'a>

Source§

fn eq(&self, other: &ESDescriptor<'a>) -> 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 ESDescriptor<'_>

Source§

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

Serialize the value into the given writer.
Source§

impl<'a> Eq for ESDescriptor<'a>

Source§

impl<'a> StructuralPartialEq for ESDescriptor<'a>

Auto Trait Implementations§

§

impl<'a> !Freeze for ESDescriptor<'a>

§

impl<'a> RefUnwindSafe for ESDescriptor<'a>

§

impl<'a> Send for ESDescriptor<'a>

§

impl<'a> Sync for ESDescriptor<'a>

§

impl<'a> Unpin for ESDescriptor<'a>

§

impl<'a> UnwindSafe for ESDescriptor<'a>

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.