Compartilhar via


Método CBaseRenderer.ShouldDrawSampleNow

[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na 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 Captura de Áudio/Vídeo no 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 ShouldDrawSampleNow método determina como um exemplo é agendado para renderização.

Sintaxe

virtual HRESULT ShouldDrawSampleNow(
   IMediaSample   *pMediaSample,
   REFERENCE_TIME *pStartTime,
   REFERENCE_TIME *pEndTime
);

Parâmetros

pMediaSample

Ponteiro para a interface IMediaSample do exemplo.

pStartTime

Ponteiro para uma variável que contém a hora de início do exemplo.

pEndTime

Ponteiro para uma variável que contém a hora de término da amostra.

Retornar valor

Retorna S_FALSE. Se a classe derivada substituir esse método, retorne um dos valores mostrados na tabela a seguir.

Código de retorno Descrição
S_OK
O exemplo deve ser renderizado imediatamente.
S_FALSE
O exemplo deve ser agendado para renderização, com base nos carimbos de data/hora.
Código do erro
Não renderize este exemplo.

Comentários

O método CBaseRenderer::GetSampleTimes chama esse método. Por padrão, os exemplos são sempre agendados para renderização com base em seus carimbos de data/hora. A classe derivada pode substituir esse método; por exemplo, para implementar o controle de qualidade.

Requisitos

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

Confira também

Classe CBaseRenderer