ffmpeg 忽略每个帧率选项,将结果锁定为 25 fps

问题描述

ffmpeg 版本 3.4.8-0ubuntu0.2 版权所有 (c) 2000-2020 FFmpeg 开发人员

无论我做什么,ffmpeg 都会忽略所有内容并将其编码为 25fps。
-framerate 60 什么都不做
-t 60 什么都不做
-r 60 可以插入帧
-r:v 60 做同样的事情
-vf "fps=60" 做同样的事情
-vframes <actual number of frames> 使其提前结束编码

谷歌显示的所有内容似乎都过时了,包括 ffmpegs 自己的文档

解决方法

解决办法是:

ffmpeg -framerate <framerate> -start_number <number> -i ./<name>%d.png -r <framerate> -c:v <encoder name> -r <framerate> -crf <value> -preset <preset name> <output file name> -async 1 -vsync 1

示例:

ffmpeg -framerate 60 -start_number 225 -i ./render_%d.png -r 60 -c:v libx264 -r 60 -crf 10 -preset veryslow render4k.mp4 -async 1 -vsync 1