You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用FFMPEG单独放大MKV视频中的ENG英语音轨音量

问题原因

你之前的两个命令失效是因为FFmpeg的默认流选择规则:多音轨输入时默认仅提取**第一条(索引为0)**音轨输出,你没主动指定要保留英语音轨的情况下,音轨索引为1的英语内容直接被丢弃了。

  • 第一个命令ffmpeg -i input.mkv -filter:a "volume=2.0" output.mkv:仅给默认保留的意大利语音轨加了音量放大,英语音轨直接没进输出文件。
  • 第二个尝试的命令ffmpeg -i input.mkv -filter:a:1 "volume=2.0" output-vol2x.mkv:虽然给索引1的英语音轨加了滤镜,但依然没指定要输出这条音轨,输出还是只有默认的意大利语音轨。

正确可用命令

场景1:仅保留放大后的英语音轨(可删除意大利语,符合你的核心需求)

ffmpeg -i input.mkv -map 0:v -map 0:a:1 -filter:a "volume=2.0" -c:v copy output.mkv

参数说明:

  • -map 0:v:提取输入文件的所有视频流,避免视频内容丢失
  • -map 0:a:1:仅提取输入文件里索引为1的英语音轨(FFmpeg音轨索引从0开始计数,你的文件中0对应意大利语、1对应英语)
  • -c:v copy:视频流直接原封不动复制,不需要重新编码,速度快且无画质损失
  • -filter:a "volume=2.0":给输出的唯一英语音轨音量翻倍

场景2:保留两条音轨,仅放大英语音轨音量

如果后续还需要用到意大利语音轨,可以用这个命令:

ffmpeg -i input.mkv -map 0:v -map 0:a:0 -map 0:a:1 -filter:a:1 "volume=2.0" -c:v copy -c:a:0 copy output.mkv

参数说明:

  • 同时保留两条音轨,输出文件默认第一条还是意大利语、第二条是放大后的英语,播放时可手动切换
  • 意大利语音轨直接原封不动复制,仅给英语音轨加音量放大滤镜

额外验证技巧

如果不确定音轨索引是否正确,可以先执行ffmpeg -i input.mkv查看输入文件的流信息,找到标注ENG的Audio行对应的流索引,替换上面命令里-map 0:a:1的数字即可。

内容的提问来源于stack exchange,提问作者user227495

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 08:15:04