MFCreateTranscodeTopology-Funktion (mfidl.h)
Erstellt eine partielle Transcodierungstopologie.
Der zugrunde liegende Topologie-Generator erstellt eine partielle Topologie, indem er die erforderlichen Pipelineobjekte verbindet: Quelle, Encoder und Senke. Der Encoder und die Senke werden gemäß den Vom Aufrufer im Transcodierungsprofil angegebenen Einstellungen konfiguriert.
Um das Transcodierungsprofilobjekt zu erstellen, rufen Sie die MFCreateTranscodeProfile-Funktion auf, und legen Sie die erforderlichen Attribute fest, indem Sie die entsprechenden IMFTranscodeProfile-Methoden aufrufen.
Das konfigurierte Transcodierungsprofil wird an die MFCreateTranscodeTopology-Funktion übergeben, die die Transcodierungstopologie mit den entsprechenden Einstellungen erstellt. Der Aufrufer kann dann diese Topologie für die Mediensitzung festlegen und die Sitzung starten, um den Codierungsvorgang zu starten. Wenn die Mediensitzung endet, wird die transcodierte Datei generiert.
Syntax
HRESULT MFCreateTranscodeTopology(
[in] IMFMediaSource *pSrc,
[in] LPCWSTR pwszOutputFilePath,
[in] IMFTranscodeProfile *pProfile,
[out] IMFTopology **ppTranscodeTopo
);
Parameter
[in] pSrc
Ein Zeiger auf eine Medienquelle, die die zu transcodierte Quelldatei kapselt. Das Medienquellobjekt macht die IMFMediaSource-Schnittstelle verfügbar und kann mithilfe des Quelllösers erstellt werden. Weitere Informationen finden Sie unter Verwenden des Quellrelösers.
[in] pwszOutputFilePath
Ein Zeiger auf eine NULL-Zeichenfolge, die den Namen und Pfad der zu generierenden Ausgabedatei enthält.
[in] pProfile
Ein Zeiger auf das Transcodierungsprofil, das die Konfigurationseinstellungen für den Audiostream, den Videostream und den Container enthält, in den die Datei geschrieben wird. Das Transcodierungsprofilobjekt macht die IMFTranscodeProfile-Schnittstelle verfügbar und muss durch Aufrufen der MFCreateTranscodeProfile-Funktion erstellt werden. Nachdem das Objekt erstellt wurde, muss der Aufrufer die Konfigurationseinstellungen angeben, indem er die entsprechenden IMFTranscodeProfile-Methoden aufruft .
[out] ppTranscodeTopo
Empfängt einen Zeiger auf die IMFTopology-Schnittstelle des transcodierten Topologieobjekts. Der Aufrufer muss die Schnittstelle freigeben.
Rückgabewert
Die Funktion gibt ein HRESULT zurück. Mögliches Werte (aber nicht die Einzigen) sind die in der folgenden Tabelle.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Der Funktionsaufruf war erfolgreich, und ppTranscodeTopo empfängt einen Zeiger auf die Transcodierungstopologie. |
|
pwszOutputFilePath enthält ungültige Zeichen. |
|
In der Medienquelle sind keine Streams ausgewählt. |
|
Das Profil enthält nicht das attribut MF_TRANSCODE_CONTAINERTYPE . |
|
Für einen oder mehrere Datenströme kann kein Encoder gefunden werden, der den im Profil angegebenen Medientyp akzeptiert. |
|
Das Profil gibt keinen Medientyp für einen der ausgewählten Streams in der Medienquelle an. |
Hinweise
Beispielcode, der diese Funktion verwendet, finden Sie in den folgenden Themen:
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 7 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | mfidl.h |
Bibliothek | Mf.lib |
DLL | Mf.dll |