该死,ffmpeg 的参数、文档,甚至错误输出都令人困惑。我想要的是按“input.txt”中的顺序将图像组装成视频文件。之前有人告诉我使用 concat demuxer,但是如何指定帧率?
那个人给我的命令是ffmpeg -f concat -i input.txt -vf format=yuv420p -movflags +faststart output.mp4
。由于我一直在没有-movflags +faststart
.
我为图像使用了完整路径,这不知何故导致了安全问题。我搜索了谷歌,发现我需要添加-safe 0
. 所以,我尝试ffmpeg -f concat -framerate 30 -safe 0 -i input.txt -vf output.mp4
了,但它导致:
未找到选项帧率。
为什么参数这么复杂?简而言之,我想做的是:
- “input.txt”
file 'full png path'
每行包含一个。 - 使用“input.txt”作为输入。
- 输出帧率为 30
- 输出文件名为“output.mp4”(视频格式为mp4)
- 除上述以外,使用默认设置
什么是正确的 ffmpeg 参数?
该
-framerate
选项特定于那些不存储帧速率的输入格式,例如原始流或图像序列。在您的情况下,您可以在过滤时重新定时帧。
ffmpeg -f concat -safe 0 -i input.txt -vf "settb=AVTB,setpts=N/30/TB,fps=30" output.mp4