Aller au contenu

« Présentation de la conférence OSCC 2024 « Voice WebRTC pour OpenSimulator » » : différence entre les versions

De OSWiki
Ligne 59 : Ligne 59 :
# '''Réduction de la Charge de Calcul''' : les viewers n'ont plus besoin de traiter chaque flux audio individuellement.
# '''Réduction de la Charge de Calcul''' : les viewers n'ont plus besoin de traiter chaque flux audio individuellement.
# '''Optimisation de la Bande Passante''' : en centralisant le traitement audio, le mixer peut réduire le nombre de flux audio envoyés à chaque viewer.
# '''Optimisation de la Bande Passante''' : en centralisant le traitement audio, le mixer peut réduire le nombre de flux audio envoyés à chaque viewer.
# '''Janus propose un traitement audio en stéréo''', offrant ainsi une certaine forme de spatialisation du son, bien que celle-ci puisse être moins immersive que dans Second Life. C'est un début...
# '''Protection des données ''' : les viewers ne voient pas les données des autres viewers.
# '''Protection des données ''' : les viewers ne voient pas les
 
= Qu'est ce que Janus-Gateway  ? =
* C'est un '''projet open source pour les serveur WebRTC''' [https://janus.conf.meetecho.com/ Site officiel] [https://github.com/meetecho/janus-gateway Janus-gateway sur Github]
* Il dispose d'un '''plugin « audio-bridge »''' pour les « salles de conférence ».
* Plusieurs personnes rejoignent des « salles » et entendent tout le monde.
* Il possède des '''fonctions de positionnement''' permettant le déplacement en stéréo.
 
= Second Life et WebRtc=
Linden Lab a été très généreux en publiant les protocols :
== Voice WebRtc ==
* [https://wiki.secondlife.com/wiki/WebRTC_Voice Fonctionnalités et feuille de route]
== WebRTC Voice sur Second Life, le point de vue d'un développeur ==
* [https://webrtc-public-voice-beta.s3.us-west-2.amazonaws.com/WebRTC+on+Second+Life%2C+a+Developer's+View.pdf Description détaillé du protocole(PDF)]
* 🏗️
* 🏗️

Version du 12 janvier 2025 à 16:43

Présentation de la conférence OSCC 2024 de Robert Adams connu sous le nom de Misterblue Wave dans le monde virtuel.(Source : https://youtu.be/nL78fieIFYg)

Introduction

Cette présentation concerne les développeurs et les propriétaires de simulateurs ou de grille OpenSimulator. Pour les utilisateurs, il n'y aura pas de changements dans les viewers.

Il s'agira ici de :

  1.  donner des détails sur la mise en œuvre de la voice WebRTC par Second Life.
  2. décrire la voice WebRtc basée sur Janus-gateway pour OpenSimulator : os-webrtc-janus

Second Life remplace Vivox

Jusqu’à présent Second Life utilisait Vivox et Opensimulator utilisait un support « gratuit » de Vivox. Mais, suite à une mise à jour, Vivox a abandonné certaines fonctionnalités et SecondLife a décidé de le remplacer. Liden Lab a mis en place ses propres serveurs pour le chat vocal spatial et non spatiale. Une solution basée sur les protocoles WebRtc a été développée.

Ainsi, les  viewers tiers devraient supporter la voice Vivox et WebRTC. Beaucoup pensent ne supporter que la voice WebRtc laissant OpenSimulator sans solution de chat vocal.

Qu'est ce que WebRtc ?

WebRTC est un ensemble de standards permettant de créer des flux audio/vidéo/de données en temps réel entre les navigateurs. Il est probablement basé sur plus de 10 standards / normes parmi lesquelles il y a :

  • RTP : protocole de communication informatique permettant le transport de données soumises à des contraintes de temps réel, tels que des flux média audio ou vidéo.
  • SDP: protocole de communication de description de paramètres d'initialisation d'une session de diffusion en flux.
  • SIP : protocole de communication standard ouvert de gestion de sessions souvent utilisé dans les télécommunications multimédia (son, image, etc.). Il est depuis 2007 le plus courant pour la téléphonie par internet (la VoIP).
  • ICE(en) : est une technique utilisée dans les réseaux informatiques pour trouver des moyens permettant à deux ordinateurs de communiquer entre eux de la manière la plus directe possible dans un réseau pair-à-pair. Cela est le plus souvent utilisé pour des médias interactifs tels que la voix sur protocole Internet (VoIP), les communications pair-à-pair, la vidéo et la messagerie instantanée.
  • STUN : protocole client-serveur permettant à un client UDP situé derrière un routeur NAT (ou de multiples NAT) de découvrir son adresse IP publique ainsi que le type de routeur NAT derrière lequel il est. Ces informations sont utilisées pour échanger correctement des données UDP avec l'extérieur d'un réseau NAT.
  • TURN(en) : protocole qui aide à traverser les traducteurs d'adresses réseau (NAT) ou les pare-feu pour les applications multimédias. Il peut être utilisé avec le protocole TCP et le protocole UDP. Il est particulièrement utile pour les clients sur des réseaux masqués par des dispositifs NAT symétriques.

Flux entre deux navigateurs

Dans un réseau étendu

Dans un réseau local

Avantages de l'Utilisation d'un Mixer dans la Communication Audio

Avantages :

  1. Réduction de la Charge de Calcul : les viewers n'ont plus besoin de traiter chaque flux audio individuellement.
  2. Optimisation de la Bande Passante : en centralisant le traitement audio, le mixer peut réduire le nombre de flux audio envoyés à chaque viewer.
  3. Protection des données  : les viewers ne voient pas les données des autres viewers.

Qu'est ce que Janus-Gateway  ?

  • C'est un projet open source pour les serveur WebRTC Site officiel Janus-gateway sur Github
  • Il dispose d'un plugin « audio-bridge » pour les « salles de conférence ».
  • Plusieurs personnes rejoignent des « salles » et entendent tout le monde.
  • Il possède des fonctions de positionnement permettant le déplacement en stéréo.

Second Life et WebRtc

Linden Lab a été très généreux en publiant les protocols :

Voice WebRtc

WebRTC Voice sur Second Life, le point de vue d'un développeur