ffmpeg 注入时间码和帧速率

ffmpeg 注入时间码和帧速率

我正在尝试将开始时间码注入视频,同时强制帧速率为 29.97,但无论我输入什么帧速率(无论在脚本中的什么位置,通过 -r 29.97),ffmpeg 都会将帧速率强制为 25fps。我也尝试过 fps=29.97,但我的理解是“fps=”已弃用。这是我正在运行的命令:

ffmpeg -i /INPUT/FILE/SEQUENCE_%04d.jpg -vf -r 29.97 -vcodec prores -profile:v 0 -c:a mp2 -timecode 09:08:52:00 /OUTPUT/FILE.mov

我尝试了这些标签的所有组合,但无论如何,我得到的都是 25fps。有人遇到过这种情况吗?

提前致谢。

答案1

您的命令如果显示正确,但其语法是错误的。

...-vf -r 29.97...<-- 将帧速率标志设置为视频过滤器选项的参数。29.97然后被解释为输出文件名。

另一件事是,图像序列被解释为 25 fps(默认情况下),因此即使您的命令有效,您的输出也会有重复的帧,并且速度会慢 16%。

相反,将输入设置为 29.97 或 30000/1001,

ffmpeg -framerate 30000/1001 -i /INPUT/FILE/SEQUENCE_%04d.jpg -c:v prores -profile:v 0 -c:a mp2 -timecode 09:08:52:00 /OUTPUT/FILE.mov

相关内容