KsFilterFactoryUpdateCacheData 函数 (ks.h)

KsFilterFactoryUpdateCacheData 函数更新给定筛选器工厂的 FilterData 注册表项和 Medium 缓存(一组注册表项)。

语法

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

参数

[in] FilterFactory

KSFILTERFACTORY,用于更新注册表中的 FilterData 和 Medium 缓存。

[in, optional] FilterDescriptor

将更新 FilterData 键和 Medium 缓存的可选 KSFILTER_DESCRIPTOR。 如果 NULL,则改用 filterFactory 的描述符。 提供筛选器工厂是否使用动态引脚,并且需要更新尚未实例化的引脚的信息。

返回值

KsFilterFactoryUpdateCacheData 返回STATUS_SUCCESS或失败代码,指示是否已成功更新相关的注册表信息。 如果未找到与筛选器描述符中传递的类别相对应的设备接口,它将返回STATUS_INVALID_PARAMETER。

言论

此函数为 FilterDescriptor中指定的所有类别更新 FilterData 键和中等缓存。 如果 FilterDescriptorNULL,则 filterData 和 Medium 缓存将针对 FilterFactoryKSFILTER_DESCRIPTOR 成员中指定的所有类别进行更新。

KsRegisterFilterWithNoKSPins 提供类似的功能,但如果在同一类别中注册了同一 KSDEVICE 下的两个 KSFILTER_DESCRIPTOR 实例,并且仅在引用 GUID 中不同,则不应使用此功能。 在这种情况下,KsRegisterFilterWithNoKSPins 仅更新第一个数据,即使第二个数据可能已指定。

请勿将此例程用于 KsRegisterFilterWithNoKSPins,而不使用 KS 引脚的筛选器,例如模拟样式交叉条。 仅将此例程用于微型驱动程序向其传递相应筛选器工厂的特定筛选器。

此外,KsRegisterFilterWithNoKSPins 只允许每个已注册的引脚一个介质。 这可能不足以用于 BDA 微型驱动程序。

有关详细信息,请参阅 AVStream 对象层次结构

KsFilterFactoryUpdateCacheData 函数只能在PASSIVE_LEVEL中调用。

要求

要求 价值
目标平台 普遍
标头 ks.h (包括 Ks.h)
Ks.lib

另请参阅

KSFILTERFACTORY

KSFILTER_DESCRIPTOR

KsRegisterFilterWithNoKSPins