MPTS stands for Multi-Program Transport Stream. It is a format defined within MPEG-2 Transport Stream (MPEG-TS) standards where multiple independent programs (channels) are multiplexed into a single transport stream. A simple definition would be one MPTS carries multiple programs with each program containing a complete service of video plus audio plus metadata. Think of it as a single pipe carrying multiple TV channels at the same time. A Single Program Transport Stream will carry only a single program.
| Type | Meaning | Content |
|---|---|---|
| SPTS | Single Program Transport Stream | One program only |
| MPTS | Multi-Program Transport Stream | Multiple programs |
Let’s look at how it actually works. An MPTS is composed of:
1. Packetized Streams
These are fixed-size 188-byte MPEG-TS packets (with a usual IPv4 legth of 230 bytes):

2. PID (Packet Identifier)
Each stream (video, audio, data) has a unique PID
3. Program Separation
Programs are distinguished using:
- PAT (Program Association Table)
- PMT (Program Map Table)
Structure Example
MPTS
├── Program 1 (Channel A)
│ ├── Video PID
│ ├── Audio PID
│ └── Metadata
│
├── Program 2 (Channel B)
│ ├── Video PID
│ ├── Audio PID
│ └── Metadata
│
└── Program 3 (Channel C)
├── Video PID
├── Audio PID
└── Metadata
Where is MPTS Typically used. Here is the answer to that:
Broadcast and Cable Systems
- Digital TV (DVB, ATSC)
- Cable headends
- Satellite distribution
IPTV Core Networks
- Efficient backbone transport
- Multiple channels in one stream
A IPTV operator might send 10 TV channels, each at ~3–5 Mbps all multiplexed into a single MPTS at ~40 Mbps.
The reason that MPTS exists is a) Efficiency – Multiple programs share the same bandwidth, b) Simplified Transport – One stream instead of many, and c) Synchronization – meaning all programs time-aligned in one transport stream.
I have heard some confusion between MPTS and ABR. My recent post on ABR will explain that technology in more detail. But my point here is that MPTS and ABR are not the same thing. Let’s look at how they are different:
| Feature | MPTS | ABR (HLS/DASH) |
|---|---|---|
| Delivery | Continuous stream | Segmented HTTP |
| Structure | Multiplexed channels | Individual segments |
| Transport | UDP/RTP or MPEG-TS | TCP/QUIC over HTTP |
| Adaptation | None | Dynamic bitrate switching |
- MPTS = broadcast model
- ABR = on-demand adaptive model
If you want to analyze MPTS traffic in Wireshark there are typical indicators that you have MPTS traffic. Look for:
- UDP streams (often multicast)
- MPEG-TS packets (188 bytes)
- Repeating PIDs
- PAT/PMT tables
The following are Wireshark Display Filters that one would use:
udp
mpeg_sect
mp2t
MPTS Lab Exercise with a Synthetic MPTS Pcap
If you would like to dive deeper and follow along with a pcap file and lab exercise examining MPTS, head over to the patreon site here.
If you would like to help support the continued development of independent networking, broadband, Wi-Fi, VoIP, and packet analysis content, please consider joining our Patreon community where you will gain access to exclusive technical resources, downloadable labs and PCAPs, bonus course content, troubleshooting guides, and additional member-only material. Comments and technical discussion are always welcomed at our Patreon community or on our Discord server. You can also support our work by simply buying us a coffee — every contribution helps us continue creating practical, real-world network science education for professionals and enthusiasts alike.

