Función KsStreamPointerAdvanceOffsets (ks.h)

La función KsStreamPointerAdvanceOffsets avanza los desplazamientos de StreamPointer.

Sintaxis

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

Parámetros

[in] StreamPointer

Puntero a una estructura de KSSTREAM_POINTER que representa el puntero de flujo para el que se van a avanzar los desplazamientos. StreamPointer debe estar en estado bloqueado cuando se llama a esta función.

[in] InUsed

Número de bytes que se van a avanzar en el puntero de entrada de este puntero de flujo.

(StreamPointer:> OffsetIn)

[in] OutUsed

Número de bytes que se van a avanzar en el puntero de salida de este puntero de secuencia.

(StreamPointer:> OffsetOut)

[in] Eject

Este parámetro indica si el puntero de secuencia debe avanzar hasta la siguiente trama de datos Si este parámetro está establecido en TRUE, AVStream avanza el puntero de secuencia independientemente de si avanzar los desplazamientos hace que el puntero de secuencia apunte al final de un fotograma.

Valor devuelto

KsStreamPointerAdvanceOffsets devuelve STATUS_SUCCESS si se ejecuta correctamente. Devuelve STATUS_DEVICE_NOT_READY si StreamPointer no estaba bloqueado en el momento de la llamada o si el puntero de secuencia no se pudo bloquear después del avance.

Comentarios

AVStream actualiza los punteros de datos de entrada y salida y otros campos relacionados por los valores solicitados. Si avanzar los desplazamientos da como resultado cero bytes restantes en el marco actual, AVStream avanza el puntero de secuencia al siguiente marco de datos y lo vuelve a bloquear.

Es responsabilidad del minidriver comprobar que StreamPointer está bloqueado antes de llamar a KsStreamPointerAdvanceOffsets. Además, un solo avance no puede avanzar un puntero de secuencia más allá del principio del siguiente fotograma de la cola. Por lo tanto, los minidrivers no deben intentar avanzar desplazamientos por un valor mayor que StreamPointer -> Offset*. Restante.

Consulte también Stream punteros.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Microsoft Windows XP y en sistemas operativos posteriores y DirectX 8.0 y versiones posteriores de DirectX.
Plataforma de destino Universal
Encabezado ks.h (incluye Ks.h)
Library Ks.lib
IRQL <=DISPATCH_LEVEL

Consulte también

KsStreamPointerAdvance

KsStreamPointerAdvanceOffsetsAndUnlock

KsStreamPointerLock

KsStreamPointerUnlock