我想将图像序列转换为gif,并且希望每个帧持续一定的时间,但是我找不到如何执行此操作的示例。
我知道此基本命令有效
ffmpeg -y -i %0d_Frame.jpg output.gif
但是如何让每个帧停留1秒钟?
答案 0 :(得分:0)
使用 ffmpeg 创建 gif 的关键管理帧延迟很简单:setpts
在我的代码中,我将 mp4 文件转换为 gif。
ffmpeg -y -i "input.mp4" -filter_complex "[0:v]fps=5,split[a][b];[b]palettegen[p];[a][p]paletteuse,setpts=0.5*PTS[v]" -map '[v]' "output.mp4"
使用 fps,我们选择了多少帧以及我们为 gif 使用的帧数
通过setpts,我们选择了帧之间的延迟。 0.5 将帧之间的延迟减少到原始文件 (input.mp4) 中的一半
答案 1 :(得分:-1)
答案很简单:
ffmpeg -framerate X -y -i %0d_Frame.jpg output.gif
命令的顺序很重要,我一直将-framerate
放在-y -i
之后,但这种方式行不通。