Freigeben über


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)