FFMPEG - 徽标水印中的淡入淡出,与视频和字幕中的淡入淡出无关



我在使用 FFmpeg 版本的 Windows 7 盒子上:20170223-dcd3418,并希望控制我的徽标水印的淡入淡出时间,而与视频中已经内置的淡入淡出无关。

这段代码工作正常,但我无法弄清楚如何在不褪色我的输入视频流的情况下淡化水印。

ffmpeg -y -i mainvideo.mp4 -i watermarklogo.png -filter_complex "[0:v]overlay=W-w-10:H-h-10, fade=in:0:20[tmp_overlay]; [tmp_overlay]subtitles=ep1.srt[out]" -map [out] -map 0:a -codec:v libx264 -crf 18 -preset slow -pix_fmt yuv420p -c:a aac -strict -2 output.mp4

我已经尝试了许多组合,但对 FFMPEG 的 -filter_complex 命令超出了我的深度,因此任何帮助将不胜感激。如果我能提供更多信息,请告诉我。

使用

ffmpeg -y -i mainvideo.mp4 -loop 1 -t 2 -i watermarklogo.png 
-filter_complex
"[1]fade=0:1:alpha=1,setpts=PTS+N/TB[wm];
[0:v][wm]overlay=W-w-10:H-h-10,fade=in:0:20,subtitles=ep1.srt[out]"
-map [out] -map 0:a -c:v libx264 -crf 18 -preset slow -c:a aac output.mp4

0:1设置 1 秒淡入。

PTS+N/TB中的N设置淡入的开始时间(以秒为单位)。

通常,应该能够跳过-t 2,只在叠加过滤器中使用shortest=1。但是,在撰写本文时,有一个最短过滤器的错误,因此需要此解决方法。只需确保t值大于淡入淡出持续时间即可。

最新更新