ffmpeg -i video1.avi -i video2.avi -filter complex“ [0:v:0] [0:a:0] [1:v:0] [1:a:0] concat = n = 2:v = 1:a = 1 [v] [a]” -map“ [v]” -map“ [a]” output_video.avi
video1.avi --->此视频没有音频流,只有视频流 video2.avi --->具有视频和音频流
[错误]
过滤器描述中的流说明符':a:0'[0:v] [0:a:0] [1:v] [1:a:0] concat = n = 2:v = 1:a = 1 [v] [a]没有匹配的流。
如何连接这两个视频?
使用以下命令,可以集中这两个视频,但是输出的视频没有音频,如何解决这个问题?
ffmpeg.exe -i video1.avi -y 1.ts
ffmpeg.exe -i video2.avi -y 2.ts
ffmpeg.exe -i concat:1.ts | 2.ts -f output.mp4
答案 0 :(得分:1)
我使用Laravel,此代码对我有用:
无音频:
exec("ffmpeg -i " . $URLVIDEO1 . " -i " . $URLVIDEO2 . " -filter_complex \"[0:v:0] [1:v:0] concat=n=2:v=1 [v]\" -map \"[v]\" " . $URLVIDEOFINAL);
带有音频:
exec("ffmpeg -i " . $URLVIDEO1 . " -i " . $URLVIDEO2 . " -filter_complex \"[0:v:0] [0:a:0] [1:v:0] [1:a:0] concat=n=2:v=1:a=1 [v] [a]\" -map \"[v]\" -map \"[a]\" " . $URLVIDEOFINAL);
很显然,原始变量没有这样命名。希望我能帮到你