我改编了Gyan 的以下交叉淡入淡出,从图像和音频文件创建视频,然后用结尾交叉淡入淡出。这很好用,但我也想让第一个视频流淡入。
fade
由于我无法理解的原因,使用过滤器来执行此操作只会使整个流变黑:
ffmpeg -i "image.jpg" -i "audio.flac" -i "outro.mp4" \
-movflags faststart \
-filter_complex \
"color=black:1384x1080:d=186.367[base]; \
[0:v]fade=in:st=0:d=2,scale=1384:1080,setpts=PTS-STARTPTS[v0]; \
[2:v]format=yuva420p,fade=in:st=0:d=2:alpha=1,setpts=PTS-STARTPTS+((168)/TB)[v1]; \
[base][v0]overlay[tmp]; \
[tmp][v1]overlay,format=yuv420p[fv]; \
[1:a][2:a]acrossfade=d=2[fa]" \
-map [fv] -map [fa] -map -0:v:1 -c:v libx264 -c:a libopus -shortest "track1.mp4"
这可能吗?
图像输入被视为由一帧组成的视频流。要执行淡入淡出,您需要多个帧,至少与淡入淡出的持续时间一样长。
对于 2 秒的淡入,更改
至