如何获取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
相关产品推荐
相关产品推荐

