有一个名为input.txt的文件
file '/home/1.flv'
file '/home/2.flv'
Run Code Online (Sandbox Code Playgroud)
我可以使用命令将1.flv和2.flv连接成mp4文件.
# there are two files in output.mp4
ffmpeg -f concat -i input.txt -c copy output.mp4
Run Code Online (Sandbox Code Playgroud)
当我使用以下命令
ffmpeg -i "concat:1.flv|2.flv" -c copy output.mp4
Run Code Online (Sandbox Code Playgroud)
我发现只有一个文件1.flv中output.mp4,为什么呢?
我发现只有一个文件
1.flv中output.mp4.为什么?
您的第一个命令使用concat分路器.如果要避免重新编码以及输入不支持文件级别连接,可以使用此方法.使用分路器要求所有文件必须具有相同的流(相同的格式,相同的时基等),但是相对较新的添加,因此较旧的ffmpeg构建将不具有此功能.
您的第二个命令使用需要输入的concat协议来支持文件级别级联(例如MPEG-1视频,MPEG-2视频和DV).这是连接(或"连接")的两种不同方法,因为它通常由用户调用.
另请参阅如何在FFmpeg Wiki上连接(加入,合并)媒体文件.我看到你也在ffmpeg-user上问这个,其他人也提供了答案:[FFmpeg-user]无法连接flv文件.