音频设备输入名称被截断

时间:2013-10-08 20:17:04

标签: c++ windows winapi visual-studio-2005 audio-recording

我正在尝试使用以下代码获取音频输入设备名称:

WAVEINCAPS woc;
unsigned long iNumDevs = waveInGetNumDevs(); 
for (unsigned long i = 0; i < iNumDevs; i++) 
{ 
    if (!waveInGetDevCaps(i, &woc, sizeof(WAVEINCAPS))) 
    {
        devices.push_back(woc.szPname);
    } 
}

当我查看devices时,有所有输入设备名称,但所有名称都被截断为32个字符。

如何获得完整名称?

1 个答案:

答案 0 :(得分:0)

szPname结构的WAVEINCAPS成员仅限于MAXPNAMELEN个字符,定义为32个。

您可以尝试枚举使用可能没有此限制的其他技术,例如使用DirectSound