Управление записью MIDI
После открытия устройства MIDI можно начать запись данных MIDI. Windows предоставляет следующие функции для управления записью MIDI.
Значение | Значение |
---|---|
midiInAddBuffer | Отправляет буфер драйверу устройства, чтобы его можно было заполнить записанными данными MIDI, исключающими систему. |
midiInReset | Останавливает запись MIDI и помечает все ожидающие буферы как выполненные. |
midiInStart | Запускает запись MIDI и сбрасывает метку времени до нуля. |
midiInStop | Останавливает запись MIDI. |
Чтобы отправить буферы в драйвер устройства для записи сообщений, исключающих систему, используйте midiInAddBuffer. Приложение получает уведомление о заполнении буферов данными, которые записываются исключительно системой. Дополнительные сведения о методах уведомлений см. в разделе Управление блоками данных MIDI.
Функция midiInStart начинает процесс записи. При записи сообщений, исключающих систему, перед началом записи отправьте драйверу по крайней мере один буфер. Чтобы остановить запись, используйте midiInStop. Перед закрытием устройства с помощью функции midiInClose пометьте все ожидающие блоки данных как выполненные, вызвав midiInReset.
Приложения, которым требуются данные с меткой времени, используют функцию обратного вызова для получения данных MIDI. Если ваши требования к времени не являются строгими, можно использовать обратный вызов окна или потока. Однако обратный вызов события нельзя использовать для получения данных MIDI.
Чтобы записывать сообщения, исключающие систему, с приложениями, которые не используют буферы потока, необходимо предоставить драйверу устройства буферы. Эти буферы задаются с помощью структуры MIDIHDR .
Связанные темы