我有一个杜比数字(ac3)文件,我可以像这样逐个提取频道:
-map_channel 0.0.4 -channel_layout mono -sn -b:a 128k -ac 1
例如,这将提取左后声道。
我想从前三个声道(前置、中置、右声道)发出良好的立体声,而无需后置声道 - 我将通过另一个放大器播放它们。我的想法是将部分/全部中置声道复制到立体声输出的左/右声道上?
我无法一次性将 5.1 降采样到 2,因为我不想让后置左/右声道渗入前置声道。如果有帮助的话,我想要三个前置声道的立体声输出。
这是 ac3 频道布局:
0 FRONT_LEFT
1 FRONT_RIGHT
2 FRONT_CENTER
3 LOW_FREQUENCY
4 BACK_LEFT
5 BACK_RIGHT
帮助是大大非常感谢。谢谢!
答案1
使用平底锅过滤器:
ffmpeg -i input -filter_complex "pan=stereo|FL<FL+0.5*FC|FR<FR+0.5*FC[a]" -map 0:v? -map "[a]" -c:v copy output
移除或调整 FC 乘数至所需水平。
如示例所示,使用
>
而不是,将调整要重新归一化的增益,使得总数为 1,从而避免削波噪声。=
另请参阅FFmpeg Wiki:音频通道操作。