如何在 Windows 11 上强制使用 HSP/HFP 音频?

如何在 Windows 11 上强制使用 HSP/HFP 音频?

我有一对 WH-1000XM3 耳机,它在 Windows 10 的声音设置中显示为两个输出音频端点:

  • 耳机(高品质、高延迟)
  • 耳机(低质量、低采样率,但延迟非常低)

他们还有一个耳机麦克风输入端点。

为了在语音通话和游戏时使用耳机输出配置文件,我将默认输出设备和默认通信设备都设置为耳机。这给了我想要的低延迟,但牺牲了我接受​​的音频质量。这在 Windows 10 上完美运行 - 我可以通过低延迟、低质量的端点听到音频通话和多媒体。如果我正在进行语音通话,可以通过耳机麦克风听到我的声音。

我已将这些耳机与运行 Windows 11 Pro 的新笔记本电脑配对,但在声音控制面板(以及 中的高级选项mmsys.cpl)中,我只看到一个输出端点 - 耳机,它以高延迟提供立体声、高品质音频。耳机不是可见且无法选择。

奇怪的是,如果我通过 Powershell 检查 PnP 子系统已知的实际音频端点,我确实看到了两个耳机,免提/耳机配置文件,并且它们被标记为 OK。

Get-PnpDevice -Class 'AudioEndpoint'

Status     Class           FriendlyName                                                                     InstanceId
------     -----           ------------                                                                     ----------
Unknown    AudioEndpoint   Speakers (High Definition Audio Device)                                          SWD\MMDE...
Unknown    AudioEndpoint   Microphone (High Definition Audio Device)                                        SWD\MMDE...
Unknown    AudioEndpoint   Microphone Array (Realtek(R) Audio)                                              SWD\MMDE...
OK         AudioEndpoint   Headset (WH-1000XM3) SWD\MMDE...
Unknown    AudioEndpoint   Speakers (High Definition Audio Device)                                          SWD\MMDE...
OK         AudioEndpoint   Headset (WH-1000XM3 Hands-Free) SWD\MMDE...
OK         AudioEndpoint   Speakers (Realtek(R) Audio) SWD\MMDE...
Unknown    AudioEndpoint   Microphone (High Definition Audio Device)                                        SWD\MMDE...
OK         AudioEndpoint   Headphones (WH-1000XM3) SWD\MMDE...
OK         AudioEndpoint   Microphone Array (Realtek(R) Audio)                                              SWD\MMDE...
Unknown    AudioEndpoint   Speakers (Realtek(R) Audio) SWD\MMDE...
Unknown    AudioEndpoint   Microphone Array (Realtek(R) Audio)                                              SWD\MMDE...

我如何使用这些配置文件?如果我开始语音通话,Windows 将切换到 HSP 音频输出当麦克风启用时会自动执行,但无限期地进行语音通话并不是一个明智的解决方法。

使用 3.5 毫米线来避免蓝牙延迟对我来说也不是一个可行的解决方法 - 我仍然想使用蓝牙耳机的麦克风,并且如果它关闭,我就无法这样做,以便通过 3.5 毫米插孔使用模拟音频。

我可以在 Windows 11 上配置相同的设置以始终使用 HSP/HFP 端点吗?还是我需要某种愚蠢的解决方法,例如自定义程序,该程序只是为了获得正确的输出配置而保持麦克风打开?是否有一些隐藏的注册表设置可以让我手动设置它?

答案1

我无法找到用户可访问的设置来解决该问题,但我假设的解决方法确实完全解决了该问题。

程序只需打开麦克风 - WSAPI 事件驱动、共享模式完美运行。剥离起来相当简单此样本只需打开设备,然后无休止地丢弃传入缓冲区。如果机器进入休眠状态并备份(睡眠时可能也是如此),麦克风句柄/会话将被丢弃,但如果不想手动重新启动解决方法程序,也应该很容易检测和处理。

答案2

我遇到了与同一问题相关的类似问题。我只想在语音通话时使用麦克风,直到几个月前,Windows 11 还会在需要时激活耳机配置文件。现在却不行了,所以通话时没有麦克风可用。蓝牙设备显示“已连接麦克风,音频”,因此蓝牙完成了它的工作,并使耳机配置文件可供操作系统使用。

对我来说,一个有效的解决方法是打开 Windows 7 时代的“声音”控制面板设置,即 mmsys.cpl。切换到“录音”选项卡将激活耳机配置文件。也许这对某些人有帮助。但对我来说,这种解决方法已经失效了。

希望微软能解决这个问题,或者至少有人能找到一个好的解决方案。微软试图简化他们的 Win 11 界面,但他们的自动化功能不可靠。这个基本功能在 Windows 10 中运行良好:您只需手动选择所需的配置文件即可。

相关内容