2008-09-03 5 views

답변

1

DirectX SDK을 사용하면 시스템의 각 DirectSoundCapture 장치에 대해 DSEnumCallback 함수를 호출하는 DirectSoundCaptureEnumerate를 호출 할 수 있습니다. DSEnumCallback에 전달 된 첫 번째 매개 변수는 "열거되는 장치를 식별하는 GUID의 주소 또는 기본 장치의 NULL"인 LPGUID입니다. 당신이 녹음 장치가 존재하는지 확인하기 만하면 모두가 (당신이 정말로 기본 장치를 알 필요가 있다면 나는이 정도면 충분 생각하지 않는) 경우

, 당신은 waveInGetNumDevs를 사용할 수 있습니다

#include <tchar.h> 
#include <windows.h> 
#include "mmsystem.h" 

int _tmain(int argc, wchar_t *argv[]) 
{ 
    UINT deviceCount = waveInGetNumDevs(); 

    if (deviceCount > 0) 
    { 
     for (int i = 0; i < deviceCount; i++) 
     { 
      WAVEINCAPSW waveInCaps; 

      waveInGetDevCapsW(i, &waveInCaps, sizeof(WAVEINCAPS)); 

      // do some stuff with waveInCaps... 
     } 
    } 

    return 0; 
} 
0

사용할 수있는 방법이있는 PortAudio이라는 오픈 소스 오디오 API가 있습니다. 나는이 방법이 Pa_GetDeviceInfo() 또는 뭔가라고 생각한다.

관련 문제