次の方法で共有


KsFilterFactoryUpdateCacheData 関数 (ks.h)

KsFilterFactoryUpdateCacheData 関数は、特定のフィルター ファクトリの FilterData レジストリ キーと Medium キャッシュ (レジストリ キーのセット) を更新します。

構文

KSDDKAPI NTSTATUS KsFilterFactoryUpdateCacheData(
  [in]           PKSFILTERFACTORY          FilterFactory,
  [in, optional] const KSFILTER_DESCRIPTOR *FilterDescriptor
);

パラメーター

[in] FilterFactory

レジストリ内の FilterData キャッシュと Medium キャッシュを更新する KSFILTERFACTORY

[in, optional] FilterDescriptor

FilterData キーと Medium キャッシュが更新される省略可能な KSFILTER_DESCRIPTORNULL の場合は、代わりに FilterFactory の記述子が使用されます。 フィルター ファクトリが動的ピンを使用していて、まだインスタンス化されていないピンの情報を更新する必要があるかどうかを指定します。

戻り値

KsFilterFactoryUpdateCacheData は、関連するレジストリ情報が正常に更新されたかどうかを示すSTATUS_SUCCESSまたはエラー コードを返します。 フィルター記述子で渡されたカテゴリに対応するデバイス インターフェイスが見つからない場合は、STATUS_INVALID_PARAMETERを返します。

注釈

この関数は、 FilterDescriptor で指定されたすべてのカテゴリの FilterData キーと Medium キャッシュを更新します。 FilterDescriptorNULL の場合、FilterFactoryKSFILTER_DESCRIPTOR メンバーで指定されたすべてのカテゴリの FilterData キャッシュと Medium キャッシュが更新されます。

KsRegisterFilterWithNoKSPins は同様の機能を提供しますが、同じ KSDEVICE の下のKSFILTER_DESCRIPTORの 2 つのインスタンスが同じカテゴリに登録され、参照 GUID でのみ異なる場合は使用しないでください。 この場合、 KsRegisterFilterWithNoKSPins は、2 つ目が指定されている可能性がある場合でも、最初のデータについてのみデータを更新します。

KS ピンのないフィルター (アナログ スタイルのクロスバーなど) では、 KsRegisterFilterWithNoKSPins の代わりにこのルーチンを使用しないでください。 このルーチンは、ミニドライバーが対応するフィルター ファクトリを渡している特定のフィルターにのみ使用します。

さらに、 KsRegisterFilterWithNoKSPins では、登録されたピンごとに 1 つのメディアのみが許可されます。 これは、BDA ミニドライバーでは十分でない場合があります。

詳細については、「 AVStream オブジェクト階層」を参照してください。

KsFilterFactoryUpdateCacheData 関数は、PASSIVE_LEVELでのみ呼び出すことができます。

要件

要件
対象プラットフォーム ユニバーサル
Header ks.h (Ks.h を含む)
Library Ks.lib

こちらもご覧ください

KSFILTERFACTORY

KSFILTER_DESCRIPTOR

KsRegisterFilterWithNoKSPins