waveInOpen 함수(mmeapi.h)
waveInOpen 함수는 녹음을 위해 지정된 파형 오디오 입력 디바이스를 엽니다.
구문
MMRESULT waveInOpen(
LPHWAVEIN phwi,
UINT uDeviceID,
LPCWAVEFORMATEX pwfx,
DWORD_PTR dwCallback,
DWORD_PTR dwInstance,
DWORD fdwOpen
);
매개 변수
phwi
열린 파형 오디오 입력 디바이스를 식별하는 핸들을 수신하는 버퍼에 대한 포인터입니다. 다른 파형 오디오 입력 함수를 호출할 때 이 핸들을 사용하여 디바이스를 식별합니다. fdwOpen에 대해 WAVE_FORMAT_QUERY 지정한 경우 이 매개 변수는 NULL일 수 있습니다.
uDeviceID
열 파형 오디오 입력 디바이스의 식별자입니다. 디바이스 식별자 또는 열린 파형 오디오 입력 디바이스의 핸들일 수 있습니다. 디바이스 식별자 대신 다음 플래그를 사용할 수 있습니다.
값 | 의미 |
---|---|
WAVE_MAPPER | 함수는 지정된 형식으로 녹음할 수 있는 파형 오디오 입력 디바이스를 선택합니다. |
pwfx
파형 오디오 데이터를 기록하는 데 필요한 형식을 식별하는 WAVEFORMATEX 구조체에 대한 포인터입니다. waveInOpen이 반환된 직후에 이 구조를 해제할 수 있습니다.
dwCallback
고정 콜백 함수, 이벤트 핸들, 창에 대한 핸들 또는 파형 오디오 녹음 중에 호출될 스레드의 식별자에 대한 포인터로 기록 진행률과 관련된 메시지를 처리합니다. 콜백 함수가 필요하지 않은 경우 이 값은 0일 수 있습니다. 콜백 함수에 대한 자세한 내용은 waveInProc을 참조하세요.
dwInstance
콜백 메커니즘에 전달된 사용자 instance 데이터입니다. 이 매개 변수는 창 콜백 메커니즘에 사용되지 않습니다.
fdwOpen
디바이스를 열기 위한 플래그입니다. 다음 값이 정의됩니다.
값 | 의미 |
---|---|
CALLBACK_EVENT | dwCallback 매개 변수는 이벤트 핸들입니다. |
CALLBACK_FUNCTION | dwCallback 매개 변수는 콜백 프로시저 주소입니다. |
CALLBACK_NULL | 콜백 메커니즘이 없습니다. 이 값은 기본 설정입니다. |
CALLBACK_THREAD | dwCallback 매개 변수는 스레드 식별자입니다. |
CALLBACK_WINDOW | dwCallback 매개 변수는 창 핸들입니다. |
WAVE_MAPPED_DEFAULT_COMMUNICATION_DEVICE |
이 플래그가 지정되고 uDeviceID 매개 변수가 WAVE_MAPPER 경우 함수는 기본 통신 디바이스를 엽니다.
이 플래그는 uDeviceID 가 WAVE_MAPPER 경우에만 적용됩니다. 참고 Windows 7 필요
|
WAVE_FORMAT_DIRECT | 이 플래그를 지정하면 ACM 드라이버는 오디오 데이터에 대한 변환을 수행하지 않습니다. |
WAVE_FORMAT_QUERY | 함수는 디바이스를 쿼리하여 지정된 형식을 지원하는지 여부를 확인하지만 디바이스는 열리지 않습니다. |
WAVE_MAPPED | uDeviceID 매개 변수는 웨이브 매퍼에서 매핑할 파형 오디오 디바이스를 지정합니다. |
반환 값
성공하면 MMSYSERR_NOERROR 반환하고, 그렇지 않으면 오류를 반환합니다. 가능한 오류 값은 다음과 같습니다.
반환 코드 | 설명 |
---|---|
|
지정된 리소스가 이미 할당되어 있습니다. |
|
지정된 디바이스 식별자가 범위를 벗어났습니다. |
|
디바이스 드라이버가 없습니다. |
|
메모리를 할당하거나 잠글 수 없습니다. |
|
지원되지 않는 파형 오디오 형식으로 열려고 했습니다. |
설명
waveInGetNumDevs 함수를 사용하여 시스템에 있는 파형 오디오 입력 디바이스의 수를 확인합니다. uDeviceID로 지정된 디바이스 식별자는 존재하는 디바이스 수보다 0개에서 1개까지 다양합니다. WAVE_MAPPER 상수를 디바이스 식별자로 사용할 수도 있습니다.
창 또는 스레드가 콜백 정보를 수신하도록 선택하는 경우 다음 메시지가 창 프로시저 또는 스레드로 전송되어 파형 오디오 입력의 진행률을 나타냅니다. MM_WIM_OPEN, MM_WIM_CLOSE 및 MM_WIM_DATA.
함수가 콜백 정보를 수신하도록 선택하는 경우 다음 메시지가 함수로 전송되어 파형 오디오 입력의 진행률을 나타냅니다. WIM_OPEN, WIM_CLOSE 및 WIM_DATA.
요구 사항
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | mmeapi.h(Windows.h 포함) |
라이브러리 | Winmm.lib |
DLL | Winmm.dll |