Méthode CBaseRenderer.WaitForRenderTime

[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 WaitForRenderTime méthode attend l’heure de présentation de l’exemple actuel.

Syntaxe

virtual HRESULT WaitForRenderTime();

Paramètres

Cette méthode n’a aucun paramètre.

Valeur retournée

Retourne l’une des valeurs HRESULT suivantes.

Code de retour Description
S_OK
Opération réussie.
VFW_E_STATE_CHANGED
L’état du filtre a changé avant l’arrivée de l’heure de présentation.

Notes

Cette méthode attend que l’une des opérations suivantes se produise :

  • L’heure de présentation de l’exemple arrive, auquel cas l’exemple peut être rendu.
  • Le filtre arrête ou commence le vidage des données.

Si l’heure de présentation arrive, l’événement CBaseRenderer::m_RenderEvent est signalé. Si l’état change, l’événement CBaseRenderer::m_ThreadSignal est signalé. Cette méthode attend les deux événements. La classe dérivée peut remplacer cette méthode pour attendre des événements supplémentaires, si nécessaire.

Cette méthode appelle la méthode CBaseRenderer::OnWaitStart lorsque l’attente commence, et la méthode CBaseRenderer::OnWaitEnd lorsque l’attente est terminée. Aucune méthode ne fait quoi que ce soit dans la classe de base, mais la classe dérivée peut les remplacer.

Configuration requise

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

Voir aussi

CBaseRenderer, classe