Partager via


Méthode CBaseReferenceClock.AdvisePeriodic

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture in Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation au lieu de DirectShow, si possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

La AdvisePeriodic méthode crée une demande d’avis périodique. Cette méthode implémente la méthode IReferenceClock::AdvisePeriodic .

Syntaxe

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

Paramètres

StartTime

Heure de la première notification, en unités de 100 nanosecondes. Doit être supérieur à zéro et inférieur à MAX_TIME.

PeriodTime

Temps entre les notifications, en unités de 100 nanosecondes. Doit être supérieur à zéro.

hSemaphore

Handle vers un sémaphore, créé par l’appelant.

pdwAdviseToken

Pointeur vers une variable qui reçoit un identificateur pour la demande de conseil.

Valeur renvoyée

Retourne l’une des valeurs HRESULT indiquées dans le tableau suivant.

Code de retour Description
S_OK
Succès
E_INVALIDARG
Valeurs de temps non valides
E_OUTOFMEMORY
Échec
E_POINTER
Argument pointeur NULL

Notes

À chaque heure de notification, l’horloge libère le sémaphore spécifié dans le paramètre hSemaphore . Lorsqu’aucune autre notification n’est requise, appelez la méthode CBaseReferenceClock::Unadvise et transmettez la valeur pdwAdviseToken retournée par cet appel.

Configuration requise

Condition requise Valeur
En-tête
Refclock.h (include Streams.h)
Bibliothèque
Strmbase.lib (builds de vente au détail) ;
Strmbasd.lib (builds de débogage)

Voir aussi

CBaseReferenceClock, classe