次の方法で共有


MIDI ポート ドライバー

MIDI ポート ドライバーは、MIDI シンセサイザーまたはキャプチャ デバイスを管理します。 アダプター ドライバーは、MIDI ストリームをキャプチャまたはレンダリングできる MIDI フィルター (MIDI および DirectMusic フィルターを参照) を形成する MIDI ポート ドライバー オブジェクトにバインドする対応する MIDI ミニポート ドライバーを提供します。

MIDI ポート ドライバーは、ミニポート ドライバーに IPortMidi インターフェイスを公開します。 IPortMidi は、基本インターフェイス IPort のメソッドを継承します。 IPortMidi には、次の追加メソッドが用意されています。

IPortMidi::Notify

MIDI シンセサイザーまたはキャプチャ デバイスが MIDI ストリーム内の新しい位置に進んだことをポート ドライバーに通知します。 IPortMidi::RegisterServiceGroup

ポート ドライバーにサービス グループ オブジェクトを登録します。 サービス グループには、ミニポート ドライバーが通知を呼び出すときに呼び出される 1 つ以上のサービス ルーチンの一覧が含まれています。詳細については、「サービス シンクとサービス グループ オブジェクト」を参照してください。

MIDI ポートとミニポート ドライバー オブジェクトは、それぞれの IPortMidi インターフェイスと IMiniportMidi インターフェイスを介して相互に通信します。 ミニポート ドライバーは、ポート ドライバーの IPortMidi インターフェイスを使用して、ポート ドライバーにハードウェア割り込みを通知します。 さらに、ポート ドライバーは、IMiniportMidiStream インターフェイスを介してミニポート ドライバーのストリーム オブジェクトと通信します。

Windows XP 以降では、 IPortMidi インターフェイスと IPortDMus インターフェイスはどちらも 1 つの内部ドライバー モジュールに実装されます。 この統合は、これら 2 つのインターフェイスの類似性によって容易になります。 たとえば、両方のインターフェイスに同じメソッドが定義されています。 以前のバージョンの Windows 用に作成されたアプリケーションでは、MIDI および DMus ポート ドライバーの 統合に起因する IPortMidi および IPortDMus インターフェイスの動作に変更はありません。