![ffmpeg 为视频添加环绕声](https://linux22.com/image/1586121/ffmpeg%20%E4%B8%BA%E8%A7%86%E9%A2%91%E6%B7%BB%E5%8A%A0%E7%8E%AF%E7%BB%95%E5%A3%B0.png)
我正在尝试制作一个包含 8 声道音频的视频文件(不是环绕 7.1,而只是多声道)。
ffmpeg -i 视频.mp4 -i 音频.wav -c:v 复制 -map 0:0 -map 1:0 结果.mp4
video.mp4 是一个仅支持 h.264 视频的文件。audio.wav 是一个 8 通道 wav 文件。如果我将 audio.wav 文件导入 audacity,我会看到与预期一样的 8 个音频通道。如果我使用上面的 ffmpeg 命令将视频和音频组合在一起,我会得到一个具有 8 个音频通道的文件,正如我希望的那样,但通道 4 被更改为仅低频,就好像它是为低音炮制作的一样。我确实通过将结果文件中的音频导入 Audacity 来确认这一点,实际上通道 3 被更改为仅 LF。
我很确定有一种方法可以禁用此转换或任何其他转换,这样 ffmpeg 就可以简单地包装视频和音频而不进行任何更改。请告诉我需要调用哪些选项来停止 LF 过滤。谢谢,
答案1
只是想到了一个解决方法,而且似乎有效。
ffmpeg -i 视频.mp4 -i 音频.wav -c:v 复制 -map 0:0 -map 1:0 结果.mkv
是的,如果我指定结果具有“mkv”扩展名,音频不会改变,所有 8 个通道都保持原样。所以我在这里回答了我自己的问题,但我想知道是否有任何 ffmpeg 选项可以禁用 mp4 的 LFE 过滤。
谢谢,
答案2
Matroska 容器 (MKV) 的默认音频编码器 (vorbis) 有所不同。对于 MPEG AAC 编解码器,您需要设置没有 LFE 声道的声道布局,例如八边形。然而,这不是标准布局,因此某些 AAC 解码器会将其视为7.1
ffmpeg -i video.mp4 -i audio.wav -c:v copy -map 0:0 -map 1:0 -channel_layout octagonal result.mp4