IAMTimelineGroup::SetSmartRecompressFormat-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.]
Hinweis
[Veraltet. Diese API kann aus zukünftigen Versionen von Windows entfernt werden.]
Die SetSmartRecompressFormat
-Methode gibt ein Videokomprimierungsformat an, das für die intelligente Neukomprimierung verwendet werden soll.
Die intelligente Rekomprimierung wird für Audiogruppen nicht unterstützt.
Syntax
HRESULT SetSmartRecompressFormat(
long *pFormat
);
Parameter
-
pFormat
-
Zeiger auf eine Struktur, die das Komprimierungsformat beschreibt. Derzeit ist nur die SCompFmt0-Struktur gültig. Sie müssen diesen Parameter in einen Zeiger vom Typ long umwandeln.
Rückgabewert
Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.
Bemerkungen
Rufen Sie vor dem Aufrufen dieser Methode die IAMTimelineGroup::SetMediaType-Methode in derselben Gruppe auf, um ein unkomprimiertes Format anzugeben.
Wenn die SetSmartRecompressFormat
Methode erfolgreich ist, können Sie die Smart Render Engine verwenden, um einen komprimierten Videodatenstrom auszugeben. Das komprimierte Video weist die Im pFormat-Parameter angegebene Breite, Höhe und Bildfrequenz auf. Diese Werte überschreiben die Werte, die für das unkomprimierte Format in der SetMediaType-Methode angegeben sind. Um jedoch die Vorteile der intelligenten Rekomprimierung zu nutzen, sollten die beiden Formate übereinstimmen. Anders ausgedrückt: Das komprimierte und unkomprimierte Format sollte die gleiche Höhe, Breite und Bildfrequenz aufweisen.
Wenn die Smart Render Engine das komprimierte Format nicht erzeugen kann, erzeugt sie stattdessen einen unkomprimierten Videostream. In diesem Fall meldet die smarte Render-Engine während der IRenderEngine::ConnectFrontEnd-Methode einen DEX_IDS_CANT_FIND_COMPRESSOR Renderingfehler. Die Anwendung kann diesen Fehler über die IAMErrorLog::LogError-Methode abfangen. (Weitere Informationen finden Sie unter Protokollierung von Fehlern und Renderingfehlern.)
Das Format der intelligenten Rekomprimierung ist nicht persistent. Wenn eine Anwendung die intelligente Rekomprimierung verwendet, muss sie das Format für die erneute Komprimierung festlegen, wenn sie eine Projektdatei lädt.
Hinweis
Die Headerdatei Qedit.h ist nicht mit Direct3D-Headern ab Version 7 kompatibel.
Hinweis
Um Qedit.h zu erhalten, laden Sie das Microsoft Windows SDK Update für Windows Vista und .NET Framework 3.0 herunter. Qedit.h ist im Microsoft Windows SDK für Windows 7 und .NET Framework 3.5 Service Pack 1 nicht verfügbar.
Anforderungen
Anforderung | Wert |
---|---|
Header |
|
Bibliothek |
|
Siehe auch