0

我正在尝试为视频添加 2 个水印,一个应该是 .png 文件,第二个应该是移动/滚动文本。

Png = 固定在右下角

文本 = 从右上角移动/滚动到左上角。从总视频长度的 50% 开始(如果总长度为 2:00,则在 1:00 出现)并在 20 秒内消失。

我已经使用命令对视频进行编码并在右下角添加徽标,但同时添加滚动文本时遇到问题。

-i logo.png -filter_complex "overlay=main_w-overlay_w:main_h-overlay_h-4" -keyint_min 20 -vcodec libx264 -c:a copy -b:v 1500k -movflags +faststart
4

1 回答 1

2

您需要连接覆盖和drawtext过滤器:

ffmpeg -i input.mp4 -i logo.png -filter_complex "[0:v][1:v] overlay=x=(main_w-overlay_w):y=(main_h-overlay_h),drawtext=text=string1:y=line_h-10:x='if(gte(t,30),w-(t-30)*w/20,w)'" -c:a copy output.mp4

在这个例子中,视频持续了 60 秒,所以我在 if 块中设置了 30 秒。如果您需要自动化视频长度,我建议您使用 bash 脚本(使用 ffprobe 获取持续时间)。您还可以自定义字体(颜色、大小...),在属性之间添加冒号。更多信息:

于 2020-05-18T16:08:21.343 回答