How to Convert 60fps to 24fps with FFmpeg FPS Filter
Changing a video’s frame rate is a common post-production task, often
used to achieve a cinematic aesthetic or reduce file size for web
streaming. This article provides a quick, step-by-step guide on how to
use the FFmpeg fps video filter to convert a high frame
rate 60fps video down to a standard 24fps. You will learn the exact
command-line syntax required, how the filter processes the video frames,
and why this method is preferred for maintaining perfect audio-video
synchronization.
The Standard FFmpeg Command
To convert a video from 60fps to 24fps using the fps
filter, open your terminal or command prompt and run the following
command:
ffmpeg -i input.mp4 -vf "fps=24" output.mp4Command Breakdown:
-i input.mp4: Specifies the path to your source video file (which is currently 60fps).-vf "fps=24": Applies the video filter (-vfis shorthand for-filter:v). Thefpsfilter resamples the video to the specified target frame rate of 24 frames per second.output.mp4: The name and format of your newly generated output video.
How the FPS Filter Works
When reducing the frame rate from 60fps to 24fps, the
fps filter drops specific frames at regular intervals to
match the target rate of 24.
Because it drops frames rather than slowing down the playback speed, the overall duration of the video remains exactly the same. Consequently, your audio track is preserved and remains perfectly synchronized with the video without requiring any pitch or speed adjustments.
Advanced FPS Filter Options
The fps filter also allows you to control how frames are
dropped or duplicated using the round option. By default,
FFmpeg uses rounding to find the nearest input frame. You can customize
this behavior if you experience stuttering:
ffmpeg -i input.mp4 -vf "fps=fps=24:round=near" output.mp4The available rounding methods include: *
near: Round to the nearest source frame
(default). * inf: Round up to the next
frame. * zero: Round down to the previous
frame.
Using the fps filter is the most reliable method in
FFmpeg for altering frame rates because it handles timebase adjustments
automatically, ensuring compatibility across all major media
players.