다음을 통해 공유


스트림 버퍼를 사용하여 MIDI 메시지 보내기

애플리케이션이 스트림 버퍼에서 작동하는 경우 midiStreamOut 함수를 사용하여 모든(짧고 긴) MIDI 메시지를 디바이스에 보냅니다. 스트림 데이터 블록을 지정하려면 MIDIHDRMIDIEVENT 구조를 사용합니다. MIDIHDR 구조체에는 잠긴 데이터 블록의 주소, 데이터 블록 길이 및 일부 다양한 플래그가 포함됩니다. 데이터는 MIDIEVENT 구조체의 형태로 저장됩니다. 시스템은 스트림 버퍼에 64K의 크기 제한을 적용합니다.

midiStreamOut을 사용하여 데이터의 스트림 버퍼를 보낸 후에는 데이터 블록을 해제하기 전에 디바이스 드라이버가 데이터 블록으로 완료될 때까지 기다려야 합니다. 여러 데이터 블록을 보내는 경우 추가 블록을 보낼 시기를 알 수 있도록 각 데이터 블록의 완료를 모니터링해야 합니다. 데이터 블록 완성을 모니터링하는 다양한 기술에 대한 자세한 내용은 MIDI 데이터 블록 관리를 참조하세요.