Create DVD Directory Structure and Files Using FFmpeg
To create a playable, authoring-ready DVD, you must first encode your
video into a highly specific MPEG-2 format and then structure those
files into the standard VIDEO_TS and AUDIO_TS
directory format. While FFmpeg handles the crucial step of encoding the
video and audio to meet strict DVD standards, a complementary utility
called dvdauthor is used to build the actual directory
structure and system files (.IFO, .BUP, and
.VOB) required by DVD players. This guide provides the
exact commands needed to complete this process from start to finish.
Step 1: Encode the Video to DVD Standard with FFmpeg
DVD players require specific video resolutions, aspect ratios,
framerates, and audio codecs. FFmpeg simplifies this with the
-target flag, which automatically configures these
parameters.
Run the following command to encode your source video. Choose either NTSC (standard in North America) or PAL (standard in Europe):
For NTSC DVD:
ffmpeg -i input.mp4 -target ntsc-dvd -aspect 16:9 dvd_output.mpgFor PAL DVD:
ffmpeg -i input.mp4 -target pal-dvd -aspect 16:9 dvd_output.mpgNote: Change -aspect 16:9 to
-aspect 4:3 if your source video is standard definition
full-screen.
Step 2: Generate the DVD Directory Structure
FFmpeg produces a DVD-compatible .mpg program stream,
but it does not generate the filesystem directory. To convert your
.mpg file into the mandatory VIDEO_TS and
AUDIO_TS folders containing .VOB,
.IFO, and .BUP files, use the
industry-standard command-line tool dvdauthor.
Install dvdauthor (if not already installed):
- macOS:
brew install dvdauthor - Ubuntu/Debian:
sudo apt install dvdauthor - Windows: Download the binaries and add them to your system PATH.
- macOS:
Generate the titleset: Run the following command to process your encoded video into the output directory (e.g.,
dvd_fs):dvdauthor -o dvd_fs/ -t dvd_output.mpgGenerate the master table of contents: This finalizes the directory structure by creating the necessary control files:
dvdauthor -o dvd_fs/ -T
Step 3: Verify the Directory Structure
Inside your output directory (dvd_fs), you will now find
two folders. The structure must look exactly like this to be recognized
by DVD players:
dvd_fs/
├── AUDIO_TS/
└── VIDEO_TS/
├── VIDEO_TS.BUP
├── VIDEO_TS.IFO
├── VTS_01_0.BUP
├── VTS_01_0.IFO
└── VTS_01_1.VOB
AUDIO_TSis always empty but must exist.VIDEO_TScontains the video data (.VOB) and the playback configuration and backup files (.IFOand.BUP).
This directory is now fully compiled, authoring-ready, and prepared for burning to a physical DVD disc or packaging into an ISO file.