Unterstützung für Mehrschichtüberlagerungen
Mehrdeckerüberlagerungen können von Windows Display Driver Model (WDDM) 1.3 und höher unterstützt werden. Diese Funktion ist ab Windows 8.1 neu.
In diesen Abschnitten wird beschrieben, wie Sie diese Funktion in Ihrem Treiber implementieren.
Mehrschichtfunktionen, die von Anzeigetreibern im Benutzermodus aufgerufen werden
Alle Mehrschichtfunktionen im Benutzermodus, die vom Betriebssystem implementiert werden.
Funktion | BESCHREIBUNG |
---|---|
pfnPresentMultiPlaneOverlayCb (D3D) | Kopiert Inhalt aus einer Mehrplanen-Quellüberlagerungszuordnung in eine Zielzuordnung. Kann von Windows Display Driver Model (WDDM) 1.3 oder höher für Benutzermodusanzeigetreiber aufgerufen werden. |
pfnPresentMultiPlaneOverlayCb (DXGI) | Kopiert Inhalt aus einer Mehrplanen-Quellüberlagerungszuordnung in eine Zielzuordnung. Kann von WDDM 1.3 oder höher benutzermodus-Anzeigetreibern aufgerufen werden. |
Mehrschichtfunktionen, die vom Benutzermodustreiber implementiert werden
Dieser Abschnitt enthält Funktionen, die ein Windows Display Driver Model (WDDM) 1.3 und höher für den Benutzermodus-Anzeigetreiber implementieren muss, um Mehrplanenüberlagerungen zu unterstützen.
Der Treiber stellt Überlagerungsfunktionen von DXGI über Elemente der DXGI1_3_DDI_BASE_FUNCTIONS-Struktur in einem Aufruf der adapterspezifischen CreateDevice(D3D10) -Funktion des Benutzermodusanzeigetreibers Zeiger auf DXGI-Mehrschichtfunktionen bereit. Weitere Informationen finden Sie unter Unterstützen von DXGI DDI.
Der Treiber stellt Überlagerungsfunktionen von Microsoft Direct3D über Elemente der D3DDDI_DEVICEFUNCS-Struktur in einem Aufruf der CreateDevice-Funktion des Treibers Zeiger auf Mehrschichtfunktionen von Microsoft Direct3D bereit.
Alle Funktionen, die ein Benutzermodustreiber implementieren muss, um Mehrschichtungen zu unterstützen.
Funktion | BESCHREIBUNG |
---|---|
pfnCheckMultiPlaneOverlaySupport (D3D) | Wird von der Direct3D-Runtime aufgerufen, um die Details zur Hardwareunterstützung für Mehrplanenüberlagerungen zu überprüfen. |
pfnCheckMultiPlaneOverlaySupport (DXGI) | Wird von der DXGI-Runtime (Microsoft DirectX Graphics Infrastructure) aufgerufen, um die Details zur Hardwareunterstützung für Mehrplanerüberlagerungen zu überprüfen. |
pfnGetMultiPlaneOverlayCaps | Wird von der DXGI-Runtime aufgerufen, um anzufordern, dass der Benutzermodusanzeigetreiber grundlegende Funktionen der Überlagerungsebene erhält. Optional implementiert von WDDM 1.3 und höher Benutzermodus-Anzeigetreibern. |
pfnGetMultiplaneOverlayGroupCaps | Wird von der DXGI-Runtime aufgerufen, um anzufordern, dass der Benutzermodusanzeigetreiber eine Gruppe von Funktionen der Überlagerungsebene erhält. Optional implementiert von WDDM 1.3 und höher Benutzermodus-Anzeigetreibern. |
pfnPresentMultiplaneOverlay (D3D) | Wird von der Direct3D-Runtime aufgerufen, um den Benutzermodusanzeigetreiber zu benachrichtigen, dass eine Anwendung das Rendering abgeschlossen hat, und fordert an, dass der Treiber die Quelloberfläche entweder durch Kopieren oder Spiegeln anzeigt oder dass der Treiber einen Farbfüllvorgang ausführt. Muss von WDDM 1.3- oder höher-Treibern implementiert werden, die Mehrplatinenüberlagerungen unterstützen. |
pfnPresentMultiplaneOverlay (DXGI) | Wird von der DXGI-Runtime aufgerufen, um den Benutzermodusanzeigetreiber zu benachrichtigen, dass eine Anwendung das Rendering abgeschlossen hat, und fordert an, dass der Treiber die Quelloberfläche entweder durch Kopieren oder Spiegeln anzeigt oder dass der Treiber einen Farbfüllvorgang ausführt. Muss von WDDM 1.3- oder höher-Treibern implementiert werden, die Mehrplatinenüberlagerungen unterstützen. |
Mehrschichtige Benutzermodusstrukturen und Enumerationen
Alle Benutzermodusstrukturen und Enumerationen, die mit mehrschichtigen Gerätetreiberschnittstellen (DDIs) verwendet werden.
DDI | BESCHREIBUNG |
---|---|
D3DDDI_MULTIPLANE_ALLOCATION_INFO | Gibt Informationen zu einer Mehrplanenüberlagerungszuordnung an. |
D3DDDI_MULTIPLANE_OVERLAY_ATTRIBUTES | Wird vom Anzeigetreiber für den Benutzermodus verwendet, um Überlagerungsebenenattribute anzugeben. |
D3DDDI_MULTIPLANE_OVERLAY_BLEND | Gibt einen Füllvorgang an, der auf einer Überlagerungsebene ausgeführt werden soll. |
D3DDDI_MULTIPLANE_OVERLAY_CAPS | Wird vom Anzeigetreiber für den Benutzermodus verwendet, um Funktionen der Überlagerungsebene anzugeben. |
D3DDDI_MULTIPLANE_OVERLAY_FEATURE_CAPS | Identifiziert Überlagerungsfunktionen. |
D3DDDI_MULTIPLANE_OVERLAY_FLAGS | Gibt einen Aufklappvorgang an, der auf einer Überlagerungsebene ausgeführt werden soll. |
D3DDDI_MULTIPLANE_OVERLAY_GROUP_CAPS | Wird vom Benutzermodusanzeigetreiber verwendet, um eine Gruppe von Funktionen der Überlagerungsebene anzugeben. |
D3DDDI_MULTIPLANE_OVERLAY_GROUP_CAPS_INPUT | Gibt Informationen zu einer Mehrschichtfunktionsgruppe an. |
D3DDDI_MULTIPLANE_OVERLAY_STRETCH_QUALITY | Gibt Filterprozesse an, die die Hardware ausführen soll, wenn sie Mehrschichtdaten dehnt oder verkleinern soll. |
D3DDDI_MULTIPLANE_OVERLAY_VIDEO_FRAME_FORMAT | Gibt das Videoframeformat der Überlagerungsebene an. Nur der D3DDDI_MULTIPLANE_OVERLAY_VIDEO_FRAME_FORMAT_PROGRESSIVE Wert wird unterstützt. |
D3DDDI_MULTIPLANE_OVERLAY_YCbCr_FLAGS | Identifiziert YUV-Bereichs- und Konvertierungsinformationen, die eine Mehrplanenüberlagerung beschreiben. |
D3DDDI_PRESENT_MULTIPLANE_OVERLAY | Gibt eine anzuzeigende Überlagerungsebene an. |
D3DDDIARG_CHECKMULTIPLANEOVERLAYSUPPORT | Wird in einem Aufruf der Funktion pfnCheckMultiPlaneOverlaySupport (D3D) verwendet, um Details zur Hardwareunterstützung für Mehrplatinenüberlagerungen zu überprüfen. |
D3DDDIARG_PRESENTMULTIPLANEOVERLAY | Gibt eine anzuzeigende Mehrplanenüberlagerungsressource an. |
D3DDDICB_PRESENTMULTIPLANEOVERLAY | Beschreibt Mehrschichtzuordnungen, in die Inhalte kopiert und aus denen kopiert wird. |
Funktionen für mehrschichtige Kernelmodustreiber
Alle mehrplanenübergreifenden Überlagerungsfunktionen, die der Anzeigeminiporttreiber implementiert.
Funktion | BESCHREIBUNG |
---|---|
DXGKDDI_CHECKMULTIPLANEOVERLAYSUPPORT | Wird vom Microsoft DirectX-Grafikkernsubsystem aufgerufen, um die Details der Hardwareunterstützung für Mehrplanenüberlagerungen zu überprüfen. |
DXGKDDI_CHECKMULTIPLANEOVERLAYSUPPORT3 | Die folgende neue Funktion wird aufgerufen, um zu bestimmen, ob eine bestimmte Mehrebenen-Overlaykonfiguration unterstützt wird. |
DXGKDDI_GETMULTIPLANEOVERLAYCAPS | Wird aufgerufen, um Mehrplanenüberlagerungsfunktionen abzurufen. Unterstützung für diesen DDI ist für jeden WDDM 2.2-Treiber erforderlich, der mehrere Ebenen unterstützen möchte. |
DXGKDDI_POSTMULTIPLANEOVERLAYPRESENT | Wird aufgerufen, nachdem eine neue Mehrebenen-Overlaykonfiguration in Kraft getreten ist, sodass der Treiber den Hardwarestatus optimieren kann. Optional für Windows Display Driver Model (WDDM) 2.0 oder höher, die Mehrebenenüberlagerungen unterstützen. |
DXGKDDI_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY3 | Wird aufgerufen, um die angezeigte Overlaykonfiguration zu ändern. |
DXGKDDI_CHECKMULTIPLANEOVERLAYSUPPORT2 | DxgkDdiCheckMultiPlaneOverlaySupport2 wird aufgerufen, um zu bestimmen, ob eine bestimmte Mehrebenen-Overlaykonfiguration unterstützt wird. |
DXGKDDI_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY | Legt die Adressen mehrerer Oberflächen fest, einschließlich der Swapchain des Desktopfenster-Managers (DWM), die einer bestimmten Videoquelle zugeordnet sind. Diese Funktion wird verwendet, um mehrere Oberflächen (einschließlich der Swapchain des DWM) auf dem Bildschirm darzustellen. |
DXGKDDI_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY2 | DxgkDdiSetVidPnSourceAddressWithMultiPlaneOverlay2 wird aufgerufen, um die angezeigte Overlaykonfiguration zu ändern. |
Mehrschichtige Kernelmodusstrukturen
Alle Strukturen, die vom Anzeigeminiporttreiber verwendet werden.
Struktur | BESCHREIBUNG |
---|---|
DXGK_CHECK_MULTIPLANE_OVERLAY_SUPPORT_PLANE | Gibt die Unterstützungsattribute an, die die Hardware für Mehrebenenüberlagerungen bereitstellt. |
DXGK_CHECK_MULTIPLANE_OVERLAY_SUPPORT_RETURN_INFO | Gibt Einschränkungen für die Hardwareunterstützung von Mehrplanenüberlagerungen an. |
DXGK_MULTIPLANE_OVERLAY_ATTRIBUTES | Wird vom Anzeigeminiporttreiber verwendet, um Overlayebenenattribute anzugeben. |
DXGK_MULTIPLANE_OVERLAY_ATTRIBUTES2 | DXGK_MULTIPLANE_OVERLAY_ATTRIBUTES2 wird vom Anzeigeminiporttreiber verwendet, um Überlagerungsebenenattribute anzugeben. |
DXGK_MULTIPLANE_OVERLAY_BLEND | Gibt einen Mischvorgang an, der auf einer Überlagerungsebene ausgeführt werden soll. |
DXGK_MULTIPLANE_OVERLAY_FLAGS | Gibt einen Flip-Vorgang an, der auf einer Überlagerungsebene ausgeführt werden soll. |
DXGK_MULTIPLANE_OVERLAY_PLANE | Gibt eine Überlagerungsebene an, die in einem Aufruf der DxgkDdiSetVidPnSourceAddressWithMultiPlaneOverlay-Funktion angezeigt werden soll. |
DXGK_MULTIPLANE_OVERLAY_PLANE2 | DXGK_MULTIPLANE_OVERLAY_PLANE2 wird mit der DxgkDdiSetVidPnSourceAddressWithMultiPlaneOverlay2-Funktion verwendet, um eine anzuzeigende Überlagerungsebene anzugeben. |
DXGK_MULTIPLANE_OVERLAY_PLANE_WITH_SOURCE | DXGK_MULTIPLANE_OVERLAY_PLANE_WITH_SOURCE beschreibt die Mehrebenen-Überlagerungsebenenattribute, die Zuordnung und die Videodatennummer für die Netzwerkquellenidentifikation. |
DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO | Gibt eine Überlagerungsebene an, die während eines VSync-Intervalls angezeigt werden soll. |
DXGK_MULTIPLANE_OVERLAY_YCbCr_FLAGS | Gibt YUV-Bereichs- und Konvertierungsinformationen an, die eine Mehrebenenüberlagerung beschreiben. |
DXGK_PRESENTMULTIPLANEOVERLAYINFO | Gibt Informationen zu einer VidPN-Eingabe und einer anzuzeigenden Überlagerungsebene an. |
DXGK_PRESENTMULTIPLANEOVERLAYLIST | Gibt eine Überlagerungsebene an, die in einem Aufruf der DxgkDdiPresent-Funktion angezeigt werden soll. |
DXGKARG_CHECKMULTIPLANEOVERLAYSUPPORT | Wird in einem Aufruf der DxgkDdiCheckMultiPlaneOverlaySupport-Funktion verwendet, um Details zur Hardwareunterstützung für Mehrplanenüberlagerungen zu überprüfen. |
DXGKARG_CHECKMULTIPLANEOVERLAYSUPPORT2 | DXGKARG_CHECKMULTIPLANEOVERLAYSUPPORT2 wird an die DxgkDdiCheckMultiPlaneOverlaySupport2-Funktion übergeben, um zu bestimmen, ob eine bestimmte Mehrebenen-Overlaykonfiguration unterstützt wird. |
DXGKARG_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY | Enthält Argumente für die DxgkDdiSetVidPnSourceAddressWithMultiPlaneOverlay-Funktion. |
DXGKARG_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY2 | DXGKARG_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY2 wird an die DxgkDdiSetVidPnSourceAddressWithMultiPlaneOverlay2-Funktion übergeben, um die angezeigte Overlaykonfiguration zu ändern. |
Mehrschichtige Kernelmodus-Enumerationen
Alle Enumerationen, die vom Anzeigeminiporttreiber verwendet werden.
Enumeration | Beschreibung |
---|---|
DXGK_MULTIPLANE_OVERLAY_STEREO_FLIP_MODE | Gibt den Stereo-Flipmodus der Überlagerungsebene an. Nur der DXGK_MULTIPLANE_OVERLAY_STEREO_FLIP_NONE Wert wird unterstützt. |
DXGK_MULTIPLANE_OVERLAY_STEREO_FORMAT | Gibt das Stereopräsentationsformat der Überlagerungsebene an. Nur der DXGK_MULTIPLANE_OVERLAY_STEREO_FORMAT_MONO-Wert wird unterstützt. |
DXGK_MULTIPLANE_OVERLAY_STRETCH_QUALITY | Gibt Filterprozesse an, die von der Hardware ausgeführt werden sollen, wenn sie mehrschichtige Daten dehnt oder verkleinern soll. |
DXGK_MULTIPLANE_OVERLAY_VIDEO_FRAME_FORMAT | Gibt das Videoframeformat der Überlagerungsebene an. Nur der DXGK_MULTIPLANE_OVERLAY_VIDEO_FRAME_FORMAT_PROGRESSIVE Wert wird unterstützt. |
Dieser Wert für die Enumerationskonstante im Benutzermodus unterstützt Mehrebenenüberlagerungen und ist neu für Windows 8.1:
- D3DDDICAPS_TYPE (D3DDDICAPS_GET_MULTIPLANE_OVERLAY_GROUP_CAPS konstanter Wert)
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