我对 ffmpeg 完全是个新手(两天前我才知道它是什么)。
我从蓝光光盘中翻录了一个节目;剧集是双音频的,并且带有编码字幕。当我尝试增加特定音轨的音量时,字幕和剩余音轨会被删除!
如何在不影响其他音轨的情况下提高一个音轨的音量并保留字幕?
另外,因为只有几集,是否可以进行批量转换?
希望早日收到你的消息!
答案1
ffmpeg -i input.mkv -map 0 -map -0:a:1 -filter_complex "[0:a:1]volume=3[a]" -map "[a]" -c copy -c:a:1 aac output.mkv
-map 0
选择全部轨道(视频、音频、字幕、数据、附件),而不是使用默认选择行为只会选择每种类型的一个轨道。请参阅FFmpeg Wiki:地图欲了解更多信息-map
。-map -0:a:1
排除输入音轨 #2 的负向映射(请注意,音轨索引计数从 0 开始)。它将改为通过以下方式包含-filter_complex
。-filter_complex "[0:a:1]volume=3[a]"
用途体积过滤器在输入音轨 #2 上。命名输出[a]
(任意命名,您可以使用您喜欢的任何标签)。-map "[a]"
包括来自音量过滤器的音频。-c copy
流复制所有流。-c:a:1 aac
覆盖输出音轨 #2 的流复制并使用名为的编码器音频.因为你无法过滤和流复制相同的轨道:任何被过滤的轨道都必须重新编码。