对Windows如何获取音频行名称感到困惑

时间:2009-12-18 18:09:49

标签: c# audio windows-vista winmm core-api

我对如何在Windows(vista)中命名音频设备/线路/端点感到非常困惑。

  • 首先,我转到控制面板小程序“声音”。其中,我发现一条输入线实际驻留在USB音频设备上。小程序中“录音设备”的名称是:
    麦克风
    3- USB音频设备 工作

  • 从waveInGetDeviceCaps我得到了 麦克风(3- USB音频设备 请注意缺少右括号

  • 从IMMDevice.IPropertyStore,我看到两个属性,我可以提取名称。其中一人说 麦克风
    另一个说 USB音频设备

“3-”来自哪里?

1 个答案:

答案 0 :(得分:2)

“3-”取决于您连接设备的USB端口。如果您将设备移动到另一个USB端口,它将获得另一个号码。这是为了唯一地标识连接到不同端口的相同设备。 CoreAudio API使用真实ID(非常类似于GUID)来标识每个设备,因此不需要对设备名称中的差异进行编码。

请注意,这是我对使用USB声音设备以及MME和CoreAudio API的看法。真实的故事可以在DDK中找到,也可以从微软的人那里找到。