创建一个透明图像的 GIF 向上滑动普通图像

kla*_*aus -1 ffmpeg

我一直习惯于ffmpeg创建简单的 GIF,从来没有在图像上叠加透明的 PNG。我怎么做?

小智 5

您可以使用overlay过滤器进行叠加。它会自动处理前景图像中的透明度。例子:

具有透明前景的动画 GIF

ffmpeg -loop 1 -i background.jpg -i foreground-with-transparent-regions.png -filter_complex "overlay=x=0:y=H-(H+h)*t/3" -t 3 output.gif
Run Code Online (Sandbox Code Playgroud)

-loop 1 使它重复图像,以便我们有一个持续时间,尽管使用单个图像。

overlay过滤器(具有添加filter_complex的语法这里)在(X,Y)位置放置前景图像,其中,x在这里常数(0),并且y是一个计算随着时间的推移与涉及的背景和前景的高度表达,以及作为当前t表达式中表示的时间(以秒为单位),以产生如上所示的向上滑动动画。

-t 定义输出的持续时间