使用 ffmpeg 在特定时间之间合并三个视频

使用 ffmpeg 在特定时间之间合并三个视频

我遇到的情况是想合并 3 个视频

第一个视频(guide.mp4)是指南,另外两个视频是需要放入“指南”中的小片段。

以图形方式,我有以下内容

|         .---1.mp4---.                            .-----2.mp4-----.    |
|---------+-----------+------------guide.mp4-------+--------------------|
0s        4s          9s                          18s             25s   28s

1.mp42.mp4涵盖这些时间之间的指南。视频大小相同,并且都是 .mp4 文件

我很确定这已经涵盖了,但我查了很多,但由于我自己的英语不好,我不知道如何才能成功查找它...

提前致谢。

答案1

可能只有一个命令可以完成所有这些操作,但是由于您要尝试修剪和合并剪辑,因此我能找到的最简单的方法是将过程分为三个部分。首先使用 ffmpeg 将指南剪辑修剪成 3 个部分,如下所示:

$ ffmpeg -i guide.mp4 -t 5 guide-out-1.mp4
$ ffmpeg -i guide.mp4 -ss 00:09 -t 9 guide-out-2.mp4
$ ffmpeg -i guide.mp4 -ss 00:25 -t 3 guide-out-3.mp4

然后为了合并剪辑,您需要创建一个名为 video-list.txt 的文本文件,如下所示:

$ cat video-list.txt
file 'guide-out-1.mp4'
file '1.mp4'
file 'guide-out-2.mp4'
file '2.mp4'
file 'guide-out-3.mp4'

最后再次使用 ffmpeg 将它们全部合并为一个剪辑:

$ ffmpeg -f concat -i video-list.txt -c copy new-guide.mp4

相关内容