次の方法で共有


アダプター ドライバーの構築

特定のオーディオ アダプター カードのドライバー サポートは、アダプター ドライバーの形式をとります。 アダプター ドライバーは、次の要素で構成されます。

  • ドライバーの起動と初期化を実行し、アダプター カード上のすべてのオーディオ関数に共通する操作を実装する一般的なアダプター コード。

  • アダプター カードで特定のオーディオ関数を管理するミニポート ドライバーのセット。

ハードウェア ベンダーは、一般的なアダプター コードと、システムが提供しないミニポート ドライバーのコードの両方を提供します。

一般的なアダプター コードの例としては、Sysvad サンプル ドライバーの CAdapterCommon CAdapterCommon インターフェイスの実装を参照してください (サンプル オーディオ ドライバーで説明)。

ベンダーは、階層化されたアプローチを使用して、アダプターのハードウェア機能に応じて、いくつかのレベルのいずれかで動作するアダプター ドライバーを記述できます。 あるハードウェア機能が必要とするサポートのレベルを決定する場合、ベンダーはまず、その機能をサポートするシステム提供のミニポート ドライバーが既に存在するかどうかを判断する必要があります (PcNewMiniport 関数のシステム提供のミニポート ドライバーのリストを参照してください)。 そうでない場合、ベンダーは独自のミニポート ドライバーを実装しなければなりませんが、システムが提供するポート ドライバーの 1 つを使用できるかもしれません (PcNewPort 関数のシステム提供ポート ドライバーのリストを参照してください)。

デバイスの WDM サポートを実装するには、次の手順に従います。

  1. システム提供のミニポート ドライバーが既にハードウェア機能をサポートしている場合は、既存のミニポート ドライバーを使用して関数を管理します。

  2. ハードウェア機能がシステム提供のミニポートドライバーと互換性がない場合は、その機能がシステム提供のポートドライバーの少なくとも 1 つと互換性があるかどうかを判断します。 システム提供のポート ドライバーがハードウェア機能をサポートしている場合は、関数を管理するミニポート ドライバーの部分を記述します。 そのミニポート ドライバーは、所有ポート ドライバーが期待するミニポート インターフェイスの仕様に準拠する必要があります。

  3. システム提供のポート ドライバーがハードウェア機能をサポートしていない場合は、その機能をサポートするミニドライバーを記述します。 ミニドライバーは、ストリーミング クラス ドライバーのインターフェイス仕様に準拠している必要があります。

このセクションでは、次のトピックについて説明します。

開始シーケンス

サブデバイスの作成