Role of NV_PCK When Jumping VOB Title Segments

This article explains the critical role of the Navigation Pack (NV_PCK) when a DVD player jumps to a new title segment inside a Video Object (VOB) file. It details how the NV_PCK functions as the foundational control header for Video Object Units (VOBUs), how its internal data structures—Presentation Control Information (PCI) and Data Search Information (DSI)—guide the decoder, and how it ensures precise timing, buffer management, and stream synchronization during playback transitions.

The Foundation of the NV_PCK

In the DVD-Video specification, a VOB stream consists of sequential multiplexed packs of 2,048 bytes each. The fundamental operational unit is the Video Object Unit (VOBU), which typically holds 0.4 to 1.0 seconds of presentation material beginning with a closed or open Group of Pictures (GOP).

Every VOBU must begin with an NV_PCK (Navigation Pack). When a playback system jumps to a new title, chapter, or cell segment, it targets the start sector of the corresponding VOBU. The NV_PCK at this boundary acts as the master control block that informs the hardware or software decoder how to parse, time, and present the incoming data.

Presentation Control Information (PCI)

The NV_PCK contains a specialized data packet known as the Presentation Control Information (PCI) buffer (sub-stream ID 0x00). During a title segment jump, the PCI performs several immediate configurations:

Data Search Information (DSI)

Alongside the PCI, the NV_PCK houses the Data Search Information (DSI) packet (sub-stream ID 0x01). The DSI is dedicated to playback control, navigation offsets, and buffer flow:

Decoder Buffer Management During a Jump

When jumping to an arbitrary title segment within a VOB, the decoder cannot assume stream continuity. The incoming NV_PCK commands the decoder hardware to execute specific state changes:

  1. Buffer Flushing: Unless marked as a seamless branch, the presence of the new NV_PCK signals the track buffer, video buffer (VBV), and audio buffer to clear residual data from the prior title segment.
  2. System Clock Reference (SCR) Alignment: The pack header of the NV_PCK carries a new SCR value. The decoder reloads its internal master clock to match this SCR, ensuring that subsequent elementary audio and video packs decode at the designated presentation times without stutter or pitch distortion.
  3. Decoupling Dependency: By reading the NV_PCK immediately preceding an I-frame, the decoder establishes an independent decode point, discarding dependencies on previous reference frames from the preceding title.