Share via


Método IPortWavePciStream::TerminatePacket (portcls.h)

O TerminatePacket método encerra o pacote que está sendo mapeado no momento.

Sintaxe

NTSTATUS TerminatePacket();

Retornar valor

TerminatePacket retornará STATUS_SUCCESS se a chamada tiver sido bem-sucedida. Caso contrário, o método retornará um código de erro apropriado.

Comentários

Esse método é usado principalmente para capturar situações em que os pacotes de E/S precisam terminar em pontos específicos no fluxo (por exemplo, para sincronizar com quadros de vídeo). O buffer de dados para um pino de captura em um dispositivo de áudio consiste em um ou mais pacotes de E/S. Cada pacote de E/S é a parte do buffer de dados anexada a um IRP de mapeamento específico. Por padrão, enquanto um fluxo de captura está no estado KSSTATE_RUN, o conteúdo de um pacote de E/S fica disponível para o cliente somente quando o último mapeamento no pacote é preenchido. O TerminatePacket método torna um pacote parcialmente preenchido imediatamente disponível para o cliente sem esperar por dados de captura adicionais.

Alterar o estado de um fluxo de captura de KSSTATE_RUN para KSSTATE_STOP encerra automaticamente o pacote de E/S atual.

Requisitos

Requisito Valor
Plataforma de Destino Universal
Cabeçalho portcls.h (inclua Portcls.h)
IRQL <=DISPATCH_LEVEL