pub struct EventInformationTable {Show 13 fields
pub service_id: u16,
pub other_transport_stream: bool,
pub schedule: bool,
pub table_id: u8,
pub version_number: u8,
pub current_next_indicator: bool,
pub section_number: u8,
pub last_section_number: u8,
pub transport_stream_id: u16,
pub original_network_id: u16,
pub segment_last_section_number: u8,
pub last_table_id: u8,
pub events: Vec<EitEvent>,
}Expand description
Parsed DVB Event Information Table (ETSI EN 300 468 §5.2.4 Table 7).
The EIT carries chronological per-event metadata (start time,
duration, running status, descriptors) for the services in a
multiplex. It is carried on the fixed PID EIT_PID (0x0012) and
distinguished from other tables by table_id:
0x4E— present/following events on the actual TS.0x4F— present/following events on other TSs.0x50–0x5F— event schedule on the actual TS.0x60–0x6F— event schedule on other TSs.
The section shares the 8-byte long-form PSI header (CRC-verified the
same way as PAT/PMT/SDT) where service_id lives in the
table_id_extension slot. After the header the body carries
transport_stream_id (16) + original_network_id (16) +
segment_last_section_number (8) + last_table_id (8), then a loop
of EitEvent entries, then the CRC.
The service_id equals the corresponding PMT program_number for
normal services, so an EIT lets the oxideav remux bluray:// path
attach human-readable event names (via the per-event
short_event_descriptor) and time ranges to each program.
Fields§
§service_id: u16service_id (from table_id_extension).
other_transport_stream: booltrue when the section describes other TSs (table_id 0x4F
or 0x60–0x6F); false for the actual TS (0x4E /
0x50–0x5F).
schedule: booltrue when the section is event-schedule information
(0x50–0x6F); false for present/following (0x4E / 0x4F).
table_id: u8Raw table_id of the parsed section.
version_number: u85-bit version_number.
current_next_indicator: boolcurrent_next_indicator.
section_number: u8section_number.
last_section_number: u8last_section_number.
transport_stream_id: u16transport_stream_id.
original_network_id: u16original_network_id.
segment_last_section_number: u8segment_last_section_number — last section of this segment of
the sub_table (equals last_section_number for unsegmented
sub_tables).
last_table_id: u8last_table_id — the largest table_id used by this service’s
sub_table (per §5.2.4 may differ per service).
events: Vec<EitEvent>Event entries carried in this section, in chronological order.
Implementations§
Source§impl EventInformationTable
impl EventInformationTable
Sourcepub fn is_eit_table_id(table_id: u8) -> bool
pub fn is_eit_table_id(table_id: u8) -> bool
true when table_id is any of the four EIT classifications
(0x4E, 0x4F, 0x50–0x5F, 0x60–0x6F).
Trait Implementations§
Source§impl Clone for EventInformationTable
impl Clone for EventInformationTable
Source§fn clone(&self) -> EventInformationTable
fn clone(&self) -> EventInformationTable
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more