如何合并两个视频?

Ale*_*der 8 python video ffmpeg moviepy

我使用https://github.com/Zulko/moviepy 库将两个视频与 python 合并。它合并成功,但合并的.mp4 中不存在视频声音。

蟒蛇代码:

clip1 = VideoFileClip("2.mp4",audio=True)
clip2 = VideoFileClip("1.mp4",audio=True)
final_clip = concatenate_videoclips([clip1,clip2],method="compose")
final_clip.write_videofile("merged.mp4")
Run Code Online (Sandbox Code Playgroud)

我也试过 ffmpeg

ffmpeg -i 'concat:1.mp4|2.mp4' -codec copy merged.mp4
Run Code Online (Sandbox Code Playgroud)

ffmpeg 无法合并视频。它创建了只有 1.mp4 的 merge.mp4

如何使用 python 或其他方式合并两个视频?

Aja*_*rge 8

ffmpeg 官方

说明 创建一个 mylist.txt文件,其中包含您要按以下形式连接的所有文件(忽略以 # 开头的行):

file 'path/to/file1.wav'
file 'path/to/file2.wav'
file 'path/to/file3.wav'
Run Code Online (Sandbox Code Playgroud)

请注意,这些可以是相对或绝对路径。然后您可以流式复制或重新编码您的文件:

ffmpeg -f concat -safe 0 -i mylist.txt -c copy mergedfile.mp4
Run Code Online (Sandbox Code Playgroud)

如果路径是相对的,则不需要上面的 -safe 0。

它适用于各种视频格式 mp4、wiv ...