#[non_exhaustive]pub enum Indicator {
Show 28 variants
TsSyncLoss,
SyncByteError,
PatError2,
ContinuityCountError,
PmtError2,
PidError,
TransportError,
CrcError,
PcrRepetitionError,
PcrDiscontinuityError,
PtsError,
CatError,
NitError,
SiRepetitionError,
UnreferencedPid,
SdtError,
EitError,
RstError,
TdtError,
EitPfError,
NitOtherError,
SdtOtherError,
EitOtherError,
SiMinGapError,
PcrAccuracyError,
BufferError,
EmptyBufferError,
DataDelayError,
}Expand description
A TR 101 290 measurement indicator.
#[non_exhaustive] — additional Priority-3 variants may be added later.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
TsSyncLoss
TR 101 290 v1.4.1 Table 5.0a indicator 1.1 — loss of synchronisation with hysteresis.
SyncByteError
TR 101 290 v1.4.1 Table 5.0a indicator 1.2 — sync_byte not equal 0x47.
PatError2
TR 101 290 v1.4.1 Table 5.0a indicator 1.3.a — PAT_error_2.
ContinuityCountError
TR 101 290 v1.4.1 Table 5.0a indicator 1.4 — Continuity_count_error.
PmtError2
TR 101 290 v1.4.1 Table 5.0a indicator 1.5.a — PMT_error_2.
PidError
TR 101 290 v1.4.1 Table 5.0a indicator 1.6 — PID_error.
TransportError
TR 101 290 v1.4.1 Table 5.0b indicator 2.1 — Transport_error.
CrcError
TR 101 290 v1.4.1 Table 5.0b indicator 2.2 — CRC_error.
PcrRepetitionError
TR 101 290 v1.4.1 Table 5.0b indicator 2.3a — PCR_repetition_error.
PcrDiscontinuityError
TR 101 290 v1.4.1 Table 5.0b indicator 2.3b — PCR_discontinuity_indicator_error.
PtsError
TR 101 290 v1.4.1 Table 5.0b indicator 2.5 — PTS_error.
CatError
TR 101 290 v1.4.1 Table 5.0b indicator 2.6 — CAT_error.
NitError
TR 101 290 v1.4.1 Table 5.0c indicator 3.1 — NIT_error (bad table_id on PID 0x0010 + NIT_actual absence).
SiRepetitionError
TR 101 290 v1.4.1 Table 5.0c indicator 3.2 — SI_repetition_error (maximum interval dimension).
UnreferencedPid
TR 101 290 v1.4.1 Table 5.0c indicator 3.4 — Unreferenced_PID: a PID persists longer than the presence threshold without being referenced by the PAT/CAT/a PMT or one of the well-known SI PIDs.
SdtError
TR 101 290 v1.4.1 Table 5.0c indicator 3.5 — SDT_error (bad table_id on PID 0x0011 + SDT_actual absence).
EitError
TR 101 290 v1.4.1 Table 5.0c indicator 3.6 — EIT_error (bad table_id on PID 0x0012 + EIT P/F actual absence).
RstError
TR 101 290 v1.4.1 Table 5.0c indicator 3.7 — RST_error (bad table_id on PID 0x0013).
TdtError
TR 101 290 v1.4.1 Table 5.0c indicator 3.8 — TDT_error (bad table_id on PID 0x0014 + TDT absence).
EitPfError
TR 101 290 v1.4.1 Table 5.0c indicator 3.6.c — EIT_PF_error: if either section (‘0’ P or ‘1’ F) of an EIT P/F sub-table is present, both should exist.
NitOtherError
TR 101 290 v1.4.1 Table 5.0c — NIT_other_error (3.1.b): interval between
sections with the same section_number and table_id = 0x41 on
PID 0x0010 longer than 10 s.
SdtOtherError
TR 101 290 v1.4.1 Table 5.0c — SDT_other_error (3.5.b): interval between
sections with the same section_number and table_id = 0x46 on
PID 0x0011 longer than 10 s.
EitOtherError
TR 101 290 v1.4.1 Table 5.0c — EIT_other_error (3.6.b): interval between
EIT P/F other sections with the same section_number and
table_id = 0x4F on PID 0x0012 longer than 10 s.
SiMinGapError
TR 101 290 v1.4.1 Table 5.0c — min-gap violation: two sections of the
same (table_id, section_number) occurred closer together than the
specified minimum interval (25 ms per Table 5.0c rows 3.1.a, 3.2,
3.5.a, 3.6.a, 3.7, 3.8).
PcrAccuracyError
TR 101 290 v1.4.1 Table 5.0b indicator 2.4 — PCR_accuracy_error.
Not implemented: requires hardware arrival timing with ±500 ns
resolution (ISO/IEC 13818-1 §2.4.2.2). A packet-index-derived arrival
estimate cannot honestly resolve 500 ns, and a false positive is worse
than a gap (c.f. the withdrawn PtsCheck). This variant exists for
documentation completeness only and is never emitted by the monitor.
BufferError
TR 101 290 v1.4.1 Table 5.0c indicator 3.3 — Buffer_error.
Currently checks TB_buffering_error (overflow of transport buffer
TBn, 512 bytes per ISO/IEC 13818-1 §2.4.2.3) and
TBsys_buffering_error (overflow of TBsys, 512 bytes). The remaining
sub-checks — MB_buffering_error, EB_buffering_error,
B_buffering_error, Bsys_buffering_error — require codec-dependent
buffer sizes from descriptors (multiplex_buffer_descriptor,
smoothing_buffer_descriptor) and are deferred until the monitor
parses those descriptors.
EmptyBufferError
TR 101 290 v1.4.1 Table 5.0c indicator 3.9 — Empty_buffer_error.
Checks that TBn (transport buffer for each elementary stream) and TBsys (system-information transport buffer) are empty at least once per second. The MBn check (multiplexing buffer, leak method) is deferred — it requires the full MBn buffer model with leak-rate parameters from descriptors.
DataDelayError
TR 101 290 v1.4.1 Table 5.0c indicator 3.10 — Data_delay_error.
Checks that data delay through the T-STD transport buffers (TBn,
TBsys) does not exceed 1 second (60 s for still-picture video).
The full end-to-end delay through MBn/EBn/Bn is not modelled
(deferred — see Buffer_error doc).