WebRTC - Présentation

Le Web n'est plus étranger à la communication en temps réel car WebRTC (Web Real-Time Communication)entre en jeu. Bien qu'il ait été publié en mai 2011, il est toujours en développement et ses normes changent. Un ensemble de protocoles est normalisé par Communication en temps réel dans les navigateurs WEB Groupe de travail àhttp://tools.ietf.org/wg/rtcweb/ du IETF (Internet Engineering Task Force)tandis que de nouveaux ensembles d'API sont normalisés par le Groupe de travail sur les communications en temps réel Web àhttp://www.w3.org/2011/04/webrtc/ du W3C (World Wide Web Consortium). Avec l'apparition de WebRTC, les applications Web modernes peuvent facilement diffuser du contenu audio et vidéo à des millions de personnes.

Schéma de base

WebRTC vous permet de configurer rapidement et facilement des connexions peer-to-peer avec d'autres navigateurs Web. Pour créer une telle application à partir de zéro, vous auriez besoin d'une multitude de frameworks et de bibliothèques traitant des problèmes typiques tels que la perte de données, la suppression de connexion et la traversée NAT. Avec WebRTC, tout cela est intégré dans le navigateur prêt à l'emploi. Cette technologie ne nécessite aucun plug-in ou logiciel tiers. Il est open-source et son code source est disponible gratuitement surhttp://www.webrtc.org/.

L'API WebRTC comprend la capture multimédia, l'encodage et le décodage audio et vidéo, la couche de transport et la gestion de session.

Capture multimédia

La première étape consiste à accéder à la caméra et au microphone de l'appareil de l'utilisateur. Nous détectons le type d'appareils disponibles, obtenons l'autorisation de l'utilisateur pour accéder à ces appareils et gérer le flux.

Encodage et décodage audio et vidéo

Envoyer un flux de données audio et vidéo sur Internet n’est pas une tâche facile. C'est là que le codage et le décodage sont utilisés. Il s'agit du processus de division des images vidéo et des ondes audio en plus petits morceaux et de leur compression. Cet algorithme s'appellecodec. Il existe une énorme quantité de codecs différents, qui sont gérés par différentes entreprises ayant des objectifs commerciaux différents. Il existe également de nombreux codecs dans WebRTC tels que H.264, iSAC, Opus et VP8. Lorsque deux navigateurs se connectent, ils choisissent le codec pris en charge le plus optimal entre deux utilisateurs. Heureusement, WebRTC effectue la plupart de l'encodage dans les coulisses.

Couche de transport

La couche de transport gère l'ordre des paquets, gère la perte de paquets et se connecte à d'autres utilisateurs. Encore une fois, l'API WebRTC nous donne un accès facile aux événements qui nous indiquent quand il y a des problèmes avec la connexion.

Gestion de session

La gestion de session traite de la gestion, de l'ouverture et de l'organisation des connexions. Ceci est communément appelésignaling. Si vous transférez des flux audio et vidéo à l'utilisateur, il est également judicieux de transférer des données collatérales. Ceci est fait par leRTCDataChannel API.

Les ingénieurs d'entreprises comme Google, Mozilla, Opera et d'autres ont fait un excellent travail pour apporter cette expérience en temps réel sur le Web.

Compatibilité du navigateur

Les normes WebRTC sont l'une des évolutions les plus rapides sur le Web, cela ne signifie donc pas que chaque navigateur prend en charge toutes les mêmes fonctionnalités en même temps. Pour vérifier si votre navigateur prend en charge WebRTC ou non, vous pouvez visiterhttp://caniuse.com/#feat=rtcpeerconnection. Dans tous les tutoriels, je vous recommande d'utiliser Chrome pour tous les exemples.

Essayer WebRTC

Commençons à utiliser WebRTC dès maintenant. Accédez à votre navigateur jusqu'au site de démonstration à l'adressehttps://apprtc.appspot.com/

Cliquez sur le bouton «REJOINDRE». Vous devriez voir une notification déroulante.

Cliquez sur le bouton «Autoriser» pour commencer à diffuser votre vidéo et audio sur la page Web. Vous devriez voir un flux vidéo de vous-même.

Ouvrez maintenant l'URL sur laquelle vous vous trouvez dans un nouvel onglet de navigateur et cliquez sur «REJOINDRE». Vous devriez voir deux flux vidéo - un de votre premier client et un autre du second.

Vous devez maintenant comprendre pourquoi WebRTC est un outil puissant.

Cas d'utilisation

Le Web en temps réel ouvre la porte à une toute nouvelle gamme d'applications, notamment le chat textuel, le partage d'écran et de fichiers, les jeux, le chat vidéo, etc. Outre la communication, vous pouvez utiliser WebRTC à d'autres fins telles que -

  • marketing en temps réel
  • publicité en temps réel
  • communication back office (CRM, ERP, SCM, FFM)
  • gestion des ressources humaines
  • réseautage social
  • services de rencontres
  • consultations médicales en ligne
  • services financiers
  • surveillance
  • jeux multijoueurs
  • la diffusion en direct
  • e-learning

Sommaire

Vous devriez maintenant avoir une compréhension claire du terme WebRTC. Vous devriez également avoir une idée des types d'applications qui peuvent être créés avec WebRTC, car vous l'avez déjà essayé dans votre navigateur. Pour résumer, WebRTC est une technologie assez utile.