Compartilhar via


Função KsStreamPointerAdvanceOffsets (ks.h)

A função KsStreamPointerAdvanceOffsets avança os deslocamentos do StreamPointer.

Sintaxe

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

Parâmetros

[in] StreamPointer

Um ponteiro para uma estrutura KSSTREAM_POINTER que representa o ponteiro de fluxo para o qual avançar os deslocamentos. O StreamPointer deve estar no estado bloqueado quando essa função for chamada.

[in] InUsed

O número de bytes para avançar o ponteiro de entrada desse ponteiro de fluxo.

(StreamPointer -> OffsetIn)

[in] OutUsed

O número de bytes para avançar o ponteiro de saída desse ponteiro de fluxo

(StreamPointer -> OffsetOut)

[in] Eject

Esse parâmetro indica se o ponteiro de fluxo deve ser avançado para o próximo quadro de dados Se esse parâmetro for definido como TRUE, o AVStream avançará o ponteiro de fluxo, independentemente de o avanço dos deslocamentos fazer com que o ponteiro de fluxo aponte para o final de um quadro.

Retornar valor

KsStreamPointerAdvanceOffsets retorna STATUS_SUCCESS com êxito. Retorna STATUS_DEVICE_NOT_READY se o StreamPointer não foi bloqueado no momento da chamada ou se o ponteiro de fluxo não pôde ser bloqueado após o avanço.

Comentários

O AVStream atualiza os ponteiros de dados de entrada e saída e outros campos relacionados pelos valores solicitados. Se o avanço dos deslocamentos resultar em zero bytes restantes no quadro atual, o AVStream avançará o ponteiro de fluxo para o próximo quadro de dados e o cadeia novamente.

É responsabilidade do minidriver verificar se o StreamPointer está bloqueado antes de chamar KsStreamPointerAdvanceOffsets. Além disso, um único avanço não pode avançar um ponteiro de fluxo além do início do próximo quadro na fila. Portanto, os minidrivers não devem tentar avançar deslocamentos por um valor maior que StreamPointer -> Offset*. Restante.

Consulte também Stream Ponteiros.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Microsoft Windows XP e em sistemas operacionais posteriores e no DirectX 8.0 e versões posteriores do DirectX.
Plataforma de Destino Universal
Cabeçalho ks.h (inclua Ks.h)
Biblioteca Ks.lib
IRQL <=DISPATCH_LEVEL

Confira também

KsStreamPointerAdvance

KsStreamPointerAdvanceOffsetsAndUnlock

KsStreamPointerLock

KsStreamPointerUnlock