Why SCR Values Must Increase Monotonically in VOBs
In DVD-Video specifications, a VOB (Video Object) file is structured as a constrained MPEG-2 Program Stream where sequential data delivery relies on precise timing. The System Clock Reference (SCR) dictates when each 2048-byte pack arrives at the decoder's buffers. This article explains why sequential packs within a standard continuous presentation must feature monotonically increasing SCR values, focusing on hardware synchronization, the System Target Decoder (STD) buffer model, and the relationship between the reference clock and decoding timestamps.
The Function of the System Clock Reference
A VOB stream is composed of sequential 2048-byte packs, each beginning with a pack header that contains an SCR. The SCR acts as a timestamp generated by the multiplexer to establish the System Time Clock (STC) inside the receiving hardware or software decoder. Because consumer playback devices have their own independent hardware oscillators that can drift, the incoming SCR values continuously calibrate the decoder's internal STC to match the multiplexer’s original timeline.
Buffer Management in the System Target Decoder
MPEG-2 playback is governed by an idealized mathematical model called the System Target Decoder (STD). In this model:
- Controlled Arrival: Data packs do not arrive instantaneously; their delivery time into the decoder's input buffer is scheduled strictly by their SCR value.
- Overflow Prevention: If an SCR jumps backward or fails to advance, the decoder miscalculates the data arrival schedule, causing packets to arrive before space is freed in the input buffers, resulting in a buffer overflow.
- Underflow Prevention: If the SCR does not move forward at a pace matching the stream's bitrate, the decoder assumes data has stalled. The downstream audio and video elementary stream buffers will empty completely before the required frames arrive, causing buffer underflow and playback stutter.
A strictly increasing, monotonic progression guarantees that the incoming byte stream arrives at the precise theoretical rate calculated during encoding.
Synchronization with PTS and DTS
Elementary streams contained within the VOB packs carry Presentation Time Stamps (PTS) and Decoding Time Stamps (DTS). These stamps dictate the exact instant an audio sample or video picture must be removed from its respective buffer, decoded, and rendered to the viewer.
Because PTS and DTS are evaluated directly against the local STC established by the SCR, the reference clock must advance predictably forward. If the SCR decreases or behaves erratically across sequential packs, the STC becomes desynchronized from the PTS and DTS. The decoder cannot determine whether a frame belongs to the past, the present, or the future, which leads to dropped frames, audio-video desynchronization, or total decoder lockup.
Continuous Presentation and Discontinuities
Within a single continuous program stream or cell, time is strictly linear. While DVD authoring rules permit clock resets across distinct cells or angles via explicit discontinuity markers, standard sequential packs within a continuous sequence cannot handle arbitrary timeline regressions. The requirement for a monotonic increase ensures that standard DVD decoders can stream, buffer, demultiplex, and display video at a consistent rate without unexpected state resets.