How HandBrake Processes VOB to MP4 or MKV

This article explains the technical pipeline HandBrake uses to transform raw DVD VOB (Video Object) files into space-efficient, modern MP4 or MKV containers. Converting these legacy files involves parsing complex container structures, demultiplexing interleaved streams, decoding MPEG-2 video and legacy audio, applying video filters like deinterlacing, and re-encoding the data using high-efficiency modern codecs before final packaging.

1. Ingestion and Stream Demultiplexing

VOB files are based on the MPEG-2 Program Stream format, multiplexing video, audio, navigation menus, and subtitle streams into a single file. When a user loads a VOB file or a DVD folder (VIDEO_TS) into HandBrake, the software utilizes libavformat (from the FFmpeg library) to inspect the container. HandBrake reads the timestamps and stream headers to separate (demux) the interleaved data into isolated elementary streams:

If an entire DVD structure is provided, HandBrake references the accompanying .IFO files to stitch split VOB files together seamlessly, ensuring continuous playback without audio-video desynchronization.

2. Decoding the Legacy Content

Once demuxed, the elementary streams are sent to software decoders:

3. Video Filtering and Pre-Processing

DVD video stored in VOB files frequently suffers from interlacing artifacts, incorrect aspect ratios, and black borders. HandBrake routes the raw, uncompressed frames through a pipeline of user-defined filters:

4. Re-encoding (Compression)

After processing, the uncompressed data is passed to target encoders:

5. Final Multiplexing (Muxing)

The final stage is packaging the new elementary streams into the user's chosen modern container—either MP4 or MKV:

Once muxing is complete, the resulting file is a modern, standalone media file that is significantly smaller than the original VOB and compatible with contemporary hardware and media players.