IEnumMediaTypes ::Next, 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 méthode Next récupère un nombre spécifié de types de médias.

Syntaxe

HRESULT Next(
  [in]  ULONG         cMediaTypes,
  [out] AM_MEDIA_TYPE **ppMediaTypes,
  [out] ULONG         *pcFetched
);

Paramètres

[in] cMediaTypes

Nombre de types de médias à récupérer.

[out] ppMediaTypes

Adresse d’un tableau de pointeurs AM_MEDIA_TYPE . Le nombre d’éléments dans le tableau est donné dans le paramètre cMediaTypes .

[out] pcFetched

Reçoit le nombre de types de médias retournés dans ppMediaTypes. Ce paramètre peut avoir la valeur NULL si cMediaTypes a la valeur 1.

Valeur retournée

Retourne l’une des valeurs HRESULT suivantes.

Code de retour Description
S_FALSE
N’a pas récupéré autant de types de médias que demandé.
S_OK
Réussite.
E_INVALIDARG
Argument non valide.
E_POINTER
Argument pointeur NULL .
VFW_E_ENUM_OUT_OF_SYNC
L’état de la broche a changé et est désormais incohérent avec l’énumérateur.

Remarques

L’appelant passe un tableau de pointeurs AM_MEDIA_TYPE dans ppMediaTypes. La méthode alloue un nombre AM_MEDIA_TYPE structures égal à cMediaTypes ou au nombre de types de médias qui restent dans l’énumération, selon la valeur inférieure. Le nombre de structures allouées est retourné dans pcFetched. Supprimez chaque structure en appelant la fonction DeleteMediaType .

Si l’ensemble de types de médias change, l’énumérateur devient incohérent avec la broche propriétaire. Dans ce cas, la méthode retourne VFW_E_ENUM_OUT_OF_SYNC. Ignorez toutes les données obtenues à partir des appels précédents à l’énumérateur, car elles peuvent être non valides. Mettez à jour l’énumérateur en appelant la méthode IEnumMediaTypes ::Reset . Vous pouvez ensuite appeler la méthode Next en toute sécurité.

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

Voir aussi

Énumération des types de supports

Codes d’erreur et de réussite

IEnumMediaTypes, interface