midiStreamOut 함수(mmeapi.h)
midiStreamOut 함수는 MIDI 데이터의 스트림(버퍼)을 MIDI 출력 디바이스로 재생하거나 큐에 대기합니다.
구문
MMRESULT midiStreamOut(
HMIDISTRM hms,
LPMIDIHDR pmh,
UINT cbmh
);
매개 변수
hms
MIDI 스트림에 대한 핸들입니다. 이 핸들은 midiStreamOpen 함수를 호출하여 반환되어야 합니다. 이 핸들은 출력 디바이스를 식별합니다.
pmh
MIDI 버퍼를 식별하는 MIDIHDR 구조체에 대한 포인터입니다.
cbmh
MIDIHDR 구조체의 크기(바이트)입니다.
반환 값
성공하면 MMSYSERR_NOERROR 반환하고, 그렇지 않으면 오류를 반환합니다. 가능한 오류 값은 다음과 같습니다.
반환 코드 | 설명 |
---|---|
|
시스템에서 메모리를 할당하거나 잠글 수 없습니다. |
|
lpMidiHdr에서 가리키는 출력 버퍼가 여전히 재생 중이거나 midiStreamOut에 대한 이전 호출에서 큐에 대기 중입니다. |
|
lpMidiHdr에서 가리키는 헤더가 준비되지 않았습니다. |
|
지정한 디바이스 핸들이 잘못되었습니다. |
|
lpMidiHdr로 지정된 포인터가 잘못되었습니다. |
설명
버퍼가 midiStreamOpen에 전달되기 전에 midiOutPrepareHeader 함수를 사용하여 준비해야 합니다.
midiStreamOpen 함수는 일시 중지 모드에서 출력 디바이스를 열기 때문에 midiStreamOut을 사용하여 재생을 시작하려면 먼저 midiStreamRestart 함수를 호출해야 합니다.
이 함수의 현재 구현의 경우 버퍼는 64K보다 작아야 합니다.
MIDIHDR 구조체가 가리키는 버퍼에는 MIDIEVENT 구조체로 정의된 하나 이상의 MIDI 이벤트가 포함됩니다.
요구 사항
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | mmeapi.h(Windows.h 포함) |
라이브러리 | Winmm.lib |
DLL | Winmm.dll |