Método CBaseReferenceClock.AdvisePeriodic

[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 AdvisePeriodic método crea una solicitud de aviso periódica. Este método implementa el método IReferenceClock::AdvisePeriodic .

Sintaxis

HRESULT AdvisePeriodic(
   REFERENCE_TIME StartTime,
   REFERENCE_TIME PeriodTime,
   HSEMAPHORE     hSemaphore,
   DWORD_PTR      *pdwAdviseToken
);

Parámetros

StartTime

Hora de la primera notificación, en unidades de 100 nanosegundos. Debe ser mayor que cero y menor que MAX_TIME.

PeriodTime

Tiempo entre las notificaciones, en unidades de 100 nanosegundos. Debe ser mayor que cero.

hSemaphore

Identificador de un semáforo, creado por el autor de la llamada.

pdwAdviseToken

Puntero a una variable que recibe un identificador para la solicitud de aviso.

Valor devuelto

Devuelve uno de los valores HRESULT que se muestran en la tabla siguiente.

Código devuelto Descripción
S_OK
Correcto
E_INVALIDARG
Valores de hora no válidos
E_OUTOFMEMORY
Error
E_POINTER
Argumento de puntero NULL

Observaciones

En cada hora de notificación, el reloj libera el semáforo especificado en el parámetro hSemaphore . Cuando no se requieran más notificaciones, llame al método CBaseReferenceClock::Unadvise y pase el valor pdwAdviseToken devuelto desde esta llamada.

Requisitos

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

Consulte también

CBaseReferenceClock (clase)