Ubuntu 中的单声道声音输出?

32 audio linux mono ubuntu

是否有一种简单的方法可以强制输出单声道声音 - 一只耳朵,一只耳机,一个扬声器?

小智 34

~VIA~ 法语翻译(并考虑到论坛页面末尾的更正信号)

您可以使用该模块重新映射pulseaudio:

在终端中:

pacmd list-sinks | grep name:
Run Code Online (Sandbox Code Playgroud)

它会向您发送所用立体声输出的名称。然后输入(替换您找到的名称):

pacmd load-module module-remap-sink sink_name=mono master=THE_NAME_FROM_THE_PREVIOUS_COMMAND channels=2 channel_map=mono,mono
Run Code Online (Sandbox Code Playgroud)

(就我而言,那是:

pacmd load-module module-remap-sink sink_name=mono master=alsa_output.pci-0000_00_1e.2.analog-stereo channels=2 channel_map=mono,mono
Run Code Online (Sandbox Code Playgroud)

)

如果您打开声音首选项,您现在应该有一个可用的单声道输出。永久拥有它:

gksudo gedit /etc/pulse/default.pa
Run Code Online (Sandbox Code Playgroud)

然后你在文件中添加:

#Remapping output stereo to mono
load-module module-remap-sink sink_name=mono master=THE_NAME_FROM_THE_PREVIOUS_COMMAND channels=2 channel_map=mono,mono
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

(图片来自 Elementary OS Luna 的声音设置)。

  • 您如何更改新接收器的名称,以更改系统设置 - 声音 GUI 中的默认名称“重新映射的内置音频模拟立体声”? (2认同)

Red*_*yed 12

还有另一个解决方案。我喜欢命令行解决方案并使用它很长时间。

但我发现了很好的应用程序:PulseEffects,并且有一种方法可以使用良好的 GUI 应用程序制作单声道。

安装:

flatpak install com.github.wwmm.pulseeffects
如果你还没有flatpak(例如在 ubuntu 上),你可以安装它

配置

  1. 立体工具
  2. 立体声混音
  3. LR > L+R(单和 L+R)

在此输入图像描述


bru*_*ton 6

这个答案是两个答案的混合,不是通用的(声道名称“左”和“右”是由声卡供应商定义的,可能会有所不同)。

全球的想法是按照其他答案的建议使用module-remap-sink。我们将用稍后找到的值替换[skinID]、[left_channel_name] 和 [right_channel_name]

pacmd load-module module-remap-sink sink_name=combined-mono master=[skinID] channels=4 master_channel_map=[right_channel_name],[left_channel_name],[right_channel_name],[left_channel_name] channel_map=[left_channel_name],[left_channel_name],[right_channel_name],[right_channel_name]
Run Code Online (Sandbox Code Playgroud)

这将创建一个双单声道接收器输出,我们可以将其设置为默认输出(如下所示)。

1 - 找到 [skinID]

pacmd list-sinks
Run Code Online (Sandbox Code Playgroud)

就我而言,只有一个水槽;对应唯一可用的声卡:

index: 0
    name: <alsa_output.pci-0000_00_1f.3.analog-stereo>
Run Code Online (Sandbox Code Playgroud)

=> 我可以为 [skinID] 使用“0”或“alsa_output.pci-0000_00_1f.3.analog-stereo”

2 - 找到 [left_channel_name] 和 [right_channel_name]

pacmd list-sinks | grep -m1 "channel map:"
Run Code Online (Sandbox Code Playgroud)

就我而言,它给出:

channel map: front-left,front-right
Run Code Online (Sandbox Code Playgroud)

所以,对我来说 [left_channel_name] = "front-left" 和 [right_channel_name]="front-right"

3 - 应用更改

为了使更改生效,我将运行(就我而言)

pactl load-module module-remap-sink sink_name=combined-mono master=0 channels=4 master_channel_map=front-right,front-left,front-right,front-left channel_map=front-left,front-left,front-right,front-right
pactl set-default-sink combined-mono
Run Code Online (Sandbox Code Playgroud)

=> 第一个命令的参数是适应每种情况!阅读整个帖子了解详细信息

要验证,您可以播放此视频

4(可选)- 进行永久性更改

要保留此设置并在每次计算机启动时应用它们:

  • 复制/etc/pulse/default.pa=> ~/.pulse/default.pa (如果还没有完成)
  • 将两个命令添加到文件末尾,开头不带“pactl”

    => 就我而言,这给出了:

    load-module module-remap-sink sink_name=combined-mono master=0 channels=4 master_channel_map=front-right,front-left,front-right,front-left channel_map=front-left,front-left,front-right,front-right
    set-default-sink combined-mono
    
    Run Code Online (Sandbox Code Playgroud)