La vie secrète des vieilles fenêtres (vidéo)
À l'époque de Windows 95, 98 et XP, votre fidèle Lecteur Windows Media effectuait une opération discrète en arrière-plan. Lorsque vous lanciez la lecture d'une vidéo, celle-ci ne s'affichait pas directement dans la fenêtre du lecteur, contrairement aux applications modernes.
Windows a donc eu recours à une astuce ingénieuse, similaire aux incrustations sur fond vert que l'on voit sur les streams Twitch ou les plateaux de films à succès. Il s'agit de l'incrustation chromatique, une technique que Windows utilisait fréquemment pour assurer une lecture vidéo fluide sur les anciens ordinateurs.
Voici le principe de base. La fenêtre du lecteur multimédia ne dessine pas directement les pixels vidéo. Windows commence par dessiner une zone de couleur unie, généralement vert vif ou d'une autre couleur distincte selon la version. Ensuite, il affiche la vidéo sur une surface graphique séparée, hébergée sur la carte graphique. Enfin, il indique à la carte graphique que chaque fois qu'elle détecte cette couleur verte spécifique dans une certaine zone de l'écran, elle doit remplacer les pixels verts correspondants par les pixels de la surface vidéo.
Ce que vous preniez pour une fenêtre de lecteur normale était en réalité un portail. En dessous, un rectangle vert apparaissait sur le bureau. Par-dessus, votre carte graphique superposait invisiblement la vidéo en temps réel.
Pourquoi Windows a procédé ainsi
Cette technique utilisait ce qu'on appelait des superpositions. Ces superpositions n'apparaissaient pas comme des pixels normaux sur le bureau. Elles étaient plutôt comme une couche distincte que seule la carte graphique savait comment intégrer au dernier moment avant d'envoyer l'image à votre moniteur.
Cela peut paraître inutilement compliqué, mais il y avait des raisons très pratiques de procéder ainsi sur les anciens systèmes.
Meilleures performances sur du matériel peu performant
Le rendu et la mise à l'échelle vidéo par logiciel étaient extrêmement exigeants pour les PC des années 90 et du début des années 2000. En confiant les tâches les plus lourdes à la carte graphique et en utilisant une surface graphique partagée, Windows pouvait lire les vidéos de manière plus fluide sans surcharger le processeur.Moins de problèmes de formatage pixel
Il est possible que votre moniteur et votre fichier vidéo n'utilisent pas le même format de pixels. Au lieu de convertir chaque image pour l'adapter au bureau, Windows pourrait conserver la vidéo dans son format d'origine sur la superposition et laisser la carte graphique gérer directement le traitement. Cela permettrait d'éviter de nombreuses conversions coûteuses.Vidéos qui continuent de se lire même si Windows se bloque
L'interface graphique était indépendante du thread principal de Windows. Ainsi, même en cas de gel momentané de l'interface ou d'utilisation intensive du bureau, la vidéo pouvait continuer à s'afficher sans interruption, la carte graphique assurant un traitement continu des images.
Il existait même une technique plus avancée appelée « retournement ». Au lieu d'utiliser une seule surface partagée, Windows en préparait deux. L'une contenait l'image actuelle, l'autre la suivante. Au moment précis où l'affichage se rafraîchissait, lors d'un rafraîchissement vertical, la carte graphique inversait la surface affichée. Cela permettait de fluidifier les mouvements et de réduire les artefacts visuels.
Les effets secondaires amusants et buggés
Toute cette magie en coulisses a abouti à l'une des bizarreries les plus déroutantes et étrangement amusantes des versions classiques de Windows : les captures d'écran trompeuses.
Lorsque vous preniez une capture d'écran à l'époque, Windows enregistrait les pixels qu'il croyait avoir envoyés à la carte graphique comme image du bureau. Mais n'oubliez pas la couche de superposition ajoutée par la carte graphique. Ces pixels n'existaient jamais réellement dans la mémoire de Windows ; ils n'existaient que lors de leur transmission vers votre écran.
Alors, qu'obtenez-vous lorsque vous faites une capture d'écran d'une vidéo ? Vous n'obtenez pas l'image de la vidéo, mais l'image brute du bureau. Autrement dit, là où la vidéo aurait dû apparaître, il n'y a que cette couleur vive de l'incrustation chromatique, généralement un grand rectangle vert.
C'est là que les choses sont devenues bizarres et amusantes. Imaginez ce scénario.
Vous prenez une capture d'écran pendant la lecture d'une vidéo.
Vous collez cette capture d'écran dans Microsoft Paint.
Le lecteur multimédia continue de fonctionner en arrière-plan, utilisant toujours la superposition.
Déplacez maintenant la fenêtre Paint de sorte que le rectangle vert de votre capture d'écran corresponde exactement à l'emplacement de la fenêtre du lecteur multimédia. Pour la carte graphique, cette zone de l'écran affiche à nouveau des pixels verts. Peu importe qu'ils proviennent de Paint. Sa seule tâche consiste à détecter cette couleur verte dans cette zone et à la remplacer par la surface vidéo.
Résultat : votre capture d’écran statique donne soudain l’impression de contenir une vidéo en direct. Éloignez Paint et vous ne voyez plus que l’image réelle, une simple tache verte. Alignez-la à nouveau et la fausse capture d’écran s’anime, car la superposition reste active en dessous.
C'est un parfait exemple de la légère désynchronisation entre le système graphique et le système d'exploitation. Windows raisonnait en termes de pixels de l'écran. La carte graphique ajoutait sa propre couche cachée, invisible pour Windows.
Aujourd'hui, le rendu vidéo est bien plus simple. Le matériel est suffisamment puissant pour que le système d'exploitation et le GPU fonctionnent de concert grâce à des pipelines vidéo performants, l'accélération et la composition. On peut faire une capture d'écran d'une vidéo 4K et le résultat est identique à ce qui est affiché à l'écran. Plus de zones vertes indéfinies, plus d'effets fantômes.
Du point de vue de l'ergonomie, c'est un net progrès. La qualité vidéo est supérieure, les captures d'écran sont précises et même des applications simples comme Microsoft Paint proposent désormais des fonctionnalités telles que la suppression automatique de l'arrière-plan et l'enregistrement d'images avec calques, à l'instar d'un logiciel Photoshop basique.
Il y a pourtant un certain charme à ces petites bizarreries d'antan. Ces bugs étranges donnaient aux ordinateurs l'aspect d'un puzzle qu'on pouvait manipuler et déjouer. Savoir que votre vidéo était secrètement incrustée sur votre bureau par la carte graphique rend ces souvenirs de Windows classique un peu plus magiques et évoquent les coulisses de la façon dont les PC bravaient les apparences avant d'y parvenir.
Article et image originaux : https://www.pcgamer.com/software/windows/windows-used-to-secretly-use-green-screens-to-render-videos-which-is-how-you-could-trick-ms-paint-into-becoming-a-video-player/
