Método CBaseInputPin.ReceiveMultiple

O ReceiveMultiple método recebe uma matriz de exemplos. Esse método implementa o método IMemInputPin::ReceiveMultiple .

Sintaxe

HRESULT ReceiveMultiple(
   IMediaSample **pSamples,
   long         nSamples,
   long         *nSamplesProcessed
);

Parâmetros

pSamples

Endereço de uma matriz de ponteiros IMediaSample , de tamanho nSamples.

nSamples

Número de exemplos a serem processados.

nSamplesProcessed

Ponteiro para uma variável que recebe o número de amostras que foram processadas.

Retornar valor

Retorna um valor HRESULT . Os valores possíveis incluem os listados na tabela a seguir.

Código de retorno Descrição
S_OK
Sucesso.
S_FALSE
O pino está sendo liberado no momento; exemplo foi rejeitado.
E_POINTER
Argumento de ponteiro NULL.
VFW_E_INVALIDMEDIATYPE
Tipo de mídia inválido.
VFW_E_RUNTIME_ERROR
Ocorreu um erro em tempo de execução.
VFW_E_WRONG_STATE
O pino está parado.

Comentários

Esse método se comporta como o método CBaseInputPin::Receive , mas recebe uma matriz de exemplos. Na classe base, o método faz loops pela matriz e chama Receive com cada exemplo. Substitua essa função se o filtro puder processar lotes de amostras com mais eficiência do que processá-los um de cada vez.

Requisitos

Requisito Valor
parâmetro
Amfilter.h (inclua Fluxos.h)
Biblioteca
Strmbase.lib (builds de varejo);
Strmbasd.lib (builds de depuração)

Confira também

Classe CBaseInputPin