Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
[Das dieser Seite zugeordnete Feature DirectShow-ist ein Legacyfeature. Es wurde von MediaPlayer, IMFMediaEngineund Audio/Video Capture in Media Foundationersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code MediaPlayer-, IMFMediaEngine und Audio-/Videoaufnahme in Media Foundation anstelle von DirectShow-verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, um die neuen APIs zu verwenden, falls möglich umgeschrieben werden.]
Anmerkung
Dieses Thema gilt nur für vmR-7. In der VMR-9 aktivieren Sie den exklusiven Modus, indem Sie Ihren eigenen exklusiv modus allocator-presenter bereitstellen. Dies ist relativ einfach, wenn Sie die IVMRSurfaceAllocatorNotify9::AllocateSurfaceHelper-Methode verwenden. Das VMR9Allocator-Beispiel zeigt, wie ein benutzerdefinierter Allocator-Presenter implementiert wird.
Im DirectDraw Exclusive Mode übernimmt eine Anwendung exklusive Kontrolle über die Grafikhardware. Dies ist nützlich für Anwendungen wie Spiele oder vielleicht Videoanwendungen im Vollbildmodus. Normalerweise erstellt der VMR die DirectDraw-Objekte und legt die Kooperativstufe auf "normal" fest. Um den VMR jedoch im DirectDraw-Exklusivmodus auszuführen, muss die Anwendung selbst das DirectDraw-Objekt und die primäre Oberfläche erstellen und SetCooperativeLevel- aufrufen, um den exklusiven Modus anzugeben.
Der VMR verfügt über einen speziellen Allocator-Presenter, mit dem er im DirectDraw Exclusive Mode ausgeführt werden kann. So konfigurieren Sie den VMR für die Verwendung dieses Allocator-Presenters:
Erstellen Sie das Filterdiagramm, und fügen Sie ihn mithilfe der IFilterGraph::AddFilter-Methode hinzu. Ein Codebeispiel finden Sie unter VMR Windowless Mode.
Erstellen Sie den Exklusivmodus-Allocator-Presenter:
IVMRImagePresenterExclModeConfig* pExclModeConfig; CoCreateInstance( CLSID_AllocPresenterDDXclMode, NULL, CLSCTX_INPROC_SERVER, IID_IVMRImagePresenterExclModeConfig, (void**)&pExclModeConfig );
Konfigurieren Sie den neuen Allocator-Presenter:
pExclModeConfig->SetXlcModeDDObjAndPrimarySurface(...);
Schließen Sie den neuen Allocator-Presenter an den virtuellen Computer an.
Erstellen Sie den Rest des Filterdiagramms auf die übliche Weise.
Verwandte Themen