How to Convert Video to VCD Format Using FFmpeg

This article provides a quick and straightforward guide on how to transcode any video file into the classic Video CD (VCD) format using the FFmpeg command-line tool. You will learn the specific command-line arguments and standard specifications required to output a fully compliant MPEG-1 file ready for VCD authoring.

The Standard VCD Specifications

To make a video compatible with VCD players, it must strictly adhere to the MPEG-1 standard. The specifications differ slightly depending on the regional television standard (NTSC or PAL):

The Easy Way: Using the FFmpeg Target Preset

FFmpeg includes built-in target presets that automatically configure all the correct video and audio parameters for VCD. This is the most reliable and efficient way to perform the conversion.

For NTSC VCD (North America, Japan):

Run the following command in your terminal:

ffmpeg -i input.mp4 -target ntsc-vcd output.mpg

For PAL VCD (Europe, Asia, South America):

Run the following command in your terminal:

ffmpeg -i input.mp4 -target pal-vcd output.mpg

Manual Conversion (Optional)

If you need to manually define the parameters or if you want to understand what the -target flag does under the hood, you can write out the full command.

Here is the manual equivalent for an NTSC VCD conversion:

ffmpeg -i input.mp4 -c:v mpeg1video -r 29.97 -s 352x240 -b:v 1150k -maxrate:v 1150k -bufsize:v 327k -c:a mp2 -ar 44100 -ab 224k -ac 2 -f vcd output.mpg

Aspect Ratio Handling

Because VCD uses a non-square pixel aspect ratio, widescreen (16:9) source videos may look stretched vertically when converted to the standard 4:3 VCD format. To maintain the correct aspect ratio, you can pad the video with black bars (letterboxing) using FFmpeg’s video filter:

ffmpeg -i input.mp4 -vf "scale=352:198,pad=352:240:0:21:black" -target ntsc-vcd output.mpg

This scales a 16:9 widescreen video to fit the 352-pixel width while adding 21-pixel tall black bars to the top and bottom to satisfy the required 240-pixel height.