问题描述
ffmpeg -i foo.mp4 -filter_complex "fade=d=0.5,reverse,fade=d=0.5,reverse" output.mp4
可用于淡入和淡出foo.mp4视频。 (我们不在乎音频)。根据{{3}}
这很好,但仅适用于1个输入视频和1个输出的简单情况。现在,如何在以下更复杂的情况下应用淡入和淡出效果?我正在尝试将a.jpg
与bar.mp4
连接起来。我只希望bar.mp4部分淡入淡出。
ffmpeg -loop 1 -t 2 -framerate 1 -i a.jpg -f lavfi -t 2 -i anullsrc -r 24 -i bar.mp4 -filter_complex "[0][1][2:v][2:a] concat=n=2:v=1:a=1 [vpre][a];[vpre]fps=24[v]" -map "[v]" -map "[a]" out.mp4 -y
当然,我可以先通过运行第一个命令从bar.mp4创建一个临时temp.mp4
,然后在第二个命令中输入temp.mp4
。这涉及额外的步骤和额外的编码。任何人都可以帮助修复命令或提出更好的建议吗?
解决方法
使用
ffmpeg -loop 1 -t 2 -framerate 24 -i a.jpg -f lavfi -t 2 -i anullsrc -r 24 -i bar.mp4 -filter_complex "[2:v]fade=d=0.5,reverse,fade=d=0.5,reverse[v2];[0][1][v2][2:a] concat=n=2:v=1:a=1 [v][a]" -map "[v]" -map "[a]" out.mp4 -y