Méthode CPosPassThru.GetCurrentPosition

[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 GetCurrentPosition méthode récupère la position actuelle, par rapport à la durée totale du flux. Cette méthode implémente la méthode IMediaSeeking::GetCurrentPosition .

Syntaxe

HRESULT GetCurrentPosition(
   LONGLONG *pCurrent
);

Paramètres

pCurrent

Pointeur vers une variable qui reçoit la position actuelle, en unités du format d’heure actuel.

Valeur renvoyée

Retourne une valeur HRESULT . Les valeurs possibles incluent celles indiquées dans le tableau suivant.

Code de retour Description
S_OK
Opération réussie.
E_NOTIMPL
La méthode n’est pas prise en charge.
E_POINTER
Argument pointeur NULL .

Notes

Cette méthode appelle la méthode CPosPassThru::GetMediaTime pour récupérer la position la plus récente. Si GetMediaTime échoue, la méthode appelle IMediaSeeking::GetCurrentPosition sur la broche connectée.

La méthode GetMediaTime échoue par défaut dans la classe de base. Si votre filtre met en cache la position actuelle, remplacez GetMediaTime pour retourner la valeur mise en cache.

Configuration requise

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

Voir aussi

CPosPassThru, classe