2

我在这里有点困惑,无法找到以下问题的答案。是否可以.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
4

1 回答 1

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

两个徽标文件都被读入。一个覆盖在 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

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

于 2012-09-18T01:39:58.750 回答