• FR
  • EN
  • Flow - Utilitaire de Stream


    Le streaming sur Twitch est très populaire depuis un moment, et ce n’est pas difficile de comprendre pourquoi. La création de contenu en temps réel rend l’expérience beaucoup plus engageante. Cependant, travailler en temps réel présente ses défis. Plus vous devez faire de choses en même temps, plus il est difficile de se concentrer sur le contenu.

    Comment les streamers font

    La manière dont les streamers géraient ce problème dans le passé était de former une équipe de modérateurs, qui s’occuperaient des messages chats, des commandes de bots, des fonctionnalités spéciales de Twitch comme les prédictions, etc. Ce n’est pas une solution parfaite car elle nécessite beaucoup de travail de la part des modérateurs pour garder les commandes à jour en tout temps tout en étant présents à chaque stream. Les streamers débutants ou impopulaires peuvent aussi avoir des difficultés à former une équipe de modérateurs. Et enfin, les modérateurs ont un accès limité aux outils qu’un streamer peut utiliser, ce qui signifie qu’ils ne peuvent pas toujours aider le streamer dans tous les scénarios.

    Flow tente de résoudre ce problème en automatisant les tâches courantes et en facilitant la concentration sur la partie “amusante” du streaming, y compris les interactions avec le chat, les jeux, et plus encore.

    Par exemple, les streamers de Minecraft ont tous une commande commune pour afficher les textures qu’ils utilisent actuellement, car le jeu est fortement axé sur le modding. Les spectateurs veulent connaître ces textures et ces commandes sont faites pour leur donner ces informations. Cependant, beaucoup de streamers changent ces textures très souvent, ce qui conduit souvent à des informations obsolètes pour les spectateurs.

    Flow accède aux sorties de logs du jeu et suit les textures utilisées dans le jeu afin de mettre automatiquement à jour les informations pour les spectateurs. De cette façon, les spectateurs auront toujours les informations les plus récentes sur les textures utilisées dans le jeu.

    Flow Screenshot

    Défis

    Voici quelques défis auxquels j’ai été confronté lors du développement de Flow.

    Adaptabilité

    Les streamers ont différents outils et différentes manières de faire les choses. Il existe beaucoup de différents bots Twitch faisant les mêmes choses. Les streamers peuvent aussi avoir leurs propres bots personnalisés. Ils utiliseront beaucoup de clients Minecraft différents. Un des défis auxquels Flow a été confronté était de s’intégrer parfaitement avec tous ces différents services. L’utilisateur devrait avoir la même expérience avec chaque outil.

    Personnalisation

    Flow ne peut pas juste fonctionner, il doit s’adapter à la manière de faire du streamer. Par conséquent, Flow offre de nombreuses options de personnalisation pour s’assurer que le stream reste tel que le streamer le souhaite. L’expérience devrait être meilleure mais pas différente de ce que le streamer propose.

    Expérience utilisateur

    Nous avons déjà parlé de la façon dont Flow doit s’intégrer avec tous les services. Nous avons également parlé des défis du streaming en temps réel et de la concentration. Donc, nous savons que nos utilisateurs n’ont pas de temps à consacrer au dépannage.

    Capture d'écran de la fonctionnalité d'aperçu

    Performance

    Comme Flow cible les streamers de jeux, nous devons prendre en compte que l’ordinateur de l’utilisateur exécute un jeu tout en encodant de la vidéo en temps réel. Cela laisse peu de place pour Flow pour fonctionner sans impacter le flux ou les performance du jeu de quelque manière que ce soit. Flow est construit en utilisant Tauri et Rust pour atteindre cet objectif.

    Fonctionnalités

    Voici les différentes fonctionnalités que Flow offre pour la première version.

    Commandes automatiques

    Certaines informations sont suivies par Flow et mises à jour lorsqu’elles changent. Cela permet à l’utilisateur d’oublier totalement les commandes. L’utilisateur peut modifier le modèle de la commande et y insérer une variable qui sera remplacée par l’information la plus récente. Un aperçu est montré à l’utilisateur afin qu’il puisse voir à quoi le résultat de la commande ressemblera avec les données actuelles. L’utilisateur peut définir des alias pour remplacer les informations sensibles par une autre afin de ne pas divulger des infos privées ou donner plus d’informations que ce qui a été détecté. Pour les packs de ressources Minecraft, il est courant de trouver un lien de téléchargement à côté d’eux. Cela peut être ajouté avec un alias.

    Annonces

    Des annonces seront faites dans le chat lorsqu’une information est mise à jour. Cela peut être utile dans plusieurs scénarios. Par exemple, sur les VOD, l’utilisateur ne peut pas taper de commandes pour obtenir l’information qu’il souhaite car les bots fonctionnent en temps réel. Cela signifie que le seul moyen d’obtenir l’information serait de trouver quelqu’un qui a tapé la commande dans le replay du chat, ou de voyager dans le temps. Laisser une trace du changement dans le chat assure que les données existeront toujours aux côtés de la VOD.

    Scène automatique

    Le stream sniping est un autre grand défi de la création de contenu en temps réel car le streamer peut facilement être localisé. Les snipers essaient de rejoindre la même partie que le streamer pour la ruiner. La manière la plus courante de lutter contre cela est de cacher l’écran afin qu’il soit plus difficile pour un acteur malveillant de comprendre où se trouve le streamer et quand il commencera une partie. Cacher l’écran tout le temps peut être très ennuyeux à gérer et il est très facile d’oublier de repasser sur la scène du jeu lorsque qu’une partie commence. Flow peut suivre ce que fait le streamer et gérer l’écran pour lui en se connectant au logiciel de streaming qu’il utilise via un websocket.

    Support des Bots

    Le support des bots est plus ou moins limité selon leur API.

    • Bots personnalisés : Support complet pour chaque fonctionnalité
    • Compte du streamer : Support complet pour chaque fonctionnalité
    • Nightbot : Support pour la plupart des fonctionnalités
    • WizeBot