创建包含 5 幅图像的视频,并具有淡入/淡出、缩放平移和左/右滑动功能

创建包含 5 幅图像的视频,并具有淡入/淡出、缩放平移和左/右滑动功能

我必须制作一个包含 5 张不同图像的视频,每张图像时长 3 秒,顺序如下

  1. 消退
  2. 淡入
  3. 飞涨
  4. 向左滑动
  5. 向右滑动

我不了解滑动过滤命令并且缩放功能也无法正常工作。

我正在使用以下命令:

ffmpeg \
-loop 1 -t 3 -i img001.png \
-loop 1 -t 1 -i img002.png \
-loop 1 -t 3 -i img003.png \
-loop 1 -t 3 -i img004.png \
-loop 1 -t 3 -i img005.png \
-c:v libx264 \
-filter_complex \
"[0:v]fade=t=out:st=2.5:d=0.5[v0]; \
 [1:v]fade=t=in:st=0:d=0.5,fade=t=out:st=2.5:d=0.5[v1]; \
 [2:v]zoompan=z='zoom+0.001':d=10:s=1200x478[v2]; \
 [3:v]fade=t=in:st=0:d=0.5,fade=t=out:st=2.5:d=0.5[v3]; \
 [4:v]fade=t=in:st=0:d=0.5,fade=t=out:st=2.5:d=0.5[v4]; \
 [v0][v1][v2][v3][v4]concat=n=5:v=1:a=0,format=yuv420p[v]" -map "[v]" out.mp4

答案1

对于幻灯片,您需要动态叠加,因此更改为

-loop 1 -t 3 -i img002.png \
-loop 1 -t 9 -i img003.png \
-loop 1 -t 9 -i img004.png \
-loop 1 -t 9 -i img005.png \

 [2:v]zoompan=z='zoom+0.001':d=75:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)':s=1200x478[v2];
 [v2][3:v]overlay='max(W*(7-2*t)\,0)':(H-h)/2[v3]; \
 [v3][4:v]overlay='min(W*(2*t-14)\,0)':(H-h)/2[v4]; \
 [v0][v1][v4]concat=n=3:v=1:a=0,format=yuv420p[v]" -map "[v]" out.mp4

从 3 秒开始,覆盖层以3:v半秒为单位从右侧滑入图像。

从 6 秒开始,覆盖层4:v以半秒为单位从左侧滑入图像。

(我删除了第 4 和第 5 张图片的淡入淡出效果)

相关内容