IMFDeviceTransform::GetStreamIDs-Methode (mftransform.h)
Die GetStreamIDs-Methode ruft die Streambezeichner für die Eingabe- und Ausgabestreams für diese Media Foundation-Transformation (MFT) ab.
Syntax
HRESULT GetStreamIDs(
[in] DWORD dwInputIDArraySize,
[out] DWORD *pdwInputStreamIds,
[out] DWORD dwOutputIDArraySize,
DWORD *pdwOutputStreamIds
);
Parameter
[in] dwInputIDArraySize
Die Anzahl der Elemente in pdwInputStreamIDs
[out] pdwInputStreamIds
Ein Zeiger auf ein vom Aufrufer zugeordnetes Array. Die -Methode füllt das Array mit den Eingabestrombezeichnern. Die Arraygröße muss mindestens der Anzahl der Eingabeströme entsprechen. Um die Anzahl der Eingabestreams abzurufen, rufen Sie IMFDeviceTransform::GetStreamCount auf.
Wenn der Aufrufer ein Array übergibt, das größer als die Anzahl der Eingabedatenströme ist, darf der MFT keine Werte in die zusätzlichen Arrayeinträge schreiben.
[out] dwOutputIDArraySize
Die Anzahl der Elemente in pdwOutputStreamIDs.
pdwOutputStreamIds
Ein Zeiger auf ein vom Aufrufer zugeordnetes Array. Die -Methode füllt das Array mit den Ausgabedatenstrombezeichnern. Die Arraygröße muss mindestens der Anzahl der Ausgabestreams entsprechen. Um die Anzahl der Ausgabestreams abzurufen, rufen Sie IMFDeviceTransform::GetStreamCount auf.
Rückgabewert
Die Methode gibt ein HRESULT zurück. Mögliche Werte sind u. a. Werte, die in der folgenden Tabelle angegeben sind.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Der Übergang des Streamzustands war erfolgreich. |
|
Ungültiger Zeiger übergeben. |
|
Der einströmende Puffer verfügt nicht über genügend Speicherplatz, um die Stream-IDs auszufüllen. |
Hinweise
Streambezeichner sind erforderlich, da einige MFTs Streams hinzufügen oder entfernen können, sodass der Index eines Datenstroms möglicherweise nicht eindeutig ist. Daher nehmen IMFDeviceTransform-Methoden , die für Datenströme arbeiten, Streambezeichner an.
Alle Eingabedatenstrombezeichner müssen innerhalb eines MFT eindeutig sein, und alle Ausgabedatenstrombezeichner müssen eindeutig sein. Ein Eingabedatenstrom und ein Ausgabedatenstrom können jedoch denselben Bezeichner verwenden. I
Wenn der Client einen Eingabedatenstrom hinzufügt, weist der Client den Bezeichner zu, sodass der MFT beliebige Bezeichner zulassen muss, solange sie eindeutig sind. Wenn der MFT einen Ausgabedatenstrom erstellt, weist der MFT den Bezeichner zu.
Wenn ein MFT genau einen festen Eingabedatenstrom und einen festen Ausgabedatenstrom aufweist, sollte er beiden Streams den Bezeichner 0 zuweisen.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 10, Version 1703 |
Zielplattform | Windows |
Kopfzeile | mftransform.h |