Método IMemInputPin::Receive (strmif.h)
[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]
O Receive
método recebe o próximo exemplo de mídia no fluxo.
Sintaxe
HRESULT Receive(
[in] IMediaSample *pSample
);
Parâmetros
[in] pSample
Ponteiro para a interface IMediaSample do exemplo.
Retornar valor
Retorna um valor HRESULT . Os valores possíveis incluem aqueles mostrados na tabela a seguir.
Código de retorno | Descrição |
---|---|
|
Êxito. |
|
A amostra foi rejeitada. |
|
Argumento de ponteiro NULL. |
|
Tipo de mídia inválido. |
|
Ocorreu um erro em tempo de execução. |
|
O pino está parado. |
Comentários
Esse método é síncrono e possivelmente bloqueado. O pino faz um dos seguintes procedimentos:
- Rejeita o exemplo.
- Retorna imediatamente e processa o exemplo em um thread de trabalho.
- Processa o exemplo antes de retornar.
Se o pino usar um thread de trabalho para processar o exemplo, ele conterá uma contagem de referência no exemplo. De qualquer forma, o pino de saída não pode reutilização direta deste exemplo. Ele deve chamar o método IMemAllocator::GetBuffer para obter uma nova amostra.
Se esse método retornar S_FALSE ou um código de erro, o filtro de upstream deverá parar de enviar amostras até que o grafo pare ou conclua uma operação de liberação. Os motivos típicos para um valor retornado S_FALSE incluem:
- O pino downstream está sendo liberado; ou seja, recebeu uma chamada beginflush e ainda não recebeu uma chamada endflush .
- O filtro downstream detectou o final do fluxo. (Consulte Notificações de fim de Stream.)
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | strmif.h (inclua Dshow.h) |
Biblioteca | Strmiids.lib |