我正在使用此命令将覆盖的图像从黑色背景滑到右侧。
ffmpeg -f lavfi -i color=color=black:d=15:size=1920x1080,format=rgba[background]; movie=pinkimage.png[overlay]; [background][overlay]overlay='min(n*5-0\,1920):(H-h)/2'" output.mp4
我理解是“n”参数的操作会影响转换的速度,但我不明白为什么或如何。我希望它的视频长度为 15 秒,此处设置为:“d = 15”。
那么,我怎样才能使叠加动画也花费 15 秒呢?
n
在表达式中指的是帧索引(从 0 开始)。min(n*5-0\,1920)
是 x 坐标的表达式。对于每一帧,都会计算此表达式,并将其结果用于覆盖帧左上角的 x 位置。该位置是从背景/基本框架的左上角开始测量的。min 函数返回其两个参数中的最小值。对于给定的表达式,您将每帧向右移动 5 个像素,从开始时的 x=0 开始。所以要移动 1920 像素,需要 1920/5 = 380 帧。对于 25 fps 的视频,这是 15.2 秒。要在 15 秒内到达,您可以设置如下表达式,
t*1920/15
。