Film vs Interlaced Video Metadata in VOB Files

VOB (Video Object) files store multimedia streams using the MPEG-2 Program Stream container standard, typical of DVD-Video media. Determining whether the source material inside a VOB originated from native 24fps film or interlaced videotape requires inspecting the structural metadata flags embedded within the MPEG-2 video elementary stream headers. Specifically, the decoder relies on the picture_coding_extension and sequence_extension metadata to identify progressive film frames converted via telecine versus true field-based interlaced video.

The Picture Coding Extension Flags

The primary metadata indicating film versus video is located in the MPEG-2 Picture Coding Extension header (picture_coding_extension()), which precedes each video frame. Within this header, three primary flags reveal the source type:

  1. progressive_frame:

    • When set to 1, the underlying coded frame represents a progressive image captured at a single instant in time, typical of film.
    • When set to 0, the frame represents two interlaced fields sampled at different temporal points, typical of native video cameras.
  2. repeat_first_field (RFF) and top_field_first (TFF):

    • These flags control soft telecine (3:2 pulldown). In film-sourced NTSC transfers, 23.976 fps film is encoded as progressive frames (progressive_frame = 1), but must be output as 29.97 fps interlaced video.
    • To achieve this, the metadata alternates repeat_first_field between 1 and 0 across consecutive frames, dictating that a field be repeated upon display. A continuous pattern of toggling RFF flags alongside progressive_frame = 1 is the definitive indicator of film-originated material.
    • On pure interlaced videotape sources, repeat_first_field is consistently 0.

picture_structure Metadata

Also found in the Picture Coding Extension, the picture_structure field designates how the frame is packaged:

Sequence Extension: progressive_sequence

At the sequence level, the Sequence Extension contains the progressive_sequence flag:

Soft Telecine vs. Hard Telecine Limitations

These metadata flags definitively identify film only when the content utilizes soft telecine, where the underlying stored frames are progressive and the flags instruct the player to generate interlaced fields.

If film content was subjected to hard telecine prior to encoding, the 3:2 pulldown was baked into the video signal before MPEG-2 compression. In such cases, the encoder treats the incoming signal as standard television broadcast: progressive_frame will be marked 0, repeat_first_field will be 0, and the metadata will register the file as interlaced videotape. Identifying hard telecined film requires visual comb-pattern analysis rather than relying solely on container or stream metadata.