pub struct Cit<'a> {
pub private_indicator: bool,
pub service_id: u16,
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 prepend_strings: &'a [u8],
pub crid_entries: &'a [u8],
}Expand description
Content Identifier Table (ETSI TS 102 323 v1.4.1 §12.2).
Variable-length fields are kept as raw byte slices borrowing from the source
buffer. Callers that need to iterate CRID entries may walk crid_entries
directly per the wire format:
for each entry:
crid_ref (2 bytes, u16 big-endian)
prepend_string_index (1 byte)
unique_string_length (1 byte)
unique_string_bytes (unique_string_length bytes)Fields§
§private_indicator: boolprivate_indicator bit from byte 1.
service_id: u16service_id — identifies the container this section belongs to
(table_id_extension, bytes 3-4).
version_number: u85-bit version_number.
current_next_indicator: boolcurrent_next_indicator bit.
section_number: u8Section counter within the sub-table.
last_section_number: u8Final section number in the sub-table.
transport_stream_id: u16transport_stream_id of the carrying TS.
original_network_id: u16original_network_id of the originating network.
prepend_strings: &'a [u8]Raw prepend-string block. The wire prepend_strings_length byte is
derived from prepend_strings.len() on serialize (≤ 255). Entries are
null-terminated ASCII/DVB-text fragments; addressed by index from the
CRID loop.
crid_entries: &'a [u8]Raw CRID entry loop (everything between the prepend-string block and the CRC-32). Walk per the format documented on the struct.
Trait Implementations§
impl<'a> Eq for Cit<'a>
Source§impl Serialize for Cit<'_>
impl Serialize for Cit<'_>
Source§type Error = Error
type Error = Error
Parse impl, but need not be).Source§fn serialized_len(&self) -> usize
fn serialized_len(&self) -> usize
serialize_into will write.