KsRegisterFilterWithNoKSPins 函数 (ks.h)

KsRegisterFilterWithNoKSPins 函数向没有内核流式处理引脚的 DirectShow 筛选器注册,因此不在内核模式下流式传输。

语法

KSDDKAPI NTSTATUS KsRegisterFilterWithNoKSPins(
  [in]           PDEVICE_OBJECT DeviceObject,
  [in]           const GUID     *InterfaceClassGUID,
  [in]           ULONG          PinCount,
  [in]           BOOL           *PinDirection,
  [in]           KSPIN_MEDIUM   *MediumList,
  [in, optional] GUID           *CategoryList
);

参数

[in] DeviceObject

指向 DEVICE_OBJECT 结构的指针,该结构对应于要向其注册筛选器的设备。

[in] InterfaceClassGUID

指向 GUID 的指针,该 GUID 表示要注册的类。 例如,这将指向 TvTuner 筛选器KSCATEGORY_TVTUNER。

[in] PinCount

筛选器上引脚数的计数。

[in] PinDirection

指向布尔值数组的第一个元素的指针,该数组指示筛选器上每个引脚的引脚方向。 输出引脚为 TRUE;输入引脚为 FALSE。 此数组的长度必须为 PinCount

[in] MediumList

指向 KSPIN_MEDIUM 结构数组的第一个元素的指针,该结构定义筛选器上每个引脚的介质。 此数组的长度必须为 PinCount

[in, optional] CategoryList

指向 GUID 数组的第一个元素的指针,该数组定义筛选器上每个图钉的类别。 如果存在此参数,则其长度必须为 PinCount

返回值

返回在注册表中创建 FilterData 项的成功或失败。

注解

使用 KsRegisterFilterWithNoKSPins 注册 TvTuners、Crossbar 和类似组件。 KsRegisterFilterWithNoKSPins 为筛选器上的每个引脚创建一个新的注册表项 FilterData,其中包含介质和类别(可选)。

此函数仅用于注册没有相应内核引脚的筛选器。 如果成功, KsRegisterFilterWithNoKSPins 会在注册表中创建一个可供 DirectShow 使用的项。

如果编写 BDA 微型驱动程序,请考虑使用 KsFilterFactoryUpdateCacheData 而不是此例程。 请参阅 KsFilterFactoryUpdateCacheData 参考页上的详细信息。

有关详细信息,请参阅 AVStream 描述符初始化 AVStream 微型驱动程序

要求

要求
最低受支持的客户端 在 Microsoft Windows XP 及更高版本的操作系统以及 DirectX 8.0 及更高版本的 DirectX 中可用。
目标平台 通用
标头 ks.h (包括 Ks.h)
Library Ks.lib
IRQL PASSIVE_LEVEL

另请参阅

DEVICE_OBJECT

DRIVER_OBJECT

KsFilterFactoryUpdateCacheData

KsFilterRegisterPowerCallbacks