Método CBaseRenderer.GetSampleTimes

[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.

El GetSampleTimes método recupera las marcas de tiempo de un ejemplo.

Sintaxis

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

Parámetros

pMediaSample

Puntero a la interfaz IMediaSample del ejemplo.

pStartTime

Puntero a una variable que recibe la hora de inicio.

pEndTime

Puntero a una variable que recibe la hora de finalización.

Valor devuelto

Devuelve un valor HRESULT . Entre los valores posibles se incluyen los que se muestran en la tabla siguiente.

Código devuelto Descripción
S_OK
El ejemplo se debe representar inmediatamente.
S_FALSE
El ejemplo debe programarse para la representación, en función de las marcas de tiempo.
E_FAIL
No represente este ejemplo.
VFW_E_START_TIME_AFTER_END
Marca de tiempo incorrecta: la hora de finalización es anterior a la hora de inicio.

Observaciones

El filtro llama a este método para determinar cómo debe controlar un ejemplo. Si el valor devuelto es S_OK, el filtro representa el ejemplo inmediatamente. Si el valor devuelto es S_FALSE, el filtro programa el ejemplo para la representación, en función de las marcas de tiempo. Si el valor devuelto es un código de error, el filtro rechaza el ejemplo.

Este método devuelve S_OK si el ejemplo no tiene marcas de tiempo o si el filtro no tiene un reloj de referencia. De lo contrario, devuelve el valor del método CBaseRenderer::ShouldDrawSampleNow . En la clase base, ShouldDrawSampleNow siempre devuelve S_FALSE. La clase derivada puede invalidar este comportamiento. Por ejemplo, si la clase derivada implementa la administración del control de calidad, podría devolver E_FAIL quitar un ejemplo.

Requisitos

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

Consulte también

CBaseRenderer (clase)