6 avr. 2020

Mises à jour de la bêta de Twitch Studio

La bêta de Twitch Studio, notre logiciel de stream gratuit conçu pour faciliter le démarrage des nouveaux streamers sur Twitch, se débarrasse des suppositions concernant la configuration et la gestion de votre stream. 

Nous avons récemment mis à jour Twitch Studio avec l’ajout de quatre nouvelles fonctionnalités : l’écran vert en un clic, la capture de fenêtre de navigateur Chorme, la capture des jeux fonctionnant sur Vulkan ainsi que la prise en charge de nombreuses sources audio. Que s’est-il passé dans les coulisses pour donner vie à ces fonctionnalités ? Continuez votre lecture pour le découvrir !

Écran vert en un clic (Incrustation)

L’incrustation, plus connue sous le nom d’écran vert, est un filtre utilisé pour supprimer l’arrière-plan d’une webcam. Vous avez probablement déjà vu l’incrustation en action sur certaines de vos chaînes préférées. Les écrans verts sont un moyen amusant pour les streamers de personnaliser leur stream en leur permettant de modifier l’arrière-plan de leur stream de façon amusante et de rendre leur contenu encore plus attractif et travaillé. Cependant, le processus pour configurer un écran vert peut souvent se révéler fastidieux et demander de nombreux ajustements de différents paramètres pour une configuration optimisée. Voilà pourquoi nous avons conçu une fonctionnalité de détection automatique d’écran vert qui vous permet de configurer automatiquement les paramètres d’incrustation et de détecter votre écran vert en un seul clic.

Comment fonctionne un écran vert ? À l’aide d’un arrière-plan de couleur unie, le filtre est capable de repérer tous les pixels appartenant à cette couleur spécifique et de les rendre transparents. Cette opération est souvent effectuée à l’aide d’un drap ou d’un écran vert spécialement conçu dans ce but, mais pouvant fonctionner avec n’importe quelle couleur unie qui n’apparaît pas au premier plan. Bien que l’arrière-plan uni peut sembler être de la même couleur pour l’œil humain, l’ordinateur le percevra de façon totalement différente. Les ombres et éclairages irréguliers signifient que l’ordinateur percevra l’arrière-plan comme une gamme de couleurs complète. Afin de prendre cet élément en compte, le filtre ignore la luminosité ou la clarté de chaque pixel et n’examine que la chrominance ou la couleur.

Ignorer simplement la luminance n’est pas toujours suffisant. Les différences d’éclairage modifient aussi la chrominance des pixels. Afin de prendre cet élément en compte, le filtre possède aussi un paramètre de « similarité » qui contrôle la proximité entre la chrominance d’un pixel et la couleur d’arrière-plan cible à supprimer.

Tous ces éléments fonctionnent assez bien si vous avez un éclairage raisonnablement uniforme en arrière-plan et que vous pouvez régler les paramètres de façon adéquate, mais ajuster ces paramètres peut être un exercice très frustrant. Si la valeur de similarité est trop élevée, les couleurs au premier plan seront incorrectement associées ; si la valeur est trop faible, des tâches de l’arrière-plan continueront d’être affichées. Trouver les bons paramètres est une tâche difficile du fait qu’il existe en fait deux paramètres à ajuster pour trouver les réglages adaptés — la couleur cible et la valeur de similarité — et c’est ici qu’intervient l’écran vert en un clic de Twitch Studio.

Notre système d’écran vert en un clic optimise ces paramètres pour vous en un clic de bouton. Il commence par échantillonner l’image actuelle dans des endroits qui appartiennent en majorité à l’arrière-plan dans une configuration d’écran vert typique :

Nous prenons ensuite les valeurs de chrominance de ces pixels et les plaçons dans l’espace chromatique d’UV. Si nous détectons un amas de points dans cette parcelle, nous pouvons localiser le centre de la parcelle. Nous l’utilisons en tant que couleur cible et mesurons le rayon de l’amas à utiliser en tant que valeur de similarité :

Et ainsi, nous pouvons sélectionner les paramètres optimaux sans avoir besoin de faire du bricolage !

Capture de Chrome

La capture de fenêtre dans les logiciels de stream a toujours utilisé historiquement la fonction Windows API appelée BitBlt pour capturer une image de la fenêtre cible. Cette opération est efficace et fonctionne bien dans la plupart des cas, mais certaines applications font appel à des méthodes de rendu modernes qui provoquent l’échec de cette méthode. Ce cas est plus souvent remarqué lorsque vous essayez de capturer Chrome ou d’autres applications basées sur Chrome (comme Discord, Slack, Spotify, VS Code et d’autres encore) et que vous essayez de diffuser des applications qui peuvent être peu fiables et sujettes aux erreurs lors de la capture de fenêtres Chrome. Il en résulte souvent un écran noir sans aucune communication ni message d’erreur pour informer les streamers de ce qui se passe. 

Certaines solutions de contournement à ce problème comprenaient l’utilisation de la capture d’affichage recadrée ou le basculement de l’application en mode de rendu logiciel (si possible). Malheureusement, aucune de ces solutions de contournement n’est particulièrement appropriée. La capture d’affichage recadré présente un risque de partager accidentellement un élément en stream si la fenêtre est déplacée et le passage en mode de rendu logiciel peut impacter les performances de l’application même sans streamer.

Nous voulions améliorer le statu quo. PrintWindow est une autre API pouvant être utilisée pour capturer le contenu des autres fenêtres, mais par défaut, elles donnent généralement une sortie vierge ou non fiable de ces fenêtres. Il s’avère cependant que la fonction accepte un indicateur PW_RENDERFULLCONTENT non documenté qui force un rafraîchissement complet de la fenêtre cible et résout ce problème.

Cette nouvelle méthode de capture n’est pas un remède universel puisqu’elle oblige la fenêtre cible à effectuer un travail supplémentaire de rendu de la sortie, mais c’est certainement plus agréable que n’avoir aucune sortie du tout. Afin de nous assurer que nous n’engendrons ce résultat de performance que lorsque cela est réellement nécessaire, nous n’activons ce mode de capture par défaut que pour les applications connues pour avoir des problèmes de capture avec la méthode BitBlt traditionnelle et permettons aux utilisateurs d’activer ce mode de « compatibilité de la capture » pour tout ce que nous aurions pu manquer. Cela permet à la capture de fenêtre de fonctionner dans presque tous les cas tout en optimisant les performances.

Capture de jeux fonctionnant sur Vulkan

Nous savons que le paysage du jeu vidéo est en constante évolution, et la priorité de l’équipe Twitch Studio est de suivre les dernières technologies et de s’assurer que les créateurs peuvent streamer tous les jeux récents. À cette fin, Twitch Studio prend désormais en charge la capture de jeux pour ceux qui fonctionnent sur l’API graphique Vulkan. Ce projet était intéressant car, contrairement à d’autres API de rendu, Vulkan fournit en réalité un moyen de capturer des jeux et d’afficher un rendu d’overlays originaux. La capture de jeu est normalement réalisée en injectant du code dans le jeu en cours d’exécution qui se connecte ensuite dans l’API de rendu afin d’intercepter chaque image du jeu pour en faire une copie. Vulkan fournit un système de calques qui permet à un logiciel tiers (comme un logiciel de streaming) d’enregistrer un fichier DLL spécial qui sera chargé dans tous les jeux Vulkan automatiquement. Cela permet d’uniformiser le processus de capture de jeu, nous permettant de contourner une grande partie de la complexité des techniques actuelles d’injection de code.

Plusieurs sources audio

Twitch Studio a été lancé en version bêta avec un ensemble initial de fonctionnalités visant à uniformiser l’expérience des streamers débutants et a donc fait appel à un modèle audio simplifié avec un seul micro et une seule capture audio du bureau. Alors que nous élargissons cet ensemble de fonctionnalité selon les avis des streamers, l’une des fonctionnalités les plus demandées était la prise en charge de chaînes et appareils audio supplémentaires, et nous avons récemment lancé une refonte majeure du système audio de base à cet effet.

Avec cette refonte audio, nous voulions nous assurer que l’expérience audio par défaut restait aussi simple que possible tout en ajoutant des options de configuration plus avancées, mais toujours en conservant une utilisation accessible. Plus simplement, cela signifiait changer complètement notre façon de gérer les appareils audio. Au lieu de simplement sélectionner la sortie par défaut et d’ajouter des micros sur demande, nous avons maintenant la possibilité de contrôler tous les appareils d’entrée et de sortie en sélectionnant un nouvel appareil à ajouter. En plus de simplifier le système audio, cela permet également de poser les bases pour d’incroyables fonctionnalités supplémentaires que nous avons prévu d’implémenter, alors restez à l’affût !

Chez Twitch, nous nous engageons à faciliter plus que jamais le démarrage des nouveaux streamers dans leur aventure sur la plateforme. Nous concevons beaucoup plus d’outils cette année pour aider les streamers à continuer d’améliorer leur stream tout en conservant une utilisation aussi simple et uniforme que possible. Si vous souhaitez découvrir Twitch Studio, essayez-le ici.

Autres news...
7 avr. 2020

Mise à jour de notre politique de nudité et de tenues vestimentaires

21 avril 2020 - Mise à jour du communiqué publié il y a deux semaines...
Mise à jour de notre politique de nudité et de tenues vestimentaires Envoyer
9 janv. 2020

Tous à bord du train de la Hype

Tous à bord du train de la Hype Envoyer