在一个命令中运行FFMPEG多个覆盖命令

时间:2016-04-25 15:38:36

标签: ffmpeg video-processing drawtext fluent-ffmpeg

我使用ffmpeg对一个视频进行更多操作
我想要做的操作是在差异时间,音频和图像中添加许多文本。 我可以做所有这些,但不是在一个命令中,单独执行

任何建议在一个命令中执行多个文本,叠加图像和音频

谢谢

1 个答案:

答案 0 :(得分:1)

要在一次执行中实现注释中提供的命令,请使用

ffmpeg –i input.mp4 –i img.png -i audio.mp4 -filter_complex \
       "[0:v][1:v]overlay=15 :15:enable=between(t,10,20), \
        drawtext=enable='between(t,12,3*60)': \
        fontfile=/usr/share/fonts/truetype/freefon‌​t/FreeSerif.ttf: text='Test Text'[v]" \
       -map "[v]" -map 2:a -acodec copy -qscale 4 -vcodec mpeg4 outvideo.mp4

要添加更多drawtext过滤器,请在第一个drawtext过滤器之后插入它们,例如

ffmpeg –i input.mp4 –i img.png -i audio.mp4 -filter_complex \
       "[0:v][1:v]overlay=15 :15:enable=between(t,10,20), \
        drawtext=enable='between(t,12,3*60)': \
        fontfile=/usr/share/fonts/truetype/freefon‌​t/FreeSerif.ttf: text='Test Text', \
        drawtext=enable='between(t,12,3*60)': \
        fontfile=/usr/share/fonts/truetype/freefon‌​t/FreeSerif.ttf: text='Text2'[v]" \
       -map "[v]" -map 2:a -acodec copy -qscale 4 -vcodec mpeg4 outvideo.mp4