Amélioration du streaming
Introduction
Pour notre solution d'interaction à distance, nous souhaitons pouvoir partager des flux audio-visuels entre des utilisateurs variés (PC, VR, web).
Nous utilisons Node-Media-Server comme intermédiaire. Il utilise une large gamme d'outils pour accomplir deux tâches :
- Convertir les flux reçus (transcoding/transmuxing), selon une configuration donnée
- Proposer, à la demande, le contenu sous ses nouveaux formats
En complément, une API dédiée aux médias est mise en place pour servir d'intermédiaire entre clients et serveur média. L'outil principal exploité pour convertir les flux est Ffmpeg, il est intégré à Node-Media-Server notamment.
Si nous parvenons sans majeure difficulté à transmettre un flux vidéo de web en web, la transmission d'un flux vers Unreal Engine est plus compliqué.
Dans cette section, je décris les choix réalisés, les limites rencontrées et l'état actuel des fonctionnalités de streaming de notre solution.