次の方法で共有


MIDI ミニポート ドライバー

MIDI ミニポート ドライバーは、ハードウェア シーケンスやダウンロード可能なサウンド (DLS) などの高度な機能がない単純な MIDI デバイスのハードウェアに依存する機能を管理します。 MIDIポートドライバは、シンセサイザーへのMIDIメッセージの配信のタイミングを処理します。 MIDI ミニポート ドライバーは、ポート ドライバーからの要求に応じてシンセサイザーに MIDI メッセージを転送する役割のみを担います。 高度な MIDI 機能を備えたデバイスでは、代わりに DMus ミニポート ドライバー を使用する必要があります。

MIDI ミニポート ドライバーは、次の 2 つのインターフェイスを実装する必要があります。

  • ミニポート インターフェイス は、ミニポート オブジェクトを初期化し、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 には、FM シンセと UART 関数を持つ MIDI デバイス用の組み込みの MIDI ミニポート ドライバーが含まれています。 詳細については、「PcNewMiniport」を参照してください。