我可以使用以下命令成功加入多个文件:
ffmpeg -f concat -i input.txt -codec copy output.mp4
此命令的唯一问题是,您需要从文本文件中读取具有以下内容的文件路径:input.txt:
file 'C:\Users\fabio\Downloads\Super\Sharks\01.mp4'
file 'C:\Users\fabio\Downloads\Super\Sharks\02.mp4'
file 'C:\Users\fabio\Downloads\Super\Sharks\03.mp4'
有没有一种方法可以实现相同的目标而不必从文件中读取文件路径?我没有运气就尝试了以下方法:
ffmpeg -f concat -i file "C:\a\b\01.mp4" file "C:\a\b\02.mp4" -codec copy output.mp4
ffmpeg -f concat -i "C:\a\b\01.mp4" "C:\a\b\02.mp4" -codec copy output.mp4
我必须使用其他命令吗?
如评论中所述,Stack Overflow很好地描述了可用于串联的选项,并讨论了根据所使用文件的类型使用哪种方法:
您应该能够使用concat协议方法来组合文件:
ffmpeg -i "concat:input1.mp4|input2.mp4|input3.mp4" -c copy output.mp4
此外,FFmpeg手册讨论了一种专门用于MP4文件的方法,以无损地连接它们,但要求您创建临时文件(或命名管道):
ffmpeg -i input1.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate1.ts
ffmpeg -i input2.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts intermediate2.ts
ffmpeg -i "concat:intermediate1.ts|intermediate2.ts" -c copy -bsf:a aac_adtstoasc output.mp4
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句