1

When recording gameplay with constant 60fps, it records at 60 fps even if the gameplay is ~30 fps or lower.

Is there any way to transcode the 60fps video from constant to variable FPS, so it uses timestamps not FPS?

VixinG
  • 85
  • 2
  • 8

1 Answers1

3

Use

ffmpeg -i video.mp4 -vf mpdecimate -vsync vfr out.mp4

The mpdecimate filter removes duplicate frames, if present, in the recording. The vsync vfr prevents FFmpeg from duplicating frames to match the stored framerate.

Gyan
  • 34,439
  • 6
  • 56
  • 98
  • You're a magician – VixinG Dec 09 '16 at 06:36
  • Thanks a lot! This achieved the higher level goal to [significantly reduce file size while maintaining the same quality in videos like screen recordings](https://superuser.com/a/1792778/40829) which have some dynamic scenes which should be kept at max FPS but also some scenes where a still image (I-frame) lasts e.g. 10 seconds (= 1/10 = 0.1 FPS). – porg Jun 30 '23 at 23:38