首页 > 解决方案 > FFMPEG - 两个输入,反转第二个输入

问题描述

我有一个向下滚动页面的图像序列,我想将此序列作为输入添加两次,第一个序列向下滚动页面,然后我想反转第二个序列,看起来好像我们正在向上滚动页面等输出 gif 具有流畅的动画,并且在循环时不会快速回到页面顶部。

ffmpeg -f image2 -i ./tmp/frame-%03d.jpg -i ./tmp/frame-%03d.jpg -vf "[1:v]reverse,fps=25,scale=200:-1:flags=lanczos,split[s0][s1];[s0]palettegen[p];[s1][p]paletteuse" ./tmp/test.gif

还没有设法让它工作,但以上是我尝试过的,任何帮助都会很棒!

标签: ffmpegreversegif

解决方案


无需两次摄取图像序列。

您必须事先拆分帧并仅对其中一个副本应用反向,然后将它们连接在一起,然后再次拆分以生成和应用调色板。

ffmpeg -f image2 -i ./tmp/frame-%03d.jpg -vf "fps=25,scale=200:-1:flags=lanczos,split[s0][s1];[s1]reverse[s1];[s0][s1]concat=n=2:v=1:a=0,split[gif][pal];[pal]palettegen[p];[gif][p]paletteuse" ./tmp/test.gif


推荐阅读