IMFTransform::SetOutputType-Methode (mftransform.h)
Legt fest, testet oder löscht den Medientyp für einen Ausgabestream in dieser Media Foundation-Transformation (MFT).
Syntax
HRESULT SetOutputType(
[in] DWORD dwOutputStreamID,
[in] IMFMediaType *pType,
[in] DWORD dwFlags
);
Parameter
[in] dwOutputStreamID
Ausgabedatenstrombezeichner. Um die Liste der Streambezeichner abzurufen, rufen Sie IMFTransform::GetStreamIDs auf.
[in] pType
Zeiger auf die IMFMediaType-Schnittstelle oder NULL.
[in] dwFlags
Null oder mehr Flags aus der _MFT_SET_TYPE_FLAGS-Enumeration .
Rückgabewert
Die Methode gibt ein HRESULT zurück. Mögliches Werte (aber nicht die Einzigen) sind die in der folgenden Tabelle.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Die Methode wurde erfolgreich ausgeführt. |
|
Die Transformation kann den vorgeschlagenen Medientyp nicht verwenden. |
|
Ungültiger Streambezeichner. |
|
Der vorgeschlagene Typ ist ungültig. Dieser Fehlercode gibt an, dass der Medientyp selbst nicht ordnungsgemäß konfiguriert ist. Beispielsweise kann es sich gegenseitig widersprechende Flags enthalten. |
|
Der MFT kann beim Verarbeiten von Daten keine Typen wechseln. Versuchen Sie, den MFT zu entwässern oder zu leeren. |
|
Sie müssen die Eingabetypen festlegen, bevor Sie die Ausgabetypen festlegen. |
|
Der MFT konnte keine geeignete DirectX-Videobeschleunigungskonfiguration (DXVA) finden. |
Hinweise
Diese Methode kann zum Festlegen, Testen ohne Einstellung oder Löschen des Medientyps verwendet werden:
- Um den Medientyp festzulegen, legen Sie dwFlags auf Null und pType auf einen Nicht-NULL-Zeiger fest, der den Medientyp angibt.
- Um den Medientyp zu testen, ohne ihn festzulegen, legen Sie dwFlags auf MFT_SET_TYPE_TEST_ONLY fest, und legen Sie pType auf einen Nicht-NULL-Zeiger fest, der den Medientyp angibt. Wenn der Medientyp akzeptabel ist, gibt die Methode S_OK zurück. Andernfalls wird MF_E_INVALIDMEDIATYPE zurückgegeben. Unabhängig vom Rückgabewert ändert sich der aktuelle Medientyp nicht.
- Um den Medientyp zu löschen, legen Sie pType auf NULL fest.
Ein MFT erfordert möglicherweise, dass der Aufrufer einen oder mehrere Eingabetypen festlegt, bevor er den Ausgabetyp festlegt. Wenn ja, gibt die Methode MF_E_TRANSFORM_TYPE_NOT_SET zurück.
Wenn der MFT directX Video Acceleration (DXVA) unterstützt, aber keine geeignete DXVA-Konfiguration finden kann (z. B. wenn der Grafiktreiber nicht über die richtigen Funktionen verfügt), sollte die Methode MF_E_UNSUPPORTED_D3D_TYPE zurückgeben. Weitere Informationen finden Sie unter Unterstützen von DXVA 2.0 in Media Foundation.
Wenn MFT_UNIQUE_METHOD_NAMES vor dem Einschließen von mftransform.h definiert ist, wird diese Methode in MFTSetOutputType umbenannt. Weitere Informationen finden Sie unter Erstellen von DMO/MFT-Hybridobjekten.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | mftransform.h |
Bibliothek | Mfuuid.lib |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für