π Reserved PID Usage
This check reports PAT and PMT declarations that use reserved MPEG-TS PIDs for program mapping, PCR, or elementary streams.
Reserved MPEG-TS PID reference
For baseline MPEG-TS, the universally assigned PSI-related PIDs come from ISO/IEC 13818-1. DVB then layers additional Service Information (SI) assignments on top of that transport-stream core.
Core MPEG-TS reserved PIDs:
| PID (hex) | PID (dec) | Table / use | Purpose |
|---|---|---|---|
0x0000 | 0 | PAT | Program Association Table |
0x0001 | 1 | CAT | Conditional Access Table |
0x0002 | 2 | TSDT | Transport Stream Description Table |
0x0003 | 3 | IPMP | IPMP control information table |
0x0004-0x000F | 4-15 | Reserved | Reserved for future use |
0x1FFF | 8191 | Null packet | Stuffing packets for bitrate padding; not PSI |
The PMT does not have a fixed reserved PID. Its PID is signaled by the PAT.
DVB SI PID assignments:
DVB commonly uses the 0x0010 to 0x001F range for Service Information (SI) tables and related signaling:
| PID | Table / use |
|---|---|
0x0010 | NIT, ST |
0x0011 | SDT, BAT, ST |
0x0012 | EIT, CIT, ST |
0x0013 | RST, ST |
0x0014 | TDT, TOT, ST |
0x0015 | Network synchronization |
0x0016 | RNT |
0x0017-0x001B | Reserved for future use |
0x001C | Inband signalling |
0x001D | Measurement |
0x001E | DIT |
0x001F | SIT |
For this check, the practical concern is that PAT, PMT, PCR, and elementary-stream declarations must not reuse these reserved assignments as ordinary payload PIDs.
What This Test Doesβ
The Reserved PID Usage test inspects PAT and PMT declarations and reports cases where reserved MPEG-TS PIDs are reused for program mapping, PCR, or elementary streams.
It checks that:
- PAT program mappings do not point a PMT to a reserved PID such as
0x0010or0x0011 - PMT
PCR_PIDdoes not use a reserved PID value, except0x1FFFwhen PCR is explicitly unused - PMT elementary stream entries do not use reserved PIDs such as
0x0000through0x001For the null-packet PID0x1FFF
Reserved PIDs are defined for PSI/SI tables and special transport functions. Reusing them for PMT or payload streams can confuse analyzers and receivers, and can lead to false PSI parsing or CRC failures downstream.
β Pass Criteriaβ
The test passes when PAT and PMT declarations do not assign reserved MPEG-TS PIDs to PMT, PCR, or elementary stream entries. Application result message:
No reserved MPEG-TS PIDs were declared by PAT/PMT.
β Fail Criteriaβ
The test fails when one or more reserved MPEG-TS PIDs are declared in PAT or PMT signaling. Typical causes include:
- PAT maps a program PMT to a reserved PID
- PMT declares a reserved
PCR_PID - PMT declares a reserved PID for an elementary stream
Application result messages can include:
PAT maps the program PMT to reserved PID 0x0010 (DVB SI: NIT/ST)PMT declares reserved PCR PID 0x0011 (DVB SI: SDT/BAT/ST)PMT declares reserved elementary PID 0x0011 (DVB SI: SDT/BAT/ST)PMT declares reserved elementary PID 0x1FFF (null packet)