Método CBaseRenderer.Receive

El Receive método recibe el siguiente ejemplo multimedia en la secuencia.

Sintaxis

virtual Receive(
   IMediaSample *pMediaSample
);

Parámetros

pMediaSample

Puntero a la interfaz IMediaSample del ejemplo.

Valor devuelto

Devuelve S _ OK si se realiza correctamente o un valor HRESULT que indica la causa del error.

Observaciones

El pin de entrada llama a este método cuando recibe un ejemplo del filtro ascendente.

Si el filtro se está ejecutando, este método realiza los pasos siguientes:

  1. Programa el ejemplo para su representación (CBaseRenderer::P repareReceive).
  2. Espera la hora programada (CBaseRenderer::WaitForRenderTime).
  3. Representa el ejemplo (CBaseRenderer::Render).
  4. Libera el ejemplo (CBaseRenderer::ClearPendingSample).

Si el filtro está en pausa, el método realiza los pasos siguientes:

  1. Notifica a la clase derivada que hay disponible un ejemplo (CBaseRenderer::OnReceiveFirstSample).
  2. Espera a la hora programada.
  3. Representa el ejemplo.
  4. Libera el ejemplo.

Mientras está en pausa, el método espera en el paso 2 hasta que el filtro cambia a un estado de ejecución. En ese momento, el filtro programa el ejemplo.

En la clase base, el método OnReceiveFirstSample no hace nada. La clase derivada puede invalidarla. Por ejemplo, cuando un representador de vídeo está en pausa, muestra el primer ejemplo como una imagen fija.

Requisitos

Requisito Value
Encabezado
Renbase.h (incluir Secuencias.h)
Biblioteca
Strmbase.lib (compilaciones comerciales);
Strmbasd.lib (compilaciones de depuración)

Vea también

CBaseRenderer (clase)