How Packet Interleaving Prevents Audio Starvation in VOB

Packet interleaving prevents audio starvation in Video Object (VOB) decoding by multiplexing small, time-aligned fragments of audio and video into a single continuous stream. In media formats like DVD-Video, reading devices access data sequentially from an optical disc with limited bandwidth and seek speeds. By distributing audio data in small increments directly alongside the corresponding video data, the system ensures that the audio buffer continuously receives new samples before it empties. This article explains the mechanics of packet interleaving, the role of buffer management, and how this architecture guarantees seamless, jitter-free playback.

The Mechanics of Audio Starvation

Audio starvation—or buffer underrun—occurs when an audio decoder consumes data faster than the storage medium or demultiplexer can replenish it. When the audio buffer runs dry, playback stutters, drops out, or loses synchronization with the video.

Video data is substantially larger than audio data. A single second of high-bitrate MPEG-2 video can require several megabytes, while an AC-3, PCM, or DTS audio stream for the same duration requires only a fraction of that size. If the media stream stored all video for a scene consecutively followed by all audio, the playback drive would have to physically seek back and forth across the disc or buffer vast amounts of video just to fetch a few kilobytes of audio.

The Role of Packet Interleaving

A VOB file is based on the MPEG-2 Program Stream format, which divides media into discrete units called packs and packets. Instead of storing entire video frames and complete audio tracks in large, separate blocks, the authoring process uses interleaving:

  1. Fragmentation: Audio and video streams are sliced into small packets, typically 2,048 bytes each to align with standard DVD sectors.
  2. Temporal Grouping: Packets that are meant to be decoded and presented at approximately the same time are grouped together into Video Object Units (VOBUs). A VOBU generally represents between 0.4 and 1.0 seconds of playback time.
  3. Sequential Multiplexing: Inside each VOBU, the multiplexer places audio packs periodically between video packs.

Because the data is organized sequentially by playback time, a single linear read of the disc continuously yields both audio and video data in the proportions required for real-time playback.

Buffer Management and the System Target Decoder

The MPEG-2 System Target Decoder (STD) model dictates strict rules for buffering to maintain continuous decoding without overflow or underflow.

The audio buffer on hardware decoders is intentionally small to reduce manufacturing costs and minimize initial latency. As the optical drive reads through a VOBU, the demultiplexer immediately routes the interleaved audio packets to the audio buffer and video packets to the video buffer.

Because audio packets are interspersed at regular, micro-second intervals, the audio buffer is regularly replenished just as previous samples are decoded and sent to the digital-to-analog converter (DAC).

Maintaining Synchronization via Timestamps

Interleaving relies on Presentation Time Stamps (PTS) and Decoding Time Stamps (DTS) embedded within the packet headers. These timestamps tell the decoders precisely when to decode and present each frame or audio sample.

Even if the video bit rate spikes dramatically during high-motion scenes—monopolizing most of the bandwidth—the interleaving algorithm ensures that essential audio packets are still prioritized and inserted into the stream at calculated intervals. The audio decoder is thus continuously fed, preventing playback interruption and maintaining strict audio-video synchronization throughout continuous VOB decoding.