You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取OpenAL/OpenAL Soft的默认播放设备名称?

在OpenAL(或OpenAL Soft)中能否获取默认播放设备的名称?

我编写了一个程序来列出系统中的驱动和设备名称(OpenAL将它们统称为“设备”,我自行做了区分),程序输出如下:

Drivers:
  OpenAL Soft
  Generic Software

Default driver:
  Generic Software
  (Opening "OpenAL Soft" instead)

Playback devices:
  OpenAL Soft on CABLE Input (VB-Audio Virtual Cable)
  OpenAL Soft on Speakers (High Definition Audio Device)
  Generic Software on CABLE Input (VB-Audio Virtual Cable)
  Generic Software on Speakers (High Definition Audio Device)

Capture devices:
  OpenAL Soft on CABLE Output (VB-Audio Virtual Cable)
  OpenAL Soft on SPDIF Interface (UR23 USB SPDIF Rx)
  CABLE Output (VB-Audio Virtual
  SPDIF Interface (UR23 USB SPDIF

Default capture device:
  CABLE Output (VB-Audio Virtual

我可以通过以下调用获取默认捕获设备的名称(使用OpenTK——OpenAL的轻量封装):

ALC.GetString(ALDevice.Null, AlcGetString.CaptureDefaultDeviceSpecifier)

虽然AlcGetString.DefaultDeviceSpecifier看起来是对应播放设备的接口,但它实际返回的是我所说的驱动(比如示例中的Generic Software)。我找不到方法获取上述“Playback devices”列表里的默认设备名称(比如我的情况是“OpenAL Soft on CABLE Input...”)。

内容的提问来源于stack exchange,提问作者McGuireV10

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 16:12:37