다음을 통해 공유


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 경우 함수는 기본 통신 디바이스를 엽니다.

이 플래그는 uDeviceIDWAVE_MAPPER 경우에만 적용됩니다.

참고 Windows 7 필요
 
WAVE_FORMAT_DIRECT 이 플래그를 지정하면 ACM 드라이버는 오디오 데이터에 대한 변환을 수행하지 않습니다.
WAVE_FORMAT_QUERY 함수는 디바이스를 쿼리하여 지정된 형식을 지원하는지 여부를 확인하지만 디바이스는 열리지 않습니다.
WAVE_MAPPED uDeviceID 매개 변수는 웨이브 매퍼에서 매핑할 파형 오디오 디바이스를 지정합니다.

반환 값

성공하면 MMSYSERR_NOERROR 반환하고, 그렇지 않으면 오류를 반환합니다. 가능한 오류 값은 다음과 같습니다.

반환 코드 설명
MMSYSERR_ALLOCATED
지정된 리소스가 이미 할당되어 있습니다.
MMSYSERR_BADDEVICEID
지정된 디바이스 식별자가 범위를 벗어났습니다.
MMSYSERR_NODRIVER
디바이스 드라이버가 없습니다.
MMSYSERR_NOMEM
메모리를 할당하거나 잠글 수 없습니다.
WAVERR_BADFORMAT
지원되지 않는 파형 오디오 형식으로 열려고 했습니다.

설명

waveInGetNumDevs 함수를 사용하여 시스템에 있는 파형 오디오 입력 디바이스의 수를 확인합니다. uDeviceID로 지정된 디바이스 식별자는 존재하는 디바이스 수보다 0개에서 1개까지 다양합니다. WAVE_MAPPER 상수를 디바이스 식별자로 사용할 수도 있습니다.

창 또는 스레드가 콜백 정보를 수신하도록 선택하는 경우 다음 메시지가 창 프로시저 또는 스레드로 전송되어 파형 오디오 입력의 진행률을 나타냅니다. MM_WIM_OPEN, MM_WIM_CLOSEMM_WIM_DATA.

함수가 콜백 정보를 수신하도록 선택하는 경우 다음 메시지가 함수로 전송되어 파형 오디오 입력의 진행률을 나타냅니다. WIM_OPEN, WIM_CLOSEWIM_DATA.

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 mmeapi.h(Windows.h 포함)
라이브러리 Winmm.lib
DLL Winmm.dll

참고 항목

파형 오디오

파형 함수