How ILVU Organizes Multi-Story Branches in VOB
The Interleaved Unit (ILVU) structure in DVD-Video allows multiple narrative branches or camera angles to exist within a single Video Object (VOB) file without causing playback interruption. By physically alternating small chunks of video data for different story paths on the disc, ILVUs eliminate the need for the optical laser pickup to perform long, mechanically intensive seek operations. This structure relies on strict time-alignment, navigation pack pointers, and hardware buffer management to deliver seamless real-time branching playback.
The Mechanism of Interleaving
In standard sequential playback, video data is written linearly. However, multi-story branching requires the player to jump dynamically between alternate scenes based on viewer choice or parental control settings. Because optical drives have relatively slow seek times, jumping across megabytes of data to reach an alternate branch would cause the track buffer to empty, resulting in audio dropouts and video stutter.
ILVU solves this by splitting each parallel story branch into small, discrete segments called Interleaved Units. Instead of placing Scene A entirely before Scene B, the authoring system alternates them sequentially on the disc:
- ILVU A1 (Story Branch A, Part 1)
- ILVU B1 (Story Branch B, Part 1)
- ILVU A2 (Story Branch A, Part 2)
- ILVU B2 (Story Branch B, Part 2)
Each ILVU typically spans a duration between 0.5 to 2.0 seconds and consists of one or more Video Object Units (VOBUs), always starting with a sequence header and a closed Group of Pictures (GOP) to allow clean entry points.
Navigation Packs and Forward Pointers
The seamless transition between ILVUs is governed by Data Search Information (DSI) located inside the Navigation Pack (NV_PCK) at the start of every VOBU. The DSI contains specific navigational pointers that guide the player:
- ILVU End Address (ILVU_EA): Defines where the current interleaved unit ends.
- Next ILVU Start Address (NT_ILVU_SA): Informs the player of the exact sector address where the next unit of the active story branch begins.
- Next ILVU Size (NT_ILVU_SZ): Specifies the data size of the upcoming target block to optimize buffering.
When a viewer follows Story Branch A, the player reads ILVU A1. When it reaches the end of A1, the optical pickup reads the forward pointer and quickly skips over ILVU B1 directly to ILVU A2.
Buffer Management and Seamless Branching Rules
For interleaving to function without playback interruption, the data rate and block size must adhere to strict DVD specifications governed by the track buffer:
- Buffer Read-Ahead: While reading an ILVU, the drive reads data off the disc faster than the playback bitrate, filling the player's internal memory buffer.
- The Jump Phase: When skipping over the non-selected branches (e.g., jumping past B1), data transfer from the disc stops. The player feeds audio and video to the screen entirely from its buffer.
- Buffer Replenishment: The laser must arrive at the next relevant block (A2) and resume reading before the buffer runs out of data.
To guarantee this balance, the authoring specification limits the maximum physical jumping distance (the total size of the interleaved blocks being skipped) and restricts the peak bitrate of interleaved content compared to non-interleaved video. Additionally, all parallel branches must maintain synchronized presentation time stamps (PTS) at the boundaries so audio and video remain in phase regardless of which path the viewer selects.