次の方法で共有


ピンのデータ範囲と交差のプロパティ

いくつかのプロパティ要求は、オーディオ デバイスが入力ピンと出力ピンで処理できるオーディオ ストリームのデータ形式に関する情報を提供します。

ピンがサポートできるオーディオストリームのデータフォーマットは、KSMULTIPLE_ITEMKSDATARANGE構造体の配列で表されます。 ピン データ範囲のサポートは、フィルターの次の 3 つのKSPROPSETID_Pinプロパティによって公開されます。

KSPROPERTY_PIN_DATARANGESこのプロパティは、静的で、サポートされるすべての可能なフォーマットを表すデータ範囲を報告します。 通常、データ範囲はアダプター ドライバーの静的配列に含まれます。 KSPROPERTY_PIN_CONSTRAINEDDATARANGES このプロパティは、動的で、プロパティ要求時にサポートされる形式のサブセットを表すデータ範囲を報告します。 プロパティ ハンドラーには、実行時にサポートできるピンの形式を決定するロジックが含まれている必要があります。 たとえば、ハードウェア実装では、特定の形式の組み合わせで全二重をサポートできない DMA 制約が存在する可能性があります。 KSPROPERTY_PIN_DATAINTERSECTION このプロパティは、データ範囲の一覧からデータ形式を選択します。 選択は動的機能に基づいており、形式は、プロパティ要求時にドライバーがサポートできる形式のサブセットから取得されます。 このプロパティを使用するために、呼び出し元はデータ範囲の配列を提供します。 最初の要素から、プロパティ ハンドラーは、現在サポートできるデータ範囲が見つかるまで配列を検索します。 成功した場合、ハンドラーはそのデータ範囲から取得されたデータ形式を出力し、STATUS_SUCCESSを返します。 それ以外の場合、ハンドラーはSTATUS_NO_MATCHを返します。 オーディオシステムのコンポーネントは、KSPROPERTY_PIN_DATARANGESとKSPROPERTY_PIN_DATAINTERSECTIONプロパティを使用します。 ミニポート ドライバーは、これらのプロパティをサポートする必要があります。 KSPROPERTY_PIN_CONSTRAINEDDATARANGESのサポートは省略可能です。

詳細については、「オーディオ データ形式とデータ範囲 」を参照してください。

注: KSPROPERTY_PIN_DATARANGESとKSPROPERTY_PIN_CONSTRAINEDDATARANGESは、それぞれ 8 バイトでアラインされたアドレスで始まります。