DVD PTS Handling Across Non-Contiguous VOB Blocks
When a DVD player performs a chapter skip across non-contiguous Video Object (VOB) blocks, it handles Presentation Time Stamps (PTS) by resetting its internal System Time Clock (STC) rather than expecting continuous timestamp progression. Instead of relying on a linear PTS timeline across fragmented or non-sequential data, the playback system coordinates navigation data from IFO files, pack headers containing System Clock References (SCR), and Navigation Packs (NV_PCK) embedded in each Video Object Unit (VOBU) to re-synchronize audio and video streams seamlessly at the target location.
The Problem of Discontinuity in VOB Structures
In standard MPEG-2 Program Streams, PTS values dictate the exact playback moment of decoded audio and video frames relative to an STC. However, DVD authoring often scatters content across non-contiguous VOB blocks due to multi-angle features, seamless branching, parental control variations, or conventional file fragmentation.
Because chapters are logical divisions mapped across physical Cells and VOBUs, skipping to a new chapter typically points to a completely different sector on the disc where the PTS values may be lower, vastly higher, or reset to zero compared to the preceding block. Attempting to interpret these timestamps linearly would cause buffer underflows, freezes, or massive audio-video desynchronization.
The Chapter Skip Process
To navigate non-contiguous blocks without playback errors, the playback engine executes a precise sequence:
- IFO Table Resolution: The player consults the disc's Program Chain Information (PGCI) inside the IFO files. The Cell Playback Information Table (C_PBIT) maps the requested chapter (Program) to a specific Cell and its starting Logical Block Address (LBA).
- Buffer Flushing: Upon receiving the skip command, the decoder discards pending data in the track buffer, video elementary stream buffer, and audio buffer to prevent old frames from rendering under the upcoming timeline.
- STC Re-Initialization: The player seeks directly to the target LBA, reading the Pack Header of the new VOBU. This header contains a new System Clock Reference (SCR). The player's hardware STC is updated to match this new baseline clock.
- Target VOBU Acquisition: Each VOBU begins with a
Navigation Pack (
NV_PCK) containing Data Search Information (DSI) and Presentation Control Information (PCI). The PCI definesVOBU_S_PTM(the presentation start time of the first frame in the unit) andVOBU_E_PTM(the presentation end time). - Timestamp Alignment: The decoder reads the first Sequence Header and Group of Pictures (GOP) starting with a closed I-frame. The player aligns the incoming elementary stream PTS values against the newly initialized STC, ensuring that audio and sub-picture streams unpause synchronously with the first valid video frame.
Seamless vs. Non-Seamless Transitions
Handling timestamps across jumps depends on the transition type designated in the Cell parameters:
- Non-Seamless Branching (Normal Chapter Jumps): The
Cell is flagged with a discontinuity indicator
(
STC_Reset_Flag = 1). The player explicitly stops output, clears hardware registers, resets the STC to the incoming SCR, and restarts decode operations. Timestamp continuity across the gap is entirely disregarded. - Seamless Branching (Contiguous Interleaved Cells): Used primarily in multi-angle or alternate scenes where the video must not stutter. Here, non-contiguous physical blocks are interleaved (ILVU). The authoring process ensures that although the read head jumps non-contiguously, the SCR and PTS values between linked interleaved units are mathematically continuous. The player's track buffer bridges the physical seek latency, allowing the PTS to progress linearly without an STC reset.
By isolating the logical timeline through IFO pointers and relying on pack-level clock references, DVD systems decouple physical block layout from presentation timing, allowing instant recovery and synchronization during non-contiguous chapter jumps.