Драйвер минипорта MIDI

Драйвер минипорта MIDI управляет аппаратными функциями простых устройств MIDI, которые не имеют расширенных возможностей, таких как аппаратное секвенирование и скачиваемые звуки (DLS). Драйвер порта MIDI обрабатывает время доставки сообщений MIDI синтезаторам. Драйвер минипорта MIDI отвечает только за транспортировку сообщений MIDI в синтезатор в ответ на запросы от драйвера порта. Вместо этого устройства с расширенными возможностями MIDI следует использовать драйвер минипорта DMus .

Драйвер минипорта MIDI должен реализовать два интерфейса:

  • Интерфейс минипорта инициализирует минипорт-объект и создает потоки MIDI.

  • Интерфейс потока управляет потоком MIDI и предоставляет большую часть функциональных возможностей драйвера мини-порта.

Интерфейс минипорта IMiniportMidi наследует методы в интерфейсе IMiniport . IMiniportMidi предоставляет следующие дополнительные методы:

IMiniportMidi::Init

Инициализирует минипорт-объект.

IMiniportMidi::NewStream

Создает новый объект потока.

IMiniportMidi::Service

Уведомляет минипорт-драйвера о запросе на предоставление услуги.

Интерфейс потока IMiniportMidiStream наследует методы в интерфейсе IUnknown . IMiniportMidiStream предоставляет следующие дополнительные методы:

IMiniportMidiStream::Read

Считывает входные данные с устройства записи MIDI.

IMiniportMidiStream::SetFormat

Задает формат данных потока MIDI.

IMiniportMidiStream::SetState

Задает состояние потока MIDI.

IMiniportMidiStream::Write

Записывает выходные данные в синтезатор MIDI.

Драйвер порта MIDI обрабатывает все временные параметры в обоих направлениях и полагается на драйвер минипорта для оперативного перемещения данных на адаптер и обратно в ответ на вызовы драйвера порта к методам IMiniportMidiStream чтения и записи.

PortCls содержит встроенные драйверы мини-порта MIDI для устройств MIDI с функциями FM синтезатора и UART. Дополнительные сведения см. в разделе PcNewMiniport.