Verwenden des Videomischrenderers

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]

Sowohl was die Leistung als auch die Breite der Features angeht, stellt der VmR-Filter (Video Mixing Renderer) die nächste Generation des Videorenderings auf der Windows-Plattform dar. Die VMR ersetzt den Overlay-Mixer und den Videorenderer und fügt viele neue Mischfunktionen hinzu.

Es gibt zwei Versionen der VMR:

  • Die VMR-7, die DirectDraw 7 zum Rendern verwendet.
  • Die VMR-9, die Direct3D 9 verwendet.

VMR-7 ist unter Windows XP und höher verfügbar, ist aber nicht für die Neuverteilung verfügbar. VMR-9 ist für die Neuverteilung auf allen Plattformen verfügbar, die von DirectX 9 unterstützt werden. Die beiden VMR-Filter ähneln sich sehr in ihrer Implementierung und den Schnittstellen, die sie verfügbar machen.

VmR-9 verfügt über eine eigene CLSID und einen eigenen Satz von Schnittstellen, Strukturen und Enumerationstypen, die aufgrund der zugrunde liegenden Unterschiede zwischen DirectDraw 7 und Direct3D 9 nicht immer mit den entsprechenden Datentypen für die VMR-7 identisch sind. Die VMR-9-Schnittstellen enden alle mit "9", z . B. IVMRStreamConfig9, und die Strukturen und Enumerationstypen haben alle "VMR9" im Namen, um sie von den datentypen zu unterscheiden, die mit VMR-7 verwendet werden.

Um die Abwärtskompatibilität sicherzustellen, ist VMR-9 auf keinem System der Standardrenderer. Um VMR-9 verwenden zu können, müssen Sie es explizit dem Filterdiagramm mithilfe der IFilterGraph::AddFilter-Methode hinzufügen und konfigurieren, bevor Sie ihn mit Upstream Filtern verbinden.

Dieser Artikel enthält folgende Abschnitte. Sofern nicht angegeben, gelten die Informationen in diesen Abschnitten sowohl für den VMR-7- als auch für den VMR-9-Filter.

Videomischrenderer Filter 7

Videomisch-Rendererfilter 9