Ffmpeg水印多个图像

r3z*_*zfr 2 overlay watermark ffmpeg

我在这里有点困惑,无法找到以下问题的答案.是否可以.png在一个命令行中将2个文件加水印到视频中Libavfilter

我正在使用这个命令行,但我尝试获取第二个PNG图像的所有内容都失败了.

ffmpeg –i inputvideo.avi -vf "movie=watermarklogo.png [watermark]; [in][watermark] overlay=main_w-overlay_w-10:10 [out]" outputvideo.flv
Run Code Online (Sandbox Code Playgroud)

bla*_*lah 7

这当然是可能的,应该看起来像:

ffmpeg –i in.avi -vf "movie=logo1.png [logo1]; movie=logo2.png [logo2]; \
[in][logo1] overlay [tmp]; [tmp][logo2] overlay=50:50" out.flv
Run Code Online (Sandbox Code Playgroud)

两个徽标文件都被读入.一个重叠在0,0.然后在第一个覆盖滤波器的输出上将下一个覆盖在50,50处.

使用更新版本的FFmpeg,这个命令可以稍微简单地完成,如下所示:

ffmpeg -i in.avi -i logo1.png -i logo2.png -filter_complex "overlay [tmp]; \
[tmp] overlay=50:50" out.flv
Run Code Online (Sandbox Code Playgroud)

第一个叠加命令覆盖前两个输入(in.avi和logo1.png),第二个叠加命令自动使用第三个输入(logo2.png)作为其第二个输入.