Videostreaming et
Visioconference pour le
Web
TARIK ZAKARIA BENMERAR, PHD
Présentation Personnelle
Exemple de Projet
Videostreaming vs Visioconférence
 Videostreaming
 Quelques secondes de latences.
 1 vers plusieurs.
 Simple à mettre en place et à optimiser.
 Visioconférence
 Moins d’une seconde de latence (interactive).
 Plusieurs vers plusieurs.
 Complexe à mettre en place et à optimiser.
Le flux média
 Codecs et leurs paramètres
 VP8, AVC / H.264, VP9, Opus.
 Formats de conteneurs
 ISOBMF (e.g. MP4, 3GP)
 AVI, MPG, MKV, MPEG-2 TS
 Paquetisation
 Transport de blocks courts (20-30ms) et indépendants dans des paquets.
 Utilisé pour le RTP
 Outillage
 MP4Box, FFMPEG, GStreamer
Videostreaming
 1 vers plusieurs avec latence de quelques
secondes.
 Le serveur de streaming reçoit le flux d’un
dispositif média
 Le serveur encode ce flux et le segmente.
 Le serveur distribue aux clients le flux avec
des méthodes compatibles avec les
navigateurs web.
Videostreaming
 Protocole réseau propriétaire développé par Adobe Systems.
 Diffusion de flux de données en streaming.
 Généralement entre le dispositif qui diffuse et le serveur de stream.
 Le protocole utilise le TCP et encapsule les requête à travers HTTP pour
passer les par-feux.
 Youtube et Facebook lives utilisent ce protocole pour la diffusion.
Le protocole RTMP
Videostreaming
Le protocole RTMP
OBS comme client RTMP
Videostreaming
 Adjuster la qualité du stream en
temps réel à la bande passante
et au CPU du client.
Adaptative Bitrate
Videostreaming
Formats de distribution
 Apple HTTP Live Streaming (HLS).
 Dynamic Adaptive Streaming over
HTTP (DASH).
 WebSocket à travers MSE (Media
Source Extension) pour les
navigateurs web.
Videostreaming
La solution Cloud
Videostreaming
La solution hébergé
Visioconférences
 Plusieurs vers plusieurs avec latence de
quelques millis secondes.
 WebRTC est le protocole utilisé dans les
navigateurs Web.
 Deux modèles d’échange de flux :
 Peer-to-peer (Simple mais peu scalable).
 Centralisé (Complexe mais optimisé).
Visioconférences
WebRTC (Les topologies)
Visioconférences
WebRTC
 Proposé par W3C.
 une technologie permettant les
communications directes et en
temps réel entre plusieurs
navigateurs.
 Basé sur des protocoles réseaux
existants.
Visioconférences
WebRTC (Signalisation avec SDP)
 La signalisation permet de mettre en
place la session de visioconférence.
 Les parties impliqués échangent les
informations réseaux et media.
 Dans le web, ces informations sont
échangés à travers WebSocket
(Possibilité de proxy avec SIP et d’autres
protocoles).
Visioconférences
WebRTC (ICE, STURN and TURN)
 ICE (Interactive Connectivity
Establishment) gère la création de la
connexion entre les deux parties.
 Il y’a 3 modes de connectivité.
 Directe.
 Directe avec NAT : Serveur STUN.
 Indirecte avec NAT : Serveur TURN.
 Outils pour STUN/TURN : Coturn.
Visioconférences
WebRTC (Flux Media, RTP/RTCP)
Paquet RTP
Visioconférences
WebRTC (Diagnostique)
Visioconférences
WebRTC (Solutions Centralisés)
 AntMedia.
 Kurento.
 MediaSoup.
 Janus.
 Jitsi
Visioconférences
Les aspects avancés
 Connectivité edge.
 Adaptativité avancée à la bande passante.

Videostreaming et visioconference pour le Web - Evènement GDSC USTHB Tech plus