强制耳机麦克风作为默认麦克风

强制耳机麦克风作为默认麦克风

有什么方法可以强制 Debian 上的pulseaudio 使用耳机麦克风选项作为麦克风而不是内部麦克风吗?即使未插入麦克风,您也可以手动将麦克风设置为“耳机麦克风” pavucontrol。由于某种原因,耳机麦克风不会自动切换,并且由于永远不会使用内部麦克风,因此我不需要脉冲音频来切换到任何内容,只需留在耳机麦克风上即可。

我确实找到了一个允许麦克风自动切换的修复程序,但是每当您插入任何音频设备时,它都会发出令人讨厌的流行声,这不是我想要的。

既然您可以手动将麦克风输入设置为耳机麦克风(即使未插入),那么肯定有办法更改默认设置,以便永远不会使用内置麦克风吗?

答案1

修改内部麦克风配置文件/usr/share/pulseaudio/alsa-mixer/paths/analog-input-internal-mic.conf并添加以下行:

[Jack Headphone Mic]
required-any = any
state.plugged = no

当插入耳机麦克风时,这将禁止访问内部麦克风。在pulseaudio更新后很可能需要再次进行此修改。

答案2

您可以尝试禁用内置麦克风或将另一个麦克风设置为默认值。

要禁用内部麦克风,请运行

pactl unload-module "MODULE ID"

您可以通过运行以下命令找到列为“所有者模块”的模块 ID:

pactl list sources

输出应如下所示:

Source #2
State: SUSPENDED
Name: alsa_output.usb-Corsair_Corsair_VOID_PRO_Wireless_Gaming_Headset-00.iec958-stereo.monitor
Description: Monitor of Corsair VOID PRO Wireless Gaming Headset Digital Stereo (IEC958)
Driver: module-alsa-card.c
Sample Specification: s16le 2ch 44100Hz
Channel Map: front-left,front-right
Owner Module: 24
Mute: no
Volume: front-left: 65536 / 100% / 0,00 dB,   front-right: 65536 / 100% / 0,00 dB
        balance 0,00
Base Volume: 65536 / 100% / 0,00 dB
Monitor of Sink: alsa_output.usb-Corsair_Corsair_VOID_PRO_Wireless_Gaming_Headset-00.iec958-stereo
Latency: 0 usec, configured 0 usec
Flags: DECIBEL_VOLUME LATENCY 
Properties:
    device.description = "Monitor of Corsair VOID PRO Wireless Gaming Headset Digital Stereo (IEC958)"
    device.class = "monitor"
    alsa.card = "1"

将另一个麦克风设置为默认麦克风

pactl set-default-source 'SOURCE ID'

源 ID 是源 #,即上一个命令输出的顶行。

答案3

根据我从你的帖子中了解到的,你所要做的就是:

  • mutesilence你的internal港口
  • 将您的端口切换到headset mic (unplugged/plugged)
  • 取消静音并为其设置音量
  • 勾选set as fallback按钮(圆形“绿色对勾”符号)。

相关内容