4. 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.
5. 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
6. 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.
7. 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
9. Videostreaming
Adjuster la qualité du stream en
temps réel à la bande passante
et au CPU du client.
Adaptative Bitrate
10. 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.
13. 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é).
15. 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.
16. 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).
17. 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.