首页 > 解决方案 > 为“拆分”过滤器指定的输入过多

问题描述

我只是尝试拼接 2 个文件并尝试并行获取多个输出:

ffmpeg -i 1.mp4 -i 2.mp4 -filter_complex "[0:v:0] [0:a:0] [1:v:0] [1:a:0] concat=n=2:v=1:a=1, split=2[out1][out2]" -map '[out1]' -preset ultrafast -vn -b:a 128k -c:a aac  tes45.mp4 -map '[out2]' -preset ultrafast -vn -b:a 128k -c:a aac  tes46.mp4

但它没有用:

Too many inputs specified for the "split" filter.
Error initializing complex filters.
Invalid argument

标签: ffmpegsplit

解决方案


(a) split只接受一个输入,但您试图为其提供多个输入,并且您只是映射视频,但随后将其排除在-vn.

ffmpeg -i 1.mp4 -i 2.mp4 -filter_complex "[0:v:0][0:a:0][1:v:0][1:a:0]concat=n=2:v=1:a=1[v][a];[v]split=2[v1][v2];[a]asplit=2[a1][a2]" -map "[v1]" -map "[a1]" -preset ultrafast -b:a 128k -c:a aac tes45.mp4 -map "[v2]" -map "[a2]" -preset ultrafast -b:a 128k -c:a aac tes46.mp4

因为看起来您使用tee muxer对两个输出使用相同的编码设置将是一个更好的选择。


推荐阅读