ffmpeg结合了两个命令compress和watermark

时间:2019-03-13 12:43:48

标签: linux ffmpeg

我正在尝试通过ffmpeg压缩视频并在视频上添加水印,每个命令都很好用

ffmpeg -i vid.mp4 -s 480x320 -acodec aac -strict -2 -ac 1 -ar 16000 -r 13 -ab 32000 -aspect 3:2 output.mp4

并且:

ffmpeg -i vid.mp4 -i logo.png -filter_complex "hflip[flipped];[flipped]overlay=x=20:y=20" -strict -2 out.mp4

但是我想同时执行这两个命令,我尝试过:

ffmpeg -i vid.mp4 -s 480x320 -acodec aac -strict -2 -ac 1 -ar 16000 -r 13 -ab 32000 -aspect 3:2 && -i logo.png -filter_complex "hflip[flipped];[flipped]overlay=x=20:y=20" -strict -2 output.mp4

我使用了&&|,,但是这些都没有按预期工作,有什么解决办法吗?

  

顺序很重要,应该先压缩视频,然后加水   标记。

1 个答案:

答案 0 :(得分:1)

&&可用于将命令链接在一起以执行第二个命令(如果第一个成功)。您可以照原样使用这两个命令,并在它们之间放置&&

ffmpeg -i vid.mp4 \
    -s 480x320 -acodec aac -strict -2 -ac 1 -ar 16000 -r 13 -ab 32000 -aspect 3:2 output.mp4 \
&& ffmpeg -i vid.mp4 -i logo.png -filter_complex "hflip[flipped];[flipped]overlay=x=20:y=20" \
    -strict -2 out.mp4

但是ffmpeg应该支持通过一次调用完成这两个步骤(我没有对此进行测试):

ffmpeg -i vid.mp4 -i logo.png \
    -filter_complex "hflip[flipped];[flipped]overlay=x=20:y=20" \
    -s 480x320 -acodec aac -strict -2 -ac 1 -ar 16000 -r 13 -ab 32000 -aspect 3:2 \
    -strict -2 out.mp4