ffmpeg结合了2个过滤器(使用lavfi,-vf和-complex_filter)

时间:2015-11-18 08:37:31

标签: ffmpeg overlay

我有2个工作代码,但不能将它们合并(它们都是分开工作)。

ffmpeg -i video.mp4 -i audio.mp3 -shortest -t 8 -vf "lutrgb=r=1.5, crop:500:500" output.mp4

ffmpeg -i video.mp4 -f lavfi -i "color=Red:s=1280x720" 
-filter_complex "[0:v]setsar=sar=1/1[s];
[s][1:v]blend=shortest=1:all_mode=overlay:all_opacity=0.7[out]" 
-map [out] -map 0:a output.mp4

lutrgb将被替换,但颜色覆盖,所以我们可以删除它。 endresult将采用视频,音频,颜色叠加,将其裁剪为1:1和视频的持续时间长度。

由于 菲利克斯

1 个答案:

答案 0 :(得分:3)

ffmpeg -i video.mp4 -i audio.mp3 -f lavfi -i "color=Red:s=500x500" \
-filter_complex "[0:v]lutrgb=r=1.5,crop=500:500,setsar=sar=1/1[crop];\
[crop][2:v]blend=shortest=1:all_mode=overlay:all_opacity=0.7[out]" \
-map [out] -map 1:a -shortest output.mp4

使用三个输入:

  • video.mp4 - > 0
  • audio.mp3 - > 1
  • lavfi - > 2

链接过滤器:

  • 裁剪,设置等第一个输入中的视频流,并将其命名为[crop]

    [0:v]lutrgb=r=1.5,crop=320:240,setsar=sar=1/1[crop]

  • 将第三个输入的视频流与裁剪[out]

    混合

    [crop][2:v]blend=shortest=1:all_mode=overlay:all_opacity=0.7[out]

  • 最后使用out作为视频流和mp3轨道作为音频来映射输出

    -map [out] -map 1:a