使用ffmpeg合并两个文件时获取异常

时间:2018-02-28 05:02:01

标签: ffmpeg video-editing

我正在尝试使用ffmpeg命令合并两个mp4文件。我的输入文件不是相同的编码,因此它们不与普通命令合并。我使用下面的命令,但得到了例外。 命令: -

ffmpeg -i File_1.mp4 -i File_2.mp4 -filter_complex "[0:v]setsar=1[0v];[1:v]scale=720:576:force_original_aspect_ratio=decrease,setsar=1,pad=720:576:(ow-iw)/2:(oh-ih)/2[1v];[0v][0:a][1v][1:a]concat=n=2:v=1:a=1[outv][outa]" -map "[outv]" -map "[outa]" -c:v libx264 -crf 23 ffmpeg1.mp4

我有例外: -

[Parsed_concat_4 @ 00000000067ea380] Input link in1:v0 parameters (size 720x576, SAR 1:1) do not match the corresponding
output link in0:v0 parameters (320x240, SAR 1:1)
[Parsed_concat_4 @ 00000000067ea380] Failed to configure output pad on 
Parsed_concat_4
Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument
Error while processing the decoded data for stream #1:0
Conversion failed!

请告诉我这个或任何命令的解决方案是什么,可以帮助我在Windows中使用cmd合并任意两个mp4文件。

1 个答案:

答案 0 :(得分:1)

concat过滤器要求其所有视频输入具有相同的分辨率和样本宽高比。帧速率和像素格式可能不同,但输出可能不是您想要的。

因此,在此命令中,更改第一个视频输入的过滤以匹配第二个。

ffmpeg -i File_1.mp4 -i File_2.mp4 -filter_complex "[0:v]scale=720:576:force_original_aspect_ratio=decrease,setsar=1,pad=720:576:(ow-iw)/2:(oh-ih)/2[0v];[1:v]scale=720:576:force_original_aspect_ratio=decrease,setsar=1,pad=720:576:(ow-iw)/2:(oh-ih)/2[1v];[0v][0:a][1v][1:a]concat=n=2:v=1:a=1[outv][outa]" -map "[outv]" -map "[outa]" -c:v libx264 -crf 23 ffmpeg1.mp4