我有3张1920x1080的视频。它们都是相同的长度/编解码器。我想把它们组合起来(不连接),结果就是一个5760x1080的视频。
有人可以向我解释如何在ffmpeg(或其他免费应用程序)中执行此操作吗?
谢谢!
答案 0 :(得分:2)
供将来参考 - 这些类型的非编程问题应该在superuser.com上进行 - 而不是在这里。
回答你的问题:
据我所知,在FFmpeg中执行此操作的唯一方法是重新编码文件(所有视频过滤器都需要指定音频/视频编解码器,并禁用流复制)
只要这不是您的问题,请按照以下步骤操作:
ffmpeg -i [input1] -i [input2] -i [input3] -filter_complex "[0:v]pad=width=5760:height=1080:x=0:y=0[p];[p][1:v]overlay=shortest=1:x=1920:y=0[p2];[p2][2:v]overlay=shortest=1:x=3840:y=0[full]" -map [full] .... [OUTPUT]
您希望将....
区域替换为您想要使用的编解码器以及任何其他转码选项。
稍微打破一下:你正在拿你的第一个输入文件并用黑色填充它到5760x1080。然后你将获取第二个文件并从坐标1920x0开始覆盖它。最后,您将第三个文件添加为坐标3840x0处的叠加层。