pub enum DescriptorBody<'a> {
Show 21 variants
VideoStream(VideoStreamDescriptor),
AudioStream(AudioStreamDescriptor),
Hierarchy(HierarchyDescriptor),
Registration {
format_identifier: [u8; 4],
additional_identification_info: &'a [u8],
},
DataStreamAlignment(DataStreamAlignmentDescriptor),
TargetBackgroundGrid(TargetBackgroundGridDescriptor),
VideoWindow(VideoWindowDescriptor),
Ca(CaDescriptor<'a>),
Iso639Language(Vec<Iso639Language>),
SystemClock(SystemClockDescriptor),
MultiplexBufferUtilization(MultiplexBufferUtilizationDescriptor),
Copyright(CopyrightDescriptor<'a>),
MaximumBitrate(MaximumBitrateDescriptor),
SmoothingBuffer(SmoothingBufferDescriptor),
Std(StdDescriptor),
Ibp(IbpDescriptor),
AvcVideo(AvcVideoDescriptor),
HevcVideo(HevcVideoDescriptor),
Service(ServiceDescriptor<'a>),
ShortEvent(ShortEventDescriptor<'a>),
Raw,
}Expand description
Typed body for descriptors this module decodes.
Variants§
VideoStream(VideoStreamDescriptor)
0x02 video_stream_descriptor (§2.6.2).
AudioStream(AudioStreamDescriptor)
0x03 audio_stream_descriptor (§2.6.4).
Hierarchy(HierarchyDescriptor)
0x04 hierarchy_descriptor (§2.6.6) — links one program element
to its embedded base layer for hierarchically-coded video / audio
/ private streams (Table 2-43).
Registration
0x05 registration_descriptor (§2.6.8). format_identifier is
a 4-byte ASCII code (e.g. b"HDMV" on Blu-ray) plus optional
additional bytes whose semantics are scoped to the FOURCC.
DataStreamAlignment(DataStreamAlignmentDescriptor)
0x06 data_stream_alignment_descriptor (§2.6.10).
TargetBackgroundGrid(TargetBackgroundGridDescriptor)
0x07 target_background_grid_descriptor (§2.6.12) — describes a
grid of unit pixels projected onto the display area, against which
a paired video_window_descriptor places the stream’s window
(Table 2-49).
VideoWindow(VideoWindowDescriptor)
0x08 video_window_descriptor (§2.6.14) — places the stream’s
display window on the grid defined by its paired
target_background_grid_descriptor (Table 2-50).
Ca(CaDescriptor<'a>)
0x09 CA_descriptor (§2.6.16) — Conditional Access PID + system.
Iso639Language(Vec<Iso639Language>)
0x0A ISO_639_language_descriptor (§2.6.18).
SystemClock(SystemClockDescriptor)
0x0B system_clock_descriptor (§2.6.20).
MultiplexBufferUtilization(MultiplexBufferUtilizationDescriptor)
0x0C multiplex_buffer_utilization_descriptor (§2.6.22).
Copyright(CopyrightDescriptor<'a>)
0x0D copyright_descriptor (§2.6.24).
MaximumBitrate(MaximumBitrateDescriptor)
0x0E maximum_bitrate_descriptor (§2.6.26).
SmoothingBuffer(SmoothingBufferDescriptor)
0x10 smoothing_buffer_descriptor (§2.6.30).
Std(StdDescriptor)
0x11 STD_descriptor (§2.6.32).
Ibp(IbpDescriptor)
0x12 IBP_descriptor (§2.6.34) — GOP-structure hints for the
associated video elementary stream (Table 2-61).
AvcVideo(AvcVideoDescriptor)
0x28 AVC_video_descriptor (§2.6.64).
HevcVideo(HevcVideoDescriptor)
0x38 HEVC_video_descriptor (Amd. 3 §2.6.95).
Service(ServiceDescriptor<'a>)
0x48 service_descriptor — DVB SI extension (ETSI EN 300 468
§6.2.33 Table 88). Carried in the SDT service loop; names the
service plus its provider in text form.
ShortEvent(ShortEventDescriptor<'a>)
0x4D short_event_descriptor — DVB SI extension (ETSI EN 300 468
§6.2.37 Table 93). Carried in the EIT event loop; names the event
plus a short text description, both tagged with a language code.
Raw
Unrecognised tag — payload bytes preserved verbatim.
Trait Implementations§
Source§impl<'a> Clone for DescriptorBody<'a>
impl<'a> Clone for DescriptorBody<'a>
Source§fn clone(&self) -> DescriptorBody<'a>
fn clone(&self) -> DescriptorBody<'a>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more