
๐ง Introduction
As part of my ongoing archival work for the Kapothi Vault, I needed to convert a legacy DVD video disc into two formats:
- A single
.mp4file preserving the original video quality - A single
.mp3file extracted from the DVDโs audio stream
This post documents the exact steps I followed using FFmpeg, a powerful open-source tool for multimedia processing.
๐ Step 1: Copy DVD Contents to Hard Disk
I first copied the entire DVD to a folder on my hard drive. The DVD structure looked like this:
D:\DVDVIDEO\
โโโ VIDEO_TS\
โโโ VTS_01_1.VOB
โโโ VTS_01_2.VOB
โโโ VTS_01_3.VOB
โโโ ...
๐ฌ Step 2: Convert Full DVD to MP4 (Preserving Quality)
To combine all .VOB files into a single .mp4 file, I created a text file named voblist.txt with the following content:
file 'VTS_01_1.VOB'
file 'VTS_01_2.VOB'
file 'VTS_01_3.VOB'
Then I ran this FFmpeg command:
ffmpeg -f concat -safe 0 -i voblist.txt -vf yadif -c:v libx264 -preset slow -crf 18 -c:a aac -b:a 192k "DVD_Archive.mp4"
โ What this does:
- Combines all listed
.VOBfiles - Deinterlaces the video (
yadif) - Compresses with high-quality H.264 (
libx264) - Preserves near-original quality (
crf 18) - Converts audio to AAC at 192 kbps
๐ต Step 3: Extract Audio as MP3 from Main VOB File
To extract just the audio from the main .VOB file, I used:
ffmpeg -i "VTS_01_1.VOB" -vn -c:a libmp3lame -b:a 192k "DVD_Audio.mp3"
โ What this does:
-vndisables video- Converts audio to MP3 using LAME encoder
- Preserves audio fidelity at 192 kbps
๐๏ธ Final Thoughts
This process ensures that legacy DVDs are not just digitized, but ritualized โ with every frame and waveform preserved in formats that honor their original structure. Whether you’re archiving family memories or regional media, FFmpeg remains a sovereign tool in the Kapothi arsenal.
๐ Tags:
FFmpeg, DVD Conversion, Kapothi Vault, Archival Workflow, MP4, MP3, Legacy Media, Open Source Tools
How to Fix / Clean It Up
Add flags to reset timestamps:
ffmpeg -i VTS_01_3.VOB -c copy -copyts -start_at_zero VTS_01_3.tsโ Forces FFmpeg to rebuild timestamps from zero.
Skip discontinuities:
ffmpeg -i VTS_01_3.VOB -c copy -fflags +genpts VTS_01_3.tsโ Generates new presentation timestamps (PTS) instead of copying broken ones.
If remux still noisy, reโencode video/audio:
ffmpeg -i VTS_01_3.VOB -vf yadif -c:v libx264 -preset slow -crf 18 -c:a aac -b:a 192k VTS_01_3.mp4โ Smooth timestamps, clean output, no DTS spam.
Once each VOB is converted to TS with fixed timestamps, you can safely join them:
ffmpeg -i "concat:VTS_01_1.ts|VTS_01_2.ts|VTS_01_3.ts" -c copy DVD_Archive.ts