MIDI-Miniporttreiber

Ein MIDI-Miniporttreiber verwaltet die hardwareabhängigen Funktionen einfacher MIDI-Geräte, denen erweiterte Funktionen wie Hardwaresequenzierung und herunterladbare Sounds (DLS) fehlen. Der MIDI-Porttreiber übernimmt das Timing der Übermittlung von MIDI-Nachrichten an Synthesizer. Der MIDI-Miniporttreiber ist nur für den Transport der MIDI-Nachrichten an den Synthesizer als Reaktion auf Anforderungen des Porttreibers verantwortlich. Geräte mit erweiterten MIDI-Funktionen sollten stattdessen einen DMus-Miniporttreiber verwenden.

Ein MIDI-Miniporttreiber sollte zwei Schnittstellen implementieren:

  • Die Miniportschnittstelle initialisiert das Miniportobjekt und erstellt MIDI-Streams.

  • Die Stream-Schnittstelle verwaltet einen MIDI-Stream und macht die meisten Funktionen des Miniporttreibers verfügbar.

Die Miniportschnittstelle IMiniportMidi erbt die Methoden in der IMiniport-Schnittstelle . IMiniportMidi bietet die folgenden zusätzlichen Methoden:

IMiniportMidi::Init

Initialisiert das Miniportobjekt.

IMiniportMidi::NewStream

Erstellt ein neues Streamobjekt.

IMiniportMidi::Service

Benachrichtigt den Miniporttreiber über eine Serviceanforderung.

Die Streamschnittstelle IMiniportMidiStream erbt die Methoden in der IUnknown-Schnittstelle . IMiniportMidiStream stellt die folgenden zusätzlichen Methoden bereit:

IMiniportMidiStream::Read

Liest Eingabedaten von einem MIDI-Erfassungsgerät.

IMiniportMidiStream::SetFormat

Legt das Datenformat des MIDI-Streams fest.

IMiniportMidiStream::SetState

Legt den Status des MIDI-Streams fest.

IMiniportMidiStream::Write

Schreibt Ausgabedaten in einen MIDI-Synthesizer.

Der MIDI-Porttreiber verarbeitet alle Zeitsteuerungsprobleme in beide Richtungen und setzt darauf zurück, dass der Miniporttreiber Daten als Reaktion auf Aufrufe des Porttreibers an die Lese- und Schreibmethoden IMiniportMidiStream prompt ein- und aus dem Adapter verschieben kann.

PortCls enthält integrierte MIDI-Miniporttreiber für MIDI-Geräte mit FM-Synth- und UART-Funktionen. Weitere Informationen finden Sie unter PcNewMiniport.