ffmpeg:多个视频过滤器订单问题

时间:2018-01-28 23:03:30

标签: video ffmpeg video-encoding

我的ffmpeg视频过滤器有问题。我无法使用两个过滤器:缩放功能和徽标添加。我读到的是-filter_complex而不是-vf,但有人也用-vf来实现。我尝试使用逗号,但目前它可以读取最多一个过滤器,否则它会给我一个错误。

ffmpeg -y -i $name -c:a aac -b:a 256k -ar 48000 -ac 2 -async 1 -c:v libx264 -x264opts keyint=$GOP:min-keyint=$GOP:no-scenecut -bf 0 -r $FPSC -b:v 1060k -maxrate 1060k -bufsize 530k -profile:v main -t $FDUR -vf "movie=logo480.png [watermark]; [in][watermark] overlay=main_w-overlay_w-10:10 [out], scale=-1:478" format480.mp4

1 个答案:

答案 0 :(得分:0)

试试这个:

ffmpeg -y -i $name -i logo480.png -c:a aac -b:a 256k -ar 48000 -ac 2 -async 1 -c:v libx264 -x264opts keyint=$GOP:min-keyint=$GOP:no-scenecut -bf 0 -r $FPSC -b:v 1060k -maxrate 1060k -bufsize 530k -profile:v main -t $FDUR -filter_complex "[0:v][1:v]overlay=main_w-overlay_w-10:10,scale=-2:478" format480.mp4
  • -vf仅用于简单过滤器(具有一个输入和一个输出的过滤器)。

  • -filter_complex用于复杂过滤器(具有一个或多个输入和/或输出的过滤器)。 -filter_complex也可以与简单过滤器一起使用。基本上,您可以忽略-vf

  • 线性过滤器流程可以用逗号链接在一起。

  • 我将scale=-1:478更改为scale=-2:478,因此生成的宽度可以被2整除。这是为了避免"不能被2"错误。您没有提供错误,因此我不确定您是否遇到错误。