ffmpeg分离左右声道到多音轨

早期的视频文件将多语言放在了左右声道,手机上播放时,很多播放器并没有切换声道的功能,所以需要做分离

导出单声道视频

ffmpeg -i 01.rmvb -c:v h264 -af pan="stereo| c0=FR | c1=FR" -acodec aac 01.mp4

这里的FR是右声道,如果需要左声道,则改成FL。但这个丢了一个声道数据,并不完美

导出为多音轨

ffmpeg -i 01.rmvb -map 0:0  -map 0:1 -map_channel 0.1.1:0.1 -map 0:1  -map_channel 0.1.0:0.2 -c:v h264 -c:a:0 aac  -b:a:0 128k  -c:a:1 aac  -b:a:1 128k  01.mkv

这里将右声道放到了第一音轨,如果需要放左声道放到第一音轨,则调换两个-map_channel后的参数即可。

如果需要处理多个文件,可以做成批处理

for %%G in (*.rmvb) do ffmpeg -i "%%~G"  -map 0:0  -map 0:1 -map_channel 0.1.1:0.1 -map 0:1  -map_channel 0.1.0:0.2 -c:v h264 -c:a:0 aac  -b:a:0 64k  -c:a:1 aac  -b:a:1 64k "%%~nG.mkv"

你可能感兴趣的:(ffmpeg)