Méthode CSourceStream.GetMediaType (Source.h) - paramètres iPosition et pMediaType

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement au nouveau code d’utiliser MediaPlayer, IMFMediaEngine et La capture audio/vidéo dans Media Foundation au lieu de DirectShow, lorsque cela est 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 méthode GetMediaType récupère un type de média préféré.

Syntaxe

virtual HRESULT GetMediaType(
   int        iPosition,
   CMediaType *pMediaType
);

Paramètres

iPosition

Valeur d’index de base zéro.

pMediaType

Pointeur vers un objet CMediaType qui reçoit le type de média.

Valeur renvoyée

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

Code de retour Description
S_OK
Opération réussie.
VFW_S_NO_MORE_ITEMS
Index hors de la plage.
E_INVALIDARG
Index inférieur à zéro.
E_UNEXPECTED
Erreur inattendue.

Notes

Il existe deux versions de cette méthode. Une version remplace la méthode CBasePin::GetMediaType et prend une valeur d’index comme paramètre. L’autre version est conçue pour récupérer un type de média unique, de sorte qu’elle n’a pas le paramètre d’index.

La méthode à paramètre unique retourne E_UNEXPECTED. La méthode à deux paramètres vérifie que le paramètre iPosition est égal à zéro, puis appelle la version à paramètre unique. En fonction du nombre de types de médias pris en charge par le code pin, vous devez remplacer l’une des méthodes suivantes :

  • Si l’épingle prend en charge exactement un type de média, remplacez la version à paramètre unique. Renseignez le type de média pris en charge par l’épingle.
  • Si le code pin prend en charge plusieurs types de média, remplacez la version à deux paramètres. Remplacez également la méthode CSourceStream::CheckMediaType .

Configuration requise

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

Voir aussi

CSourceStream, classe