Framerate conversion

Input duration

Seconds
1500 frames
60 sec(s)
Minutes
60 secs / 60
1 min(s)

Conversion 'conform': 25 → 60fps

Definition
The total # of frames stays the same
1500 frames
Speed
video is sped up from 25 to 60 fps
+140%
Audio
As a result, the audio will sound higher
Warning
+140% is a lot, your audio might sound unnatural after processing
Correct audio
pitch down by 58.333% (-15.156 semitones)
41.67%
Convert video
ffmpeg -i [input] -r 60 -filter:v "setpts=0.4167*PTS" -y [output]
Convert audio
sox [input] [output] tempo 2.4
ffmpeg -i [input] -filter:a "atempo=2.4" -vn [output]
Duration: time
1500 frames / 60 fps
25.00 sec

Conversion 'interpolate': 25 → 60fps

Definition
The total duration stays the same
60 sec
New length
60 seconds * 60 fps
3600 frames
Naive conversion
add a copied frame every
1 frames
Convert video
ffmpeg -i [input] -r 60 -y [output]
Convert audio
audio stays exactly the same

Explanation

  • Calculate # frames from time duration and vice versa. e.g. 93 sec @ 24fps = 2232 frames
  • Calculate how audio and video should be manipulated to change from one framerate to another, using sox and/or ffmpeg
  • When is this necessary? If you have a video that was recorded in 25fps(PAL) or 30fps(NTSC), and you want to show it on a cinema screen: you have to convert the framerate to 24 fps.