Funzione KsStreamPointerAdvanceOffsets (ks.h)

La funzione KsStreamPointerAdvanceOffsets avanza gli offset di StreamPointer.

Sintassi

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

Parametri

[in] StreamPointer

Puntatore a una struttura KSSTREAM_POINTER che rappresenta il puntatore di flusso per cui avanzare gli offset. StreamPointer deve trovarsi nello stato bloccato quando questa funzione viene chiamata.

[in] InUsed

Numero di byte per avanzare il puntatore di input di questo puntatore di flusso.

(StreamPointer -> OffsetIn)

[in] OutUsed

Numero di byte per avanzare il puntatore di output di questo puntatore di flusso

(StreamPointer -> OffsetOut)

[in] Eject

Questo parametro indica se il puntatore di flusso deve essere avanzato al frame di dati successivo Se questo parametro è impostato su TRUE, AVStream avanza il puntatore di flusso indipendentemente dal fatto che l'avanzamento degli offset causa l'avanzamento del puntatore di flusso alla fine di un frame.

Valore restituito

KsStreamPointerAdvanceOffsets restituisce STATUS_SUCCESS sull'esito positivo. Restituisce STATUS_DEVICE_NOT_READY se StreamPointer non è stato bloccato in fase di chiamata o che il puntatore di flusso non è stato bloccato dopo l'avanzamento.

Commenti

AVStream aggiorna i puntatori dati in e out e altri campi correlati in base ai valori richiesti. Se l'avanzamento degli offset comporta zero byte rimanenti nel frame corrente, AVStream avanza il puntatore di flusso al frame di dati successivo e lo riblocca.

È responsabilità del minidriver verificare che StreamPointer sia bloccato prima di chiamare KsStreamPointerAdvanceOffsets. Inoltre, un singolo avanzamento non può avanzare un puntatore di flusso più avanti rispetto all'inizio del frame successivo nella coda. Pertanto, i minidriver non devono tentare di avanzare gli offset in base a un valore maggiore di StreamPointer -> Offset*. Rimanente.

Vedere anche Stream Puntatori.

Requisiti

Requisito Valore
Client minimo supportato Disponibile in Microsoft Windows XP e versioni successive e DirectX 8.0 e versioni successive di DirectX.
Piattaforma di destinazione Universale
Intestazione ks.h (include Ks.h)
Libreria Ks.lib
IRQL <=DISPATCH_LEVEL

Vedi anche

KsStreamPointerAdvance

KsStreamPointerAdvanceOffsetsAndUnlock

KsStreamPointerLock

KsStreamPointerUnlock