Freigeben über


CEnumMediaTypes.Next-Methode

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde von MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation abgelöst. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code mediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]

Die Next -Methode ruft eine angegebene Anzahl von Medientypen ab. Diese Methode implementiert die IEnumMediaTypes::Next-Methode .

Syntax

HRESULT Next(
   ULONG         cMediaTypes,
   AM_MEDIA_TYPE **ppMediaTypes,
   ULONG         *pcFetched
);

Parameter

cMediaTypes

Anzahl der abzurufenden Medientypen.

ppMediaTypes

Array von Zeigern auf AM_MEDIA_TYPE Strukturen der Größe cPins.

pcFetched

Zeiger auf eine Variable, die die Anzahl der von der Methode zurückgegebenen Medientypen empfängt. Kann NULL sein, wenn cMediaTypes 1 ist.

Rückgabewert

Gibt einen der in der folgenden Tabelle gezeigten HRESULT-Werte zurück.

Rückgabecode Beschreibung
S_FALSE
Es wurden nicht so viele Medientypen wie angefordert abgerufen.
S_OK
Erfolg.
E_INVALIDARG
Ungültiges Argument.
E_POINTER
NULL-Zeigerargument.
VFW_E_ENUM_OUT_OF_SYNC
Der Status des Pins hat sich geändert und ist jetzt mit dem Enumerator inkonsistent.

Bemerkungen

Wenn die Methode erfolgreich ist, enthält das von ppMediaTypes angegebene Array Zeiger auf AM_MEDIA_TYPE Strukturen. Die Anzahl der Strukturen ist gleich *pcFetched. Geben Sie jeden Medientyp frei, indem Sie die DeleteMediaType-Funktion aufrufen.

Diese Methode ruft die CBasePin::GetMediaType-Methode des Pins auf, um die Medientypen abzurufen.

Anforderungen

Anforderung Wert
Header
Amfilter.h (streams.h einschließen)
Bibliothek
Strmbase.lib (Einzelhandelsbuilds);
Strmbasd.lib (Debugbuilds)

Siehe auch

CEnumMediaTypes-Klasse