Поделиться через


Отправка сообщений MIDI с помощью буферов потока

Когда приложение работает с буферами потоков, оно использует функцию midiStreamOut для отправки всех (коротких и длинных) сообщений MIDI на устройство. Чтобы указать блоки данных потока, используйте структуры MIDIHDR и MIDIEVENT . Структура MIDIHDR содержит адрес заблокированного блока данных, длину блока данных и некоторые флаги. Данные хранятся в виде структур MIDIEVENT . Система устанавливает ограничение размера в 64 КБ для буферов потока.

После использования midiStreamOut для отправки буфера потока данных необходимо подождать, пока драйвер устройства завершит работу с блоком данных, прежде чем освободить его. При отправке нескольких блоков данных необходимо отслеживать завершение каждого блока данных, чтобы знать, когда следует отправлять дополнительные блоки. Сведения о различных методах мониторинга завершения блоков данных см. в разделе Управление блоками данных MIDI.