Phones don’t record a steady frame rate
A video isn’t exactly 30 pictures every second. Many phones record what’s called variable frame rate, where the time between frames changes. It saves space and battery, especially in dim light or when little is moving. Played back normally, you never notice.
Where it goes wrong
Many editors, and plenty of scripts, assume a steady rate and count frames to find a time. With variable frame rate that count slowly disagrees with the clock. The longer the clip, the bigger the gap. Captions arrive a little early, then a little late, and cuts land a few frames off.
How to check your clip
ffprobe comes with ffmpeg. Ask it for two numbers:
ffprobe -v error -select_streams v:0 -show_entries stream=r_frame_rate,avg_frame_rate -of default=nw=1 clip.movIf the two numbers differ, the clip is very likely variable frame rate. It’s a rule of thumb, not proof, but it’s right most of the time.
The usual fix
Convert the clip to a steady rate before you edit it:
ffmpeg -i clip.mov -fps_mode cfr -r 30 clip-steady.mp4That rewrites the video at exactly 30 frames a second. On older versions of ffmpeg, use -vsync cfr in place of -fps_mode cfr. Do it before you add captions or cuts, not after.
Why Cutleap checks first
Captions are timed to the audio, down to the word, so a clip with a wobbly clock can’t be trusted. Cutleap reads each clip’s real frame timings when you upload it and works from those, so you don’t have to know any of this.
“Add captions and cut the pauses.”
“Make a 30-second Reel from this clip.”
Let Cutleap do the editing
Upload your clips, say what you want, get finished videos back. 7-day free trial, cancel anytime.
Get early accessQuestions
Do all phones record variable frame rate?
Many do, in many modes. It varies by phone and settings, which is why it surprises people.
Does it affect short clips?
Rarely in a way you’d notice. The drift grows with length, so it shows up on longer takes.
Do I need to convert my clips first for Cutleap?
No. Upload them as they came off the phone.