オーディオ データ範囲
KS フィルターの各ピンは、サポートするデータ形式を宣言します。 ピン ファクトリは、この情報をデータ範囲の配列として公開します。 前述した形式記述子とは異なり、データ範囲はデータ形式の範囲を記述します。 たとえば、ウェーブ ピンのデータ範囲は、ピンがサポートするサンプル サイズ、周波数、チャネルの範囲を指定します。
ミニポート ドライバーは、ピンをインスタンス化するときに、ピンのデータ範囲から選択した特定のデータ形式でストリームを処理するピンを構成します。 この作業は、ミニポート ドライバーのデータ交差ハンドラーによって行われます。このハンドラーは、接続できるように、2 つのピンに共通するオーディオ データ形式を選択します。 詳しくは、「データ交差ハンドラー」を参照してください。
プロパティ リクエストを使用してオーディオ ピンのデータ範囲をクエリし、データ交差を選択する方法については、「ピンのデータ範囲と交差のプロパティ」を参照してください。
ウェーブ ピンのデータ範囲を指定するには、KSDATARANGE 構造体の後に、そのピンがサポートするサンプル サイズ、周波数、およびチャネルの範囲を示す情報を続けます。 KSDATARANGE 構造体を含むこの情報は、KSDATARANGE_AUDIO 構造体にカプセル化されます。
MIDI または DirectMusic ピンのデータ範囲を指定するには、KSDATARANGE 構造体の後に、同時に再生できるチャンネルとノートの最大数などの追加情報が続きます。 この情報は、KSDATARANGE 構造体とともに、KSDATARANGE_MUSIC 構造体にカプセル化されます。
このドキュメントでは、KSDATARANGE_AUDIO および KSDATARANGE_MUSIC 構造体を使用するデータ範囲の例をいくつか示します。
ウェーブおよび DirectSound データ範囲の宣言例については、「PCM ストリーム データ範囲」および「DirectSound ストリーム データ範囲」を参照してください。
MIDI と DirectMusic のデータ範囲の宣言例については、「MIDI ストリーム データ範囲」と「DirectMusic Stream データ範囲」を参照してください。
非 PCM 形式のデータ範囲の宣言例については、「AC-3 データ範囲の指定」と「WMA Pro データ範囲の指定」を参照してください。