Base de temps média indéterminée : pourquoi le jitter casse le streaming temps-réel & comment on le corrige
Dans les réseaux à commutation de paquets, les paquets média arrivent avec un espacement imprévisible — c'est une base de temps indéterminée. C'est la cause racine de la dérive lip-sync, images gelées, et voix robotique.
D'où ça vient
- Délai file d'attente routeurs congestionnés (ms–secondes).
- Flapping routage / load balancing entre chemins.
- Contention Wi-Fi (backoff CSMA/CA).
- Variabilité bitrate encodeur (VBR).
Conséquences
| Symptôme | Cause racine |
|---|---|
| Gel vidéo / macroblocs | Sous-dépassement tampon décodeur |
| Clics audio / voix robot | Famine tampon lecture |
| Dérive AV | Horloges audio/vidéo indépendantes + jitter réseau |
| Latence haute | Tampon jitter surdimensionné pour garantir continuité |
Pile d'atténuation (Défense en couches)
- QoS réseau : DSCP EF (46) pour RTP, files priorité, traffic shaping.
- Transport : RTP/RTCP sur UDP ; rapports émetteur/récepteur RTCP pour sync NTP.
- Tampon jitter : Adaptatif (WebRTC : cible 30–200 ms, min 10 ms).
- Dissimulation : PLC (audio), répétition image / FEC (vidéo).
- Sync horloges : NTP (ms) → PTP/IEEE 1588 (µs) → gPTP (TSN) pour pro AV.
- Bitrate adaptatif : DASH/HLS/WEBRTC-SVC — baissez couches avant vidange tampon.
- Correction d'erreur avant (FEC) : Parité XOR (payload RTP) ou RaptorQ (application).
Standards modernes
- WebRTC : GCC (Google Congestion Control) + NetEQ tampon jitter.
- SRT : ARQ retransmission + latence configurable (défaut 120 ms).
- RIST : profils Main/Simple, fusion hitless SMPTE 2022-7.
- CMAF Low Latency : Transfert encodage par chunks (CTE) + durée segment 1–2 s.
Règle de conception
Assumez que le réseau violera votre budget temporel. Construisez des pipelines qui dégradent gracieusement (artefact → gel → muet) plutôt que plantent.
