将 5.1(或 7.1)声卡转换为 3(4)个不同的立体声输出

将 5.1(或 7.1)声卡转换为 3(4)个不同的立体声输出

我正在计划一套完整的房屋音响系统,但我没有很多钱。(我已经看过一些专业系统,但没有一个能满足我的要求,不过那是另一篇文章了)我希望你们这些有识之士能帮我找出是否可以配置 $(favorite_os) 以从 5.1 声道声卡输出 3 个(或 4 个)不同的立体声输出。

我意识到我可能最终不得不咬紧牙关,购买多张声卡才能获得我想要的输出;但我想先尝试探索这条途径。让我们面对现实吧,普通声卡能够有 6-8 个不同的声道​​,这可能只是说服操作系统中的音频系统按照我的意愿去做的问题。

好,出发!

答案1

我还没有这样做过,但我认为使用 Linux 发行版和 pulseaudio 应该可以。我不确定低音炮的情况 - 它可能有不同的阻抗,因此无法与普通扬声器很好地配合使用。

首先,我们需要知道可用的接收器的名称(接收器是可以输出声音的地方)。

pacmd list-sinks | grep name:

你应该有一个名字像alsa_output.pci-0000_02_00.1.surround51

现在我们需要知道频道的名称:

$ pacmd list-sinks | grep 'channel map:'
channel map: front-left,front-right,rear-left,rear-right,center,sub

(我编造了中心和子设备,因为我手边没有 5.1 机器 - 看看你的机器叫什么)。如果你有很多接收器,则将其通过管道传输到list-sinks其中less,并且很难从 grepped 输出中找出答案。

现在我们需要利用现有水槽的零件来制作新的水槽。

default.pa(/etc/pulse* 中) 我们创建新的接收器,并夺取一些输出:

load-module module-remap-sink sink_name=livingroom remix=no master=alsa_output.pci-0000_02_00.1.surround51 channels=2 master_channel_map=front-left,front-right channel_map=front-left,front-right
load-module module-remap-sink sink_name=bedroom remix=no master=alsa_output.pci-0000_02_00.1.surround51 channels=2 master_channel_map=rear-left,rear-right   channel_map=front-left,front-right
load-module module-remap-sink sink_name=funroom remix=no master=alsa_output.pci-0000_02_00.1.surround51 channels=2 master_channel_map=center,sub   channel_map=front-left,front-right

现在,任何支持 pulseaudio 的媒体播放器都应该可以使用这些新接收器来发送声音。同时?也许!

相关内容