Role of Private Stream Headers in VOB Files
In DVD-Video architecture, Video Object (VOB) files rely on the MPEG-2 Program Stream format to multiplex video, audio, and control data into a single, cohesive file. This article examines the critical function of private stream headers within VOB multiplexing, explaining how they enable decoders to identify, separate, and synchronize supplementary content—such as Dolby Digital (AC-3), DTS, LPCM audio, and subpicture subtitles—that standard MPEG-2 specifications do not natively handle.
The MPEG-2 Foundation and the Need for Private Streams
A standard MPEG-2 Program Stream assigns unique stream IDs to differentiate between elementary video streams and native MPEG audio streams. However, DVD technology required support for formats beyond original MPEG standards, including multi-channel AC-3, DTS, uncompressed LPCM audio, and run-length encoded subtitle overlays (subpictures).
Because the base MPEG-2 specification lacked stream identifiers for
these non-native formats, the DVD specification routes this data through
generic containers known as Private Stream 1 (identifier
0xBD) and Private Stream 2 (identifier
0xBF).
Sub-Stream Identification
The primary function of the private stream header is sub-stream identification. Within a VOB file, Private Stream 1 carries multiple competing data types simultaneously. Without additional signaling, a demultiplexer cannot determine whether an incoming packet belongs to an AC-3 audio track, a DTS stream, or a subtitle track.
To resolve this ambiguity, DVD authoring inserts a private stream header at the beginning of the Packetized Elementary Stream (PES) payload. This header includes a sub-stream ID that explicitly categorizes the payload:
- Sub-stream IDs
0x20to0x3F: Reserved for DVD subpicture streams (subtitles and menu highlights). - Sub-stream IDs
0x80to0x87: Allocated to AC-3 (Dolby Digital) audio tracks. - Sub-stream IDs
0x88to0x8F: Allocated to DTS audio tracks. - Sub-stream IDs
0xA0to0xA7: Allocated to linear PCM (LPCM) audio tracks.
By reading this one-byte identifier, the demultiplexer immediately knows which internal decoding pipeline must receive the packet.
Delivering Synchronization and Frame Metadata
Beyond routing, private stream headers provide essential playback parameters. For audio streams, the header frequently details the number of audio frames present within the PES packet and specifies the starting offset of the first audio frame.
This mechanism allows the player to correctly align the audio payload with the Presentation Time Stamp (PTS) found in the outer PES header. If an audio frame spans across packet boundaries, the private header provides the exact byte offset where the next complete frame begins, preventing audio glitching or desynchronization during playback.
Navigation and Timing via Private Stream 2
While Private Stream 1 handles media delivery, Private Stream 2
(0xBF) uses private headers to deliver Navigation Packs
(NV_PCK). These packs contain Presentation Control Information (PCI) and
Data Search Information (DSI).
The headers inside these packs tell the DVD player how to handle seamless branching, multi-angle scenes, user-interaction menus, and high-speed fast-forward or rewind operations. They provide the sector addresses of adjacent video frames, allowing the drive mechanism to skip through the disc without decoding the entire stream.
The Demultiplexing Workflow
When a media player or software demuxer processes a multiplexed VOB file, the private stream headers guide the demuxing sequence:
- The demuxer reads the outer MPEG-2 pack and PES headers to identify
a private stream (
0xBDor0xBF). - It parses the private stream header immediately following the standard PES header.
- It extracts the sub-stream ID, frame offsets, and track numbers.
- It strips the transport overhead and routes the clean elementary stream to the designated decoder (such as an AC-3 decoder or subtitle renderer).
Without private stream headers, multiplexed VOB files would be limited strictly to basic MPEG video and MPEG-1 Layer II audio, rendering the advanced multi-track audio and interactive subtitle features of the DVD standard impossible to decode.