如何将MKV电影5.1音轨转换为2.0(立体声)但保留原始音轨

时间:2018-04-08 13:12:16

标签: audio video ffmpeg mkv

为了解决5.1电影真正对话的问题,我使用FFMPEG将我的MKV电影的每个音轨转换为带有音频规范化的2.0音轨,让视频和字幕保持完整。

这是命令的样子:

for /r %%i in (*.mkv) do (
    @ffmpeg.exe -hide_banner -v 32 -stats -y -i "%%i" -map 0:v -map 0:a -map 0:s? -c:s copy -c:v copy -acodec ac3 -ac 2 -ar 48000 -ab 640k -af %aproc2%  -f matroska "%%~ni [Stereo].mkv"
)

我现在要做的是将这些已转换的音轨添加到到5.1轨道中的MKV,而不是替换原作,这是我将来可能想要的。

我不是FFMPEG的专家,所以我正在寻求帮助。

1 个答案:

答案 0 :(得分:1)

使用

for /r %%i in (*.mkv) do (
    @ffmpeg.exe -hide_banner -v 32 -stats -y -i "%%i" -map 0:v -map 0:a -map 0:a -map 0:s? -c:s copy -c:v copy -c:a:0 ac3 -ac:a:0 2 -ar:a:0 48000 -ab:a:0 640k -filter:a:0 %aproc2% -c:a:1 copy -f matroska "%%~ni [Stereo].mkv"
)

音频被映射两次。所有音频选项都附有输出流说明符,因此它们仅适用于第一个音频输出,第二个音频输出的编解码器设置为复制。

对于具有多个曲目的输入,您需要多个命令

for /r %%i in (*.mkv) do (
    @ffmpeg.exe -hide_banner -v 32 -stats -y -i "%%i" -map 0:a -c:a ac3 -ac 2 -ar 48000 -ab 640k -filter:a %aproc2% -f matroska "%%~dpni [Stereo].mka"
    @ffmpeg.exe -hide_banner -v 32 -stats -y -i "%%i" -i "%%~dpni [Stereo].mka" -map 0:v -map 0:a -map 1:a -map 0:s? -c copy -f matroska "%%~ni [Stereo].mkv"
)