次の方法で共有


AVStream コーデックのアロケーターのフレーム処理の指定

一般に、KS ピンのアロケーター要件によって、AVStream が提供するストリーミング バッファーの物理サイズが決まります。

ただし、入力ピンはサンプルをダウンストリームに渡すだけであるため、入力ピンのKSALLOCATOR_FRAMING_EX (KS_FRAMING_ITEM.PhysicalRange) で指定されたバッファー サイズ要件は使用されません。 ドライバーは、メディアの種類が設定された後も入力フレーム サイズを決定し、それに応じて内部構造を調整する必要があります。

ドライバーは入力ピンのフレーム サイズに影響を与えることはできませんが、未処理の最大フレーム数 (KS_FRAMING_ITEM.Frames) は、ピンのアロケーター要件に依存します。 ストリーミング コンポーネント間のスムーズなデータフローをスムーズにし、グリッチを減少させるために、エンコーダー フィルターとデコーダー フィルターの両方に、少なくとも 3 つの未処理フレームをサポートする入力ピンと出力ピンを用意することをお勧めします。

ドライバーは、デバイスの初期化時に KSPIN_DESCRIPTOR_EX にアロケーター フレーム情報を提供するだけでなく、関連する KSALLOCATOR_FRAMING_EX 構造体も更新する必要があります。 この更新プログラムは、ベンダーが提供する AVStrMiniPinSetDataFormat コールバック ルーチンでピンの接続メディアの種類に基づく必要があります。