DVD Audio Buffer Transition Across Split VOB Files
When a DVD player transitions across split VOB files on a physical disc, the audio buffer relies on read-ahead caching and continuous presentation timestamps to ensure seamless, uninterrupted playback. Because VOB files are arbitrarily split at the 1 GB boundary to comply with file system limitations, the underlying MPEG-2 Program Stream remains logically continuous. Optical disc players use an upstream track buffer to absorb the physical seek delay between files, allowing the dedicated audio decoder buffer to steadily drain and decode audio frames without underflowing or desynchronizing from video.
The 1 GB Split and Stream Continuity
The DVD-Video specification mandates that no individual VOB (Video Object) file exceeds 1 GB (1,048,576 KB). This constraint accommodates legacy file systems such as ISO 9660 and UDF 1.02.
Despite this file division (e.g., transitioning from
VTS_01_1.VOB to VTS_01_2.VOB), the video,
audio, and sub-picture streams are multiplexed as a single,
uninterrupted MPEG-2 Program Stream. The boundary between split files
usually occurs mid-stream and rarely aligns with audio packet
boundaries, Program Clock Reference (PCR) markers, or video Group of
Pictures (GOP) structures. Consequently, the audio stream is treated as
continuous data rather than a new playback initialization.
The Role of the Track Buffer
Physical DVD reading is decoupled from audio/video decoding via a memory staging area known as the Track Buffer (or system buffer).
- Over-reading: DVD drives typically read data off the physical medium at speeds higher than the playback bitrate (e.g., a standard drive reading at 2x to 5x while standard DVD maximum multiplex rate is roughly 10.08 Mbps). This fills the Track Buffer with advance data.
- Physical Laser Seek: When the optical pickup reaches the final sector of an initial VOB and must jump to the starting sector of the sequential VOB, the physical movement of the optical sled causes a momentary pause in data acquisition from the disc surface.
- Sustained Feed: During this physical jump, the optical drive mechanism reads nothing, but the Track Buffer continues to supply the system demultiplexer at the standard playback rate.
Behavior of the Audio Decoder Buffer
Once data leaves the Track Buffer, the demultiplexer splits audio packets into the Audio Elementary Stream Buffer (a dedicated FIFO buffer feeding the AC-3, DTS, or LPCM decoder).
- Continuous Draining: While the laser repositions to access the next file, the audio buffer continues to drain at its steady decoding rate. Because audio bitrates are significantly lower than video bitrates (typically 192–448 kbps for Dolby Digital versus several Mbps for video), audio buffers require very little physical memory to maintain hundreds of milliseconds of uninterrupted sound.
- No Flush Command: The demultiplexer does not issue a buffer flush or reset command at a standard VOB split. Flushing only occurs during explicit non-seamless cell transitions or title changes.
- Refill Phase: Once the optical head lands on the starting sector of the subsequent VOB file, raw sectors immediately populate the Track Buffer again, which in turn replenishes the audio decoder buffer well before it approaches an underflow state.
Timestamp Synchronization and Gap Prevention
Seamless continuation across VOB files depends on two continuous timing markers: the System Clock Reference (SCR) and the Presentation Time Stamp (PTS).
Across a standard file split within the same Cell or Program Chain (PGC), the SCR and PTS values do not reset. The audio decoder compares the PTS embedded in the incoming audio packet headers to the System Time Clock (STC). Because the stream treats the file change as a transparent sector boundary, the timing markers remain linear. The audio decoder continues executing samples strictly against the established clock reference, preventing pops, clicks, or dropouts during playback.