Partager via


KsStreamPointerAdvanceOffsets, fonction (ks.h)

La fonction KsStreamPointerAdvanceOffsets avance les décalages de streamPointer.

Syntaxe

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

Paramètres

[in] StreamPointer

Pointeur vers une structure KSSTREAM_POINTER représentant le pointeur de flux pour lequel avancer les décalages. StreamPointer doit être dans l’état verrouillé lorsque cette fonction est appelée.

[in] InUsed

Nombre d’octets à faire avancer le pointeur d’entrée de ce pointeur de flux.

(StreamPointer -> OffsetIn)

[in] OutUsed

Nombre d’octets à faire avancer le pointeur de sortie de ce pointeur de flux

(StreamPointer -> OffsetOut)

[in] Eject

Ce paramètre indique si le pointeur de flux doit être avancé vers la trame de données suivante Si ce paramètre est défini sur TRUE, AVStream avance le pointeur de flux, que l’avancement des décalages entraîne le pointeur du flux à pointer vers la fin d’une trame.

Valeur de retour

KsStreamPointerAdvanceOffsets retourne STATUS_SUCCESS en cas de réussite. Retourne STATUS_DEVICE_NOT_READY si StreamPointer n’a pas été verrouillée au moment de l’appel ou si le pointeur de flux n’a pas pu être verrouillé après l’avancement.

Remarques

AVStream met à jour les pointeurs de données entrants et sortants et d’autres champs associés par les valeurs demandées. Si l’avancement des décalages entraîne l’absence d’octets dans l’image actuelle, AVStream avance le pointeur de flux vers la trame de données suivante et le verrouille à nouveau.

Il incombe au minidriver de vérifier que StreamPointer est verrouillé avant d’appeler KsStreamPointerAdvanceOffsets. En outre, une seule progression ne peut pas avancer un pointeur de flux plus loin que le début de l’image suivante dans la file d’attente. Par conséquent, les minidrivers ne doivent pas tenter d’avancer les décalages par une valeur supérieure à StreamPointer -> Offset*.restante .

Voir également pointeurs de flux.

Exigences

Exigence Valeur
client minimum pris en charge Disponible dans Microsoft Windows XP et les systèmes d’exploitation ultérieurs et DirectX 8.0 et versions ultérieures de DirectX.
plateforme cible Universel
d’en-tête ks.h (include Ks.h)
bibliothèque Ks.lib
IRQL <=DISPATCH_LEVEL

Voir aussi

KsStreamPointerAdvance

KsStreamPointerAdvanceOffsetsAndUnlock

KsStreamPointerLock

KsStreamPointerUnlock