PFNKSPIN 回调函数 (ks.h)
在以下情况下调用 AVStream 微型驱动程序的回调例程:
语法
PFNKSPIN Pfnkspin;
NTSTATUS Pfnkspin(
[in] PKSPIN Pin
)
{...}
参数
[in] Pin
指向具有可供处理的帧数据的 KSPIN 的指针。
返回值
返回STATUS_SUCCESS以继续处理。 返回STATUS_PENDING以停止处理,直到下一个触发事件。
注解
关于 AVStrMiniPinProcess
微型驱动程序在其KSPIN_DISPATCH结构的 Process 成员中指定此例程的地址。
通过提供此调度函数指示筛选器使用 以引脚为中心的处理 。 微型驱动程序在确定 AVStream 何时调用 AVStrMiniPinProcess 的相关KSPIN_DESCRIPTOR_EX结构中设置 pin 标志。 如果微型驱动程序未在描述符中设置任何标志,则默认行为是,当新数据到达以前空的队列时,AVStream 调用 AVStrMiniPinProcess 。 有关处理触发器的更多详细信息,请参阅 Pin-Centric 处理。
处理后,微型驱动程序可以通过克隆前导边缘流指针来阻止帧完成。 为此,请调用 KsStreamPointerClone。 请参阅前导和尾随边缘Stream指针。
或者,通过在 KSPIN_DESCRIPTOR_EX 上设置KSPIN_FLAG_DISTINCT_TRAILING_EDGE来指定不同的尾边。 第三个选项是不推进前导流指针。
进程调度是在默认 IRQL = PASSIVE_LEVEL处进行的,如果微型驱动程序在相关KSPIN_DESCRIPTOR_EX中指定了KSPIN_FLAG_DISPATCH_LEVEL_PROCESSING,则可能在 DISPATCH_LEVEL。
此例程是可选的。
关于 AVStrMiniPinConnect
微型驱动程序在其KSPIN_DISPATCH结构的 Connect 成员中指定此例程的地址。
返回STATUS_SUCCESS或尝试建立内部连接时返回的错误。 不要返回STATUS_PENDING。
此例程是可选的。
另请参阅 KS 引脚。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 Microsoft Windows XP 及更高版本的操作系统以及 DirectX 8.0 及更高版本的 DirectX 中可用。 |
目标平台 | 桌面 |
标头 | ks.h (包括 Ks.h) |
IRQL | (请参阅“备注”部分) |