ffmpeg 无需重新编码视频即可将音频(wav)添加到视频(mp4)

ffmpeg 无需重新编码视频即可将音频(wav)添加到视频(mp4)

我只是想知道如何添加音频,同时保持视频上预先存在的音频不变:我做了一些研究,似乎这里有一个类似的问题:

使用 ffmpeg 将音频添加到视频

因此,我正在考虑使用取自 slhck 的这段代码段:

ffmpeg -i input.mp4 -i input.wav -c:v copy -map 0:v:0 -map 0:a:0 -map 1:a:0 -c:a:0 copy -c:a:1 aac -b:a 192k output.mp4

正如 slhck 所说,音频编解码器 wav 与 mp4 不兼容,因此必须重新编码,但我只是想确保视频不会被重新编码,我认为这种情况正在发生,因为 ffmpeg 正在以 200 倍的速度执行该过程。

编辑:唯一的问题是存在两个不同的音频流,我在想是否可以有一个组合音频流(将两者混合在一起)。

编辑:在一位非常慷慨的 reddit 用户的帮助下,我成功地通过 amix-filter 将两个流合并为一个。现在它起作用了!

ffmpeg -i input.mp4 -i input.wav -filter_complex [0:a:0][1:a:0]amix=inputs=2:duration=longest[aout] -c:v copy -map 0:v:0 -map [aout] -c:a aac -b:a 192k output.mp4

答案1

在一位慷慨的 reddit 用户的帮助下,我成功地通过 amix-filter 将两个流合并为一个。现在它可以正常工作了!

ffmpeg -i input.mp4 -i input.wav -filter_complex [0:a:0][1:a:0]amix=inputs=2:duration=longest[aout] -c:v copy -map 0:v:0 -map [aout] -c:a aac -b:a 192k output.mp4

相关内容