我想使用 FFMPEG 转换视频,并在水印上添加多个文本。组合用于放置文本和水印的命令是:
ffmpeg -i input_1.mp4 -i watermark_small.png -filter_complex "[0]overlay=10:10; [1]drawtext=enable='between(t,0,12)':fontfile=font.ttf:text='Some text' : fontcolor=black: fontsize=18: box=1: boxcolor=yellow@0.5:boxborderw=5: x=(w-text_w)/1.15:y=30, drawtext=enable='between(t,14,22)':fontfile=font.ttf:text='Next text' : fontcolor=black: fontsize=18: box=1: boxcolor=yellow@0.5:boxborderw=5: x=(w-text_w)/1.15:y=30" -codec:v libx264 -preset ultrafast output1.mp4
不幸的是,此命令会输出水印和第一个文本,但不会显示下一个文本。我假设问题出在-filter_complex设置上。不幸的是,我不知道如何以正确的方式设置它以便工作。有人可以帮我说一下这个命令需要改变什么才能以正确的方式转换它吗?
答案 0 :(得分:2)
变化:
[0]overlay=10:10; [1]drawtext
要:
[0:v][1:v]overlay=10:10,drawtext
,
线性连接接受单个输入和/或输出的过滤器。这会创建一个过滤链。如果要加入过滤链,请使用;
。有关详细信息,请参阅FFmpeg Filters Documentation。