Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article décrit la fonctionnalité de superposition multiplane (MPO) introduite dans Windows 8.1 (WDDM 1.3). Il répertorie les fonctions fournies par le système et implémentées par le pilote utilisées pour prendre en charge cette fonctionnalité dans un pilote d’affichage en mode utilisateur (UMD) et un miniporteur en mode noyau (KMD) dans WDDM 1.3 et versions ultérieures. Il répertorie également les structures et les énumérations utilisées avec des MPO.
La prise en charge de MPO permet au matériel graphique de composer plusieurs couches de contenu en une seule image qu’il peut ensuite afficher sur un écran. Il s’agit essentiellement d’une méthode accélérée par le matériel permettant de composer différents plans de contenu sans avoir à impliquer l'unité centrale ou à utiliser d'autres ressources système pour effectuer la fusion dans les logiciels. Un plan peut être une vidéo, le bureau, une fenêtre d’application, etc. Le matériel peut ensuite prendre ces plans et les combiner en une seule image envoyée à l’affichage.
Fonctions MPO appelées par les pilotes d’affichage en mode utilisateur
Le tableau suivant répertorie les fonctions MPO en mode utilisateur que le système d’exploitation implémente et que les pilotes d’affichage en mode utilisateur (UMD) peuvent appeler.
Fonction | Descriptif |
---|---|
D3D : pfnPresentMultiPlaneOverlayCb | Copie le contenu d’une allocation MPO source vers une allocation de destination. |
DXGI : pfnPresentMultiPlaneOverlayCb | Copie le contenu d’une allocation MPO source vers une allocation de destination. |
Fonctions MPO implémentées par l’UMD
Cette section contient des fonctions qu’une UMD WDDM 1.3 et ultérieure doit implémenter pour prendre en charge les MPOs.
Direct3D : l’UMD fournit des pointeurs vers des fonctions D3D MPO par le biais de membres de la structure D3DDDI_DEVICEFUNCS dans un appel à la fonction CreateDevice de l’UMD.
DXGI : L’UMD fournit des pointeurs vers les fonctions DXGI MPO par le biais de membres de la structure DXGI1_3_DDI_BASE_FUNCTIONS lorsque sa fonction CreateDevice(D3D10) spécifique à l’adaptateur est appelée. Pour plus d'informations, consultez Support de DXGI DDI.
Le tableau suivant répertorie les fonctions qu’un UMD doit implémenter pour prendre en charge les MPO.
Fonction | Descriptif |
---|---|
pfnCheckMultiPlaneOverlaySupport (D3D) | Appelé par le runtime D3D pour vérifier les détails de la prise en charge matérielle des MPOs. |
pfnCheckMultiPlaneOverlaySupport (DXGI) | Appelé par le runtime DirectX Graphics Infrastructure (DXGI) pour vérifier les détails de la prise en charge matérielle des MPOs. |
pfnPresentMultiplaneOverlay (D3D) | Appelé par le runtime D3D pour informer l’UMD qu’une application a terminé le rendu et demande que l’UMD affiche la surface source. Le pilote doit afficher cette surface en copiant, en retournant ou en effectuant une opération de remplissage de couleur. |
pfnPresentMultiplaneOverlay (DXGI) | Appelé par le runtime DXGI pour informer l’UMD qu’une application a terminé le rendu et demande que l’UMD affiche la surface source. L’UMD doit afficher la surface en copiant, en retournant ou en effectuant une opération de remplissage de couleur. |
Le tableau suivant répertorie les fonctions DDI DXGI qu’une UMD peut éventuellement implémenter.
Fonction | Descriptif |
---|---|
pfnGetMultiPlaneOverlayCaps | Appelé par le runtime DXGI pour demander que l’UMD obtienne les fonctionnalités de plan de superposition de base. |
pfnGetMultiplaneOverlayGroupCaps | Appelé par le runtime DXGI pour demander que l’UMD obtienne un groupe de fonctionnalités de plan de superposition. |
Structures et énumérations en mode utilisateur DU MPO
Cette section répertorie les structures et énumérations en mode utilisateur utilisées avec les DDIS MPO.
Struct/Enum | Descriptif |
---|---|
D3DDDI_MULTIPLANE_ALLOCATION_INFO | Spécifie des informations sur une allocation MPO. |
D3DDDI_MULTIPLANE_OVERLAY_ATTRIBUTES | Utilisé par l’UMD pour spécifier des attributs de plan de superposition. |
D3DDDI_MULTIPLANE_OVERLAY_BLEND | Identifie une opération de fusion à effectuer sur un plan de superposition. |
D3DDDI_MULTIPLANE_OVERLAY_CAPS | Utilisé par l’UMD pour spécifier les fonctionnalités du plan de superposition. |
D3DDDI_MULTIPLANE_OVERLAY_FEATURE_CAPS | Identifie les fonctionnalités de superposition. |
D3DDDI_MULTIPLANE_OVERLAY_FLAGS | Identifie une opération de retournement à effectuer sur un plan de superposition. |
D3DDDI_MULTIPLANE_OVERLAY_GROUP_CAPS | Utilisé par l’UMD pour spécifier un groupe de fonctionnalités de plan de superposition. |
D3DDDI_MULTIPLANE_OVERLAY_GROUP_CAPS_INPUT | Spécifie des informations concernant un groupe de capacités MPO. |
D3DDDI_MULTIPLANE_OVERLAY_STRETCH_QUALITY | Identifie les processus de filtrage que le matériel doit effectuer lorsqu’il étire ou réduit les données MPO. |
D3DDDI_MULTIPLANE_OVERLAY_VIDEO_FRAME_FORMAT | Identifie le format de trame vidéo du plan de superposition. Seule la valeur D3DDDI_MULTIPLANE_OVERLAY_VIDEO_FRAME_FORMAT_PROGRESSIVE est prise en charge. |
D3DDDI_MULTIPLANE_OVERLAY_YCbCr_FLAGS | Identifie les informations de conversion et de plage YUV qui décrivent un MPO. |
D3DDDI_PRESENT_MULTIPLANE_OVERLAY | Spécifie un plan de superposition à afficher. |
D3DDDIARG_CHECKMULTIPLANEOVERLAYSUPPORT | Utilisé dans un appel à la fonction pfnCheckMultiPlaneOverlaySupport (D3D) pour vérifier les détails de la prise en charge matérielle des MPOs. |
D3DDDIARG_PRESENTMULTIPLANEOVERLAY | Spécifie une ressource MPO à afficher. |
D3DDDICB_PRESENTMULTIPLANEOVERLAY | Décrit les allocations MPO vers et depuis lesquelles le contenu est copié. |
Fonctions implémentées par le pilote en mode noyau MPO
Le tableau ci-dessous répertorie les fonctions MPO que le pilote miniport d'affichage en mode noyau (KMD) implémente.
Fonction | Descriptif |
---|---|
DXGKDDI_CHECKMULTIPLANEOVERLAYSUPPORT | Appelé par le sous-système du noyau graphique DirectX pour vérifier les détails de la prise en charge matérielle des MPOs. |
DXGKDDI_CHECKMULTIPLANEOVERLAYSUPPORT3 | La fonction suivante est appelée pour déterminer si une configuration de superposition multiplan spécifique est prise en charge. |
DXGKDDI_GETMULTIPLANEOVERLAYCAPS | Appelé pour récupérer les fonctionnalités de MPO. La prise en charge de ce DDI est requise pour tout KMD WDDM 2.2 souhaitant prendre en charge plusieurs plans. |
DXGKDDI_POSTMULTIPLANEOVERLAYPRESENT | Appelé après la mise en œuvre d’une nouvelle configuration de superposition multi-plan, ce qui permet au KMD d’optimiser l’état matériel. Facultatif pour les KMDs WDDM 1.3 ou ultérieur qui prennent en charge les surimpressions multiplan. |
DXGKDDI_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY3 | Chargé de modifier la configuration de superposition affichée. |
DXGKDDI_CHECKMULTIPLANEOVERLAYSUPPORT2 | DxgkDdiCheckMultiPlaneOverlaySupport2 est appelé pour déterminer si une configuration de superposition multiplan spécifique est prise en charge. |
DXGKDDI_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY | Définit les adresses de plusieurs surfaces associées à une source de présentation vidéo particulière. Ces surfaces incluent la chaîne d’échange du Gestionnaire de fenêtres de bureau (DWM). Cette fonction est utilisée pour présenter plusieurs surfaces (y compris la chaîne d’échange de DWM) à l’écran. |
DXGKDDI_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY2 | DxgkDdiSetVidPnSourceAddressWithMultiPlaneOverlay2 est appelé pour modifier la configuration de superposition affichée. |
Structures en mode noyau MPO
Le tableau suivant répertorie les structures que KMD utilise.
Structure | Descriptif |
---|---|
DXGK_CHECK_MULTIPLANE_OVERLAY_SUPPORT_PLANE | Spécifie les attributs de compatibilité que le matériel fournit pour les MPOs. |
DXGK_CHECK_MULTIPLANE_OVERLAY_SUPPORT_RETURN_INFO | Spécifie les limitations relatives à la prise en charge matérielle des MPO. |
DXGK_MULTIPLANE_OVERLAY_ATTRIBUTES | Utilisé par le KMD pour spécifier des attributs de plan de superposition. |
DXGK_MULTIPLANE_OVERLAY_ATTRIBUTES2 | DXGK_MULTIPLANE_OVERLAY_ATTRIBUTES2 est utilisé par le KMD pour spécifier des attributs de plan de superposition. |
DXGK_MULTIPLANE_OVERLAY_BLEND | Identifie une opération de fusion à effectuer sur un plan de superposition. |
DXGK_MULTIPLANE_OVERLAY_FLAGS | Identifie une opération de retournement à effectuer sur un plan de superposition. |
DXGK_MULTIPLANE_OVERLAY_PLANE | Spécifie un plan de superposition à afficher dans un appel à la fonction DxgkDdiSetVidPnSourceAddressWithMultiPlaneOverlay. |
DXGK_MULTIPLANE_OVERLAY_PLANE2 | DXGK_MULTIPLANE_OVERLAY_PLANE2 est utilisé avec la fonction DxgkDdiSetVidPnSourceAddressWithMultiPlaneOverlay2 pour spécifier un plan de superposition à afficher. |
DXGK_MULTIPLANE_OVERLAY_PLANE_WITH_SOURCE | DXGK_MULTIPLANE_OVERLAY_PLANE_WITH_SOURCE décrit les attributs de plan de superposition multiplan, l’allocation et la vidéo présentent le numéro d’identification de la source réseau. |
DXGK_MULTIPLANE_OVERLAY_VSYNC_INFO | Spécifie un plan de superposition à afficher pendant un intervalle VSync. |
DXGK_MULTIPLANE_OVERLAY_YCbCr_FLAGS | Identifie les informations de conversion et de plage YUV qui décrivent un MPO. |
DXGK_PRESENTMULTIPLANEOVERLAYINFO | Spécifie des informations sur une entrée VidPN et un plan de superposition à afficher. |
DXGK_PRESENTMULTIPLANEOVERLAYLIST | Spécifie un plan de superposition à afficher dans un appel à la fonction DxgkDdiPresent. |
DXGKARG_CHECKMULTIPLANEOVERLAYSUPPORT | Utilisé dans un appel à la fonction DxgkDdiCheckMultiPlaneOverlaySupport pour vérifier les détails de la prise en charge matérielle des MPOs. |
DXGKARG_CHECKMULTIPLANEOVERLAYSUPPORT2 | DXGKARG_CHECKMULTIPLANEOVERLAYSUPPORT2 est passé à la fonction DxgkDdiCheckMultiPlaneOverlaySupport2 pour déterminer si une configuration de superposition multiplan spécifique est prise en charge. |
DXGKARG_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY | Contient des arguments pour la fonction DxgkDdiSetVidPnSourceAddressWithMultiPlaneOverlay. |
DXGKARG_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY2 | DXGKARG_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY2 est passé à la fonction DxgkDdiSetVidPnSourceAddressWithMultiPlaneOverlay2 pour modifier la configuration de superposition affichée. |
Énumérations en mode noyau MPO
Le tableau suivant répertorie les énumérations utilisées par KMD.
Énumération | Descriptif |
---|---|
DXGK_MULTIPLANE_OVERLAY_STEREO_FLIP_MODE | Identifie le mode de retournement stéréo du plan de superposition. Seule la valeur DXGK_MULTIPLANE_OVERLAY_STEREO_FLIP_NONE est prise en charge. |
DXGK_MULTIPLANE_OVERLAY_STEREO_FORMAT | Identifie le format de présentation stéréo du plan de superposition. Seule la valeur DXGK_MULTIPLANE_OVERLAY_STEREO_FORMAT_MONO est prise en charge. |
DXGK_MULTIPLANE_OVERLAY_STRETCH_QUALITY | Identifie les processus de filtrage que le matériel doit effectuer lorsqu’il étire ou réduit les données MPO. |
DXGK_MULTIPLANE_OVERLAY_VIDEO_FRAME_FORMAT | Identifie le format de trame vidéo du plan de superposition. Seule la valeur DXGK_MULTIPLANE_OVERLAY_VIDEO_FRAME_FORMAT_PROGRESSIVE est prise en charge. |
La valeur D3DDDICAPS_GET_MULTIPLANE_OVERLAY_GROUP_CAPS dans D3DDDICAPS_TYPE indique la prise en charge des MPO par l'UMD.