KsStreamPointerAdvanceOffsets 函数 (ks.h)

KsStreamPointerAdvanceOffsets 函数前移 StreamPointer 的偏移量。

语法

KSDDKAPI NTSTATUS KsStreamPointerAdvanceOffsets(
  [in] PKSSTREAM_POINTER StreamPointer,
  [in] ULONG             InUsed,
  [in] ULONG             OutUsed,
  [in] BOOLEAN           Eject
);

参数

[in] StreamPointer

指向 KSSTREAM_POINTER 结构的指针,该结构表示要推进偏移量的流指针。 调用此函数时,StreamPointer 应处于锁定状态。

[in] InUsed

要推进此流指针的输入指针的字节数。

(StreamPointer -> OffsetIn)

[in] OutUsed

此流指针的输出指针前移的字节数

(StreamPointer -> OffsetOut)

[in] Eject

此参数指示是否应将流指针提升到下一个数据帧 如果此参数设置为 TRUE,AVStream 将推进流指针,而不管推进偏移量是否会导致流指针指向帧的末尾。

返回值

KsStreamPointerAdvanceOffsets 在成功时返回STATUS_SUCCESS。 如果 StreamPointer 在调用时未锁定,或者在升级后无法锁定流指针,则返回STATUS_DEVICE_NOT_READY。

注解

AVStream 按请求的值更新传入和输出数据指针和其他相关字段。 如果推进偏移量导致当前帧中剩余零个字节,AVStream 会将流指针推进到下一个数据帧并重新锁定。

微型驱动程序负责在调用 KsStreamPointerAdvanceOffsets 之前验证 StreamPointer 是否已锁定。 此外,单个提升不能将流指针推进到队列中下一帧的开头。 因此,微型驱动程序不应尝试通过大于 StreamPointer -> Offset* 的值来推进偏移量。剩余

另请参阅Stream指针

要求

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

另请参阅

KsStreamPointerAdvance

KsStreamPointerAdvanceOffsetsAndUnlock

KsStreamPointerLock

KsStreamPointerUnlock