In Digital Video Broadcasting (DVB) systems, a PID (Packet Identifier) is a key concept used to identify different types of data within a transport stream (TS). Here’s a breakdown of what it means and how it’s used:
💡 What is a PID?
A PID is a 13-bit field in the header of each MPEG-TS (Transport Stream) packet. It tells the receiver what kind of data is in the packet, such as:
- Video stream
- Audio stream
- Subtitles
- Program-specific information (PSI) like the Program Association Table (PAT) or Program Map Table (PMT)
- Conditional Access Table (CAT) for encrypted content
🛠️ How PIDs Work
Each packet in a DVB transport stream is 188 bytes long and starts with a header that includes the PID. The receiver uses the PID to filter and reassemble the correct streams for playback.
🧭 Common PID Values
| PID (Hex) | PID (Decimal) | Description |
|---|---|---|
0x0000 |
0 | Program Association Table (PAT) |
0x0001 |
1 | Conditional Access Table (CAT) |
0x0002 |
2 | Transport Stream Description Table |
0x1FFF |
8191 | Null packets (used for padding) |
🛰️ Example Use Case
If you’re watching a DVB broadcast:
- The video might be on PID
0x0100 - The audio on PID
0x0200 - The subtitles on PID
0x0400 - The PMT for the program on PID
0x0020
The receiver reads the PAT to find the PMT, then uses the PMT to find the PIDs for the actual content.

📡 Transport Stream Structure
The picture shows the structure of the transport stream by considering only those components which are relevant for subtitling.

This page was last updated on 2025-07-22