MIDI 데이터 블록 할당 및 준비

midiOutLongMsg, midiInAddBuffermidiStreamOut 함수를 사용하려면 애플리케이션에서 재생 또는 녹화 목적으로 디바이스 드라이버에 전달할 데이터 블록을 할당해야 합니다. 이러한 각 함수는 MIDIHDR 구조를 사용하여 해당 데이터 블록을 설명합니다.

이러한 함수 중 하나를 사용하여 데이터 블록을 디바이스 드라이버에 전달하려면 먼저 데이터 블록을 설명하는 버퍼 및 헤더 구조에 대한 메모리를 할당해야 합니다.

Windows는 MIDI 데이터 블록을 준비하고 정리하기 위한 다음 기능을 제공합니다.

의미
midiInPrepareHeader MIDI 입력 데이터 블록을 준비합니다.
midiInUnprepareHeader MIDI 입력 데이터 블록의 준비를 정리합니다.
midiOutPrepareHeader MIDI 출력 데이터 블록을 준비합니다.
midiOutUnprepareHeader MIDI 출력 데이터 블록의 준비를 정리합니다.

 

MIDI 데이터 블록을 디바이스 드라이버에 전달하기 전에 버퍼를 midiInPrepareHeader 또는 midiOutPrepareHeader 함수에 전달하여 준비해야 합니다. 디바이스 드라이버가 버퍼로 완료되고 반환되면 할당된 메모리를 해제하기 전에 버퍼를 midiInUnprepareHeader 또는 midiOutUnprepareHeader 함수에 전달하여 이 준비를 클린 합니다.

MIDI 서비스