FFMPEG:向以前的 amix 输出添加更多轨道

Posted

技术标签:

【中文标题】FFMPEG:向以前的 amix 输出添加更多轨道【英文标题】:FFMPEG: add more tracks to previous amix output 【发布时间】:2020-04-12 16:10:38 【问题描述】:

我可以在 ffmpeg 中使用类似的命令混合多个音轨

ffmpeg -i track1.wav \
       -i track2.wav \
       -i track3.wav \
       -filter_complex "[0:a] [1:a] [2:a] amix=3 [out]" \
       -map "[out]" \
       -c copy mix.wav

在我的用例中,所有轨道的长度都相同。我会定期收到一首新曲目(称为track4.wav),我想制作所有四首曲目的新混音。天真的解决方案是使用附加轨道重新运行上述注释,但随着轨道数量的增加,这会变得昂贵。

与“幼稚”的方法相比,是否有一种优雅的方法可以将 mix.wavtrack4.wav 组合起来以获得相同的结果,而不会出现音量不平衡或质量明显下降的情况?

【问题讨论】:

【参考方案1】:

只要您保存为 PCM/WAV,就没有质量损失可言。

使用最新版本的 ffmpeg,您可以运行

ffmpeg -i mixof3.wav \
       -i track4.wav \
       -filter_complex "[0:a] [1:a] amix=2:weights='3 1' [out]" \
       -map "[out]" \
       mixof4.wav

这相当于使用 4 个输入运行原始命令。

【讨论】:

经过大量测试,我可以确认这是一种享受!

以上是关于FFMPEG:向以前的 amix 输出添加更多轨道的主要内容,如果未能解决你的问题,请参考以下文章

是否可以使用带有 ffmpeg 的字幕轨道提取视频轨道中的对话?

使用 ffmpeg 禁用默认字幕轨道

我有一部带有4K(HEVC Main 10 HDR)视频和DTS-HD MA 7.1音频的电影,我希望保持视频和音频的原样,但要在EAC3或必要时在AC3中添加第二音频轨道立体声

视频引擎无法为视频轨道创建缩略图

使用PowerShell和FFMPEG将音频和字幕源条带化并添加到INDEX.M3U8

ffmpeg文档04-流的选择(指定)