Présentation des réseaux de présentation vidéo

Le gestionnaire VidPN (Video Present Network), qui est un composant du sous-système du noyau graphique DirectX (Dxgkrnl.sys), est responsable de la gestion de la collection de moniteurs et d’autres périphériques d’affichage connectés à une carte graphique. Les responsabilités du gestionnaire VidPN sont les suivantes :

  • Répondre aux problèmes de branchement à chaud et de débranchement des moniteurs.

  • Conservez et mettez à jour un ensemble de modes d’affichage disponibles à mesure que l’ensemble des moniteurs connectés change.

  • Gérer l’association entre les surfaces de rendu et les sorties vidéo sur l’adaptateur d’affichage ; par exemple, clonez les vues et l’extension du bureau sur plusieurs moniteurs.

  • Ajustez l’ensemble des périphériques d’affichage disponibles et des modes d’affichage lorsque le couvercle d’un ordinateur portable est ouvert ou fermé.

  • Ajustez l’ensemble des périphériques d’affichage et des modes d’affichage disponibles lorsqu’un ordinateur portable est ancré ou débarqué.

Le matériel d’une carte graphique chargé d’analyser le contenu rendu à partir de la mémoire vidéo et de le présenter sur les sorties vidéo est appelé sous-système de présentation de l’adaptateur d’affichage. Un réseau de présentation vidéo (VidPN) est un modèle logiciel du sous-système de présentation d’une carte graphique.

Les éléments clés du sous-système de présentation d’un adaptateur d’affichage sont les vues (chaînes de surface primaires) et les sorties vidéo. Dans le modèle VidPN, une vue est appelée source de présentation vidéo, et une sortie vidéo est appelée cible de présentation vidéo.

Un chemin d’accès de présentation vidéo est une association entre une source de présentation vidéo et une cible de présentation vidéo. Un VidPN modélise la relation entre les sources et les cibles en conservant un ensemble de chemins d’accès vidéo présents. L’ensemble de chemins est appelé topologie VidPN.

Notez que les cibles de présentation vidéo ne sont pas les moniteurs (ou d’autres périphériques d’affichage externes) connectés à l’adaptateur d’affichage. Les cibles présentes de la vidéo sont les connecteurs de sortie vidéo eux-mêmes.

Le diagramme suivant illustre un VidPN.

Diagramme illustrant un réseau VidPN (Video Present Network) avec des sources, des cibles et des connecteurs.

Le VidPN illustré dans le diagramme précédent a trois cibles de présentation vidéo : un connecteur DVI, un connecteur HD15 et un connecteur S-video. La topologie VidPN est représentée par les lignes qui relient les deux sources aux trois cibles. La topologie spécifie que source 1 est connecté à la cible DVI et source 2 aux cibles HD15 et S-video. Le contenu affiché sur Source 2 est présenté sous la forme d’une vue clone sur les périphériques d’affichage connectés aux connecteurs HD15 et S-video.

Chaque source présente vidéo prend en charge un certain ensemble de formats de surface appelés modes sources. Pour suivre les modes sources pris en charge par les différentes sources vidéo présentes, un VidPN conserve un mode source défini pour chaque source vidéo présente. Le mode source défini pour une source vidéo spécifique présente n’est pas statique ; il change à mesure que la topologie change, et il change en fonction des modes choisis pour d’autres sources de présentation vidéo.

Le modèle fonctionne de la même façon pour les cibles de présentation vidéo. Chaque cible de présentation vidéo prend en charge un certain ensemble de formats de signal vidéo appelés modes cibles, et un VidPN conserve un mode cible défini pour chaque cible vidéo présente. Le mode cible défini pour une vidéo spécifique présente des modifications de cible à mesure que la topologie change et que les modes sont choisis pour d’autres cibles de présentation vidéo.

Rôle du pilote display miniport

Un adaptateur d’affichage a un ou plusieurs codecs de sortie vidéo (par exemple, un CRTC) qui lisent à partir de sources de présentation vidéo et placent les signaux vidéo correspondants sur les cibles présentes vidéo. À tout moment, un codec de sortie vidéo peut lire au plus une source de vidéo présente ; toutefois, ce codec peut fournir un signal vidéo à plusieurs cibles vidéo présentes (vue clone). Le gestionnaire VidPN se préoccupe des associations entre les sources de présentation vidéo et les cibles du présent vidéo, mais ne se préoccupe pas du rôle des codecs de sortie vidéo. Les décisions concernant le codec de sortie vidéo lu à partir d’une source vidéo spécifique présente sont entièrement sous le contrôle du pilote de miniport d’affichage. Par exemple, supposons qu’une carte graphique possède deux codecs de sortie vidéo, et que le gestionnaire VidPN demande au pilote de miniport d’affichage d’implémenter la topologie illustrée dans le diagramme suivant.

Diagramme montrant une topologie VidPN avec deux sources connectées à trois cibles.

Le diagramme suivant montre une façon dont le pilote de miniport d’affichage peut affecter des codecs de sortie vidéo aux sources de présentation vidéo.

Diagramme montrant le pilote affectant CRTC1 à HD15 pour Source 1, et CRTC2 à HD15 et S-Video pour Source 2.

Notez que la vue clone (HD15, S-video) dans le diagramme précédent est gérée par un seul CRTC. Supposons maintenant que la sortie HD15 connectée à CRTC1 n’est plus nécessaire. Ensuite, le pilote de miniport d’affichage peut implémenter la vue clone en configurant les codecs de sortie vidéo, comme illustré dans le diagramme suivant :

Diagramme montrant une autre utilisation des codecs de sortie vidéo avec deux CRTC pour la vue clone.

L’implémentation de la vue clone avec deux CRTC présente certains avantages par rapport à son implémentation avec un SEUL CRTC. Par exemple, avec deux CRTC, les sorties HD15 et S-video peuvent avoir des résolutions et des taux d’actualisation différents.

Le point important est que le gestionnaire VidPN ne sait jamais comment les codecs de sortie vidéo sur une carte graphique sont attribués aux sources et cibles de la vidéo présente. Le gestionnaire VidPN connaît uniquement les associations entre les sources et les cibles. Les associations composites sous-jacentes qui impliquent les codecs de sortie vidéo sont connues uniquement du pilote miniport d’affichage.