MIDI 데이터 블록 할당 및 준비
midiOutLongMsg, midiInAddBuffer 및 midiStreamOut 함수를 사용하려면 애플리케이션에서 재생 또는 녹화 목적으로 디바이스 드라이버에 전달할 데이터 블록을 할당해야 합니다. 이러한 각 함수는 MIDIHDR 구조를 사용하여 해당 데이터 블록을 설명합니다.
이러한 함수 중 하나를 사용하여 데이터 블록을 디바이스 드라이버에 전달하려면 먼저 데이터 블록을 설명하는 버퍼 및 헤더 구조에 대한 메모리를 할당해야 합니다.
Windows는 MIDI 데이터 블록을 준비하고 정리하기 위한 다음 기능을 제공합니다.
값 | 의미 |
---|---|
midiInPrepareHeader | MIDI 입력 데이터 블록을 준비합니다. |
midiInUnprepareHeader | MIDI 입력 데이터 블록의 준비를 정리합니다. |
midiOutPrepareHeader | MIDI 출력 데이터 블록을 준비합니다. |
midiOutUnprepareHeader | MIDI 출력 데이터 블록의 준비를 정리합니다. |
MIDI 데이터 블록을 디바이스 드라이버에 전달하기 전에 버퍼를 midiInPrepareHeader 또는 midiOutPrepareHeader 함수에 전달하여 준비해야 합니다. 디바이스 드라이버가 버퍼로 완료되고 반환되면 할당된 메모리를 해제하기 전에 버퍼를 midiInUnprepareHeader 또는 midiOutUnprepareHeader 함수에 전달하여 이 준비를 클린 합니다.
관련 항목