Convert Progressive to Interlaced with FFmpeg Telecine

This article explains how to use the telecine filter in FFmpeg to convert progressive video files into an interlaced format. You will learn the basic command syntax, key parameters for applying telecine patterns, and how to properly configure your encoder to output a broadcast-compliant interlaced video stream.

The telecine process is commonly used to convert 24 frames per second (fps) progressive film content into a 29.97 fps (or 30 fps) interlaced video format, which is the standard for NTSC television broadcasts. This is achieved by distributing the progressive frames across alternating top and bottom video fields using a specific pulldown pattern.

The Basic Telecine Command

To apply a standard 3:2 pulldown (the most common pattern for converting 24p to 30i), use the telecine video filter. Below is the fundamental FFmpeg command:

ffmpeg -i input_24p.mp4 -vf "telecine=first_field=top:pattern=32" -c:v libx264 -flags +ildct+ilme output_30i.mp4

Parameter Breakdown

Selecting the Right Pixel Format

For broadcast compatibility, interlaced video often requires a specific chroma subsampling format, such as YUV 4:2:2. You can force this output by adding the -pix_fmt flag to your command:

ffmpeg -i input_24p.mp4 -vf "telecine=first_field=top:pattern=32" -c:v libx264 -pix_fmt yuv422p -flags +ildct+ilme output_30i.mp4

By combining the telecine filter with interlaced encoding flags, FFmpeg will successfully structure and flag the output file as interlaced, making it ready for hardware and software player environments that require interlaced signals.