IAMStreamConfig ::GetFormat, méthode (strmif.h)
[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 GetFormat
méthode récupère le format de sortie actuel ou préféré.
Syntaxe
HRESULT GetFormat(
[out] AM_MEDIA_TYPE **ppmt
);
Paramètres
[out] ppmt
Adresse d’un pointeur vers une structure AM_MEDIA_TYPE .
Valeur retournée
Retourne une valeur HRESULT . Les valeurs possibles sont les suivantes.
Code de retour | Description |
---|---|
|
Réussite. |
|
Mémoire insuffisante. |
|
Valeur du pointeur NULL. |
|
La broche d’entrée n’est pas connectée. |
Remarques
Si la broche est connectée, cette méthode retourne le format utilisé actuellement par la broche. Sinon, la méthode retourne le format préféré de la broche pour la connexion de broche suivante. Si vous avez déjà appelé la méthode IAMStreamConfig ::SetFormat pour définir le format, GetFormat
retourne le même format. Si ce n’est pas le cas, il retourne le premier format de la liste des formats préférés de l’épingle, tel que déterminé par la méthode IPin ::EnumMediaTypes .
La méthode alloue la mémoire pour la structure AM_MEDIA_TYPE , remplit la structure et la retourne dans le paramètre pmt . L’appelant doit libérer la mémoire, y compris le bloc de format. Vous pouvez utiliser la fonction d’assistance DeleteMediaType dans la bibliothèque de classes de base.
Sur certains filtres de compression, la méthode échoue si la broche d’entrée du filtre n’est pas connectée.
Exemples
C++ |
---|
IAMStreamConfig *pConfig = NULL; // Query the output pin for IAMStreamConfig (not shown). AM_MEDIA_TYPE *pmt = NULL; hr = pConfig->GetFormat(&pmt); if (SUCCEEDED(hr)) { /* Examine the media type for any information you need. */ DeleteMediaType(pmt); } pConfig->Release(); |
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | strmif.h (include Dshow.h) |
Bibliothèque | Strmiids.lib |