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?
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.