Méthode CBaseReferenceClock.AdviseTime

[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 AdviseTime méthode crée une demande d’avis one shot. Cette méthode implémente la méthode IReferenceClock::AdviseTime .

Syntaxe

HRESULT AdviseTime(
   REFERENCE_TIME baseTime,
   REFERENCE_TIME streamTime,
   HEVENT         hEvent,
   DWORD_PTR      *pdwAdviseToken
);

Paramètres

baseTime

Temps de référence de base, en unités de 100 nanosecondes.

streamTime

Temps de décalage du flux, en unités de 100 nanosecondes.

hEvent

Gérez un événement, 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

Cette méthode crée une requête de conseil one-shot pour l’heure de référence baseTime + streamTime. La somme doit être supérieure à zéro et inférieure à MAX_TIME, sinon la méthode retourne E_INVALIDARG. À l’heure demandée, l’horloge signale l’événement spécifié dans le paramètre hEvent .

Pour annuler la notification avant que l’heure soit atteinte, appelez la méthode CBaseReferenceClock::Unadvise et transmettez la valeur pdwAdviseToken retournée par cet appel. Une fois la notification effectuée, l’horloge l’efface automatiquement. Il n’est donc pas nécessaire d’appeler Unadvise. Toutefois, il ne s’agit pas d’une erreur.

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