Partager via


Méthode CBasePin.TryMediaTypes

[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.]

Étant donné la liste des types de médias, la TryMediaTypes méthode tente d’effectuer une connexion à l’aide de l’un de ces types.

Syntaxe

virtual HRESULT TryMediaTypes(
         IPin            *pReceivePin,
   const CMediaType      *pmt,
         IEnumMediaTypes *pEnum
);

Paramètres

pReceivePin

Pointeur vers l’interface IPin de la broche de réception.

Pmt

Pointeur vers un objet CMediaType qui limite les types de médias possibles, ou NULL.

pEnum

Pointeur vers une interface IEnumMediaTypes , utilisé pour énumérer la liste des types de médias.

Valeur renvoyée

Retourne une valeur HRESULT . Les valeurs possibles incluent celles du tableau suivant.

Code de retour Description
S_OK
Opération réussie.
VFW_E_NO_ACCEPTABLE_TYPES
N’a pas trouvé de type de média acceptable.

Notes

Pour chaque type de média retourné par l’interface IEnumMediaTypes , cette méthode tente une connexion en appelant la méthode CBasePin::AttemptConnection .

Si le paramètre pmt n’a pas la valeur NULL, la broche ignore les types de médias qui ne correspondent pas à ce type. Le paramètre pmt peut spécifier un type de média partiel. Un type de média partiel a la valeur GUID_NULL pour le type principal, le sous-type ou le format. La valeur GUID_NULL correspond à n’importe quel type, semblable à une valeur générique.

Configuration requise

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

Voir aussi

Classe CBasePin