如何将这两个命令组合到一个命令中?

时间:2018-05-23 10:29:14

标签: ffmpeg

我想要合并的2个ffmpeg命令。

此代码为输入视频添加了2个drawtext,一个在开始时,一个在结尾。

ffmpeg -i input.mp4 -vf "[in]drawtext=text='Stack Overflow': fontcolor=white: borderw=2: fontfile=Arial Black: fontsize=w*0.04: x=(w-text_w)-(w*0.04): y=(h-text_h)-(w*0.04): enable='between(t,0,6)', drawtext=text='Stack Overflow': fontcolor=white: borderw=2: fontfile=Arial Black: fontsize=w*0.04: x=(w-text_w)/2: y=(h-text_h)/2: enable='between(t,7,10)'[out]" -codec:a copy output2.mp4

此代码为视频添加了红色背景。我需要将红色背景应用于第二个drawtext,从7到10秒。

ffmpeg -i input.mp4 -f lavfi -i "color=red:s=1280x720:d=4" -filter_complex "overlay" output.mp4

如何将这两个命令合并为一个命令?

1 个答案:

答案 0 :(得分:1)

使用

ffmpeg -i input.mp4 -vf "drawtext=text='Stack Overflow': fontcolor=white: borderw=2: fontfile=Arial Black: fontsize=w*0.04: x=(w-text_w)-(w*0.04): y=(h-text_h)-(w*0.04): enable='between(t,0,6)', drawbox=c=red:t=fill:enable='between(t,7,10)',drawtext=text='Stack Overflow': fontcolor=white: borderw=2: fontfile=Arial Black: fontsize=w*0.04: x=(w-text_w)/2: y=(h-text_h)/2: enable='between(t,7,10)'" -c:a copy output2.mp4

我只是使用绘图框过滤器在给定时间范围内绘制红色视频,然后再绘制文本