DVD PCI Packet Button Activation Information

Within a DVD-Video VOB (Video Object) stream, menu button behavior and user interactivity are governed by Presentation Control Information (PCI) packets embedded inside Navigation Packs (NV_PCK). This article provides a focused breakdown of the specific data structures inside the PCI packet responsible for menu button activation, including the Highlight Information (HLI) table, button coordinate mapping, color state transitions, and executable button commands.

The Role of the PCI Packet

A VOB stream interleaves audio, video, sub-pictures, and navigation data. At the start of every Video Object Unit (VOBU), a Navigation Pack (NV_PCK) appears, containing two primary sub-packets: Data Search Information (DSI) and Presentation Control Information (PCI). While the DSI handles playback positioning and search routines, the PCI controls the real-time presentation and user interaction, primarily through its Highlight Information (HLI) structure.

Highlight Information (HLI)

The HLI is the specific section within the PCI packet that defines interactive menus. It tells the DVD player where buttons are, how they respond to user input, and what occurs when a button is activated (pressed). The HLI contains three core sub-elements governing button operations:

  1. Highlight General Information (HLI_GI)
  2. Button Color Information Table (BTN_COLIT)
  3. Button Information Table (BTNIT)

Highlight General Information (HLI_GI)

The HLI_GI provides global parameters for the menu's interactive state during the presentation of the current VOBU:

Button Information Table (BTNIT) and Button Data (BTNI)

The BTNIT consists of individual Button Information blocks (BTNI) for each button defined on the menu screen (supporting up to 36 rectangular buttons for 4:3 displays, or 18 per aspect mode in widescreen displays). For each button, the following activation-specific parameters are stored:

Button Commands (BTN_CMD)

The most critical data for button activation is the Button Command (BTN_CMD) embedded within each button’s profile:

Color and State Transitions (BTN_COLIT)

The PCI packet dictates the visual feedback displayed when a button transitions from a normal state to an activated state: