Limkuat

Nous sommes en 2023, RTMP est dépassé ?

Ou pourquoi RTMP ne permet pas de streamer en conditions dégradées, typiques des lives en extérieur.

Nous sommes en 2023, le protocole RTMP est vieux, mais il s’agit toujours du protocole de choix pour transmettre le flux d’un live entre son lieu de production et la plateforme qui le diffuse au public (YouTube, Twitch, etc.). Le vénérable RTMP est bien supporté par la majorité de ces plateformes et est implémenté dans bon nombre d’équipements et de logiciels, aussi bien professionnels que grand public.

Streamer en mobilité

RTMP marche plutôt bien… tant que tout va bien. Eh oui, RTMP n’est pas le protocole idéal pour tous les types de productions. Récemment, nous nous sommes intéressés aux diffusions en extérieur, souvent en mobilité : imaginez par exemple le live stream d’une visite dans un musée, ou encore une balade à vélo dans les rues de la ville. La connexion à Internet pour la diffusion en live est alors assurée par le réseau cellulaire (4G/LTE, 5G) qui n’est pas aussi stable que la liaison câblée de bout en bout. Dans ces conditions, RTMP s’avère peu résilient, il s’accomode mal de la moindre petite coupure de réseau ou d’une baisse de débit momentanée que l’on subit sur ce type de connexion.

En plus de la session TCP (sur lequel RTMP repose) à ré-intialiser à chaque reconnexion, le protocole RTMP lui-même doit procéder à son initialisation. Cela induit donc une latence dont on se passe évidemment volontiers dans le contexte d’un live stream en conditions de réseau dégradé.

Des codecs d’ancienne génération

Autre problème : RTMP impose le format des données audio/vidéo qui passe dedans. Utiliser RTMP c’est donc se cantonner aux codecs supportés, soit des codecs qui ne sont pas les plus optimisés en débit des flux (bitrate). Typiquement, on utilisera le codec vidéo H.264 sur transport RTMP. Un codec honorable, mais bien moins performant que d’autres pour minimiser la bande passante requise à qualité égale. Pourtant, la bande passante est un poste à optimiser dans un contexte où le haut débit n’est pas assuré de façon continue par le réseau. En 2023, c’est bien dommage de ne pas profiter de codecs plus performants tels que HEVC (H.265), VP9 ou le très récent AV1 qui semble prometteur pour les applications de streaming live.

Il est à noter que des équipements non professionnels (PC, téléphones) disposent parfois bien d’une puce matérielle capables d’encoder en HEVC ou VP9, de nos jours (en plus de H.264). Un logiciel comme OBS est capable d’utiliser ces encodeurs s’il sont détectés sur la machine.

Une alternative moderne : le protocole SRT

En réponse à cela, le protocole Secure Reliable Transport (SRT) a vu le jour. Il s’agit d’un protocole ouvert et librement implémentable. Sur le plan plutôt technique, le protocole SRT est :

  • basé sur UDP pour minimiser la latence et être plus résilient en conditions de connectivité difficile ;
  • plutôt bien accepté par les constructeurs d’équipements dédiés au live stream (par exemple : LiveU, Matrox) ;
  • agnostique au niveau des codecs à faire passer, ainsi des codecs modernes et plus économes en bande passante peuvent être utilisés.

D’autres aspects techniques intéressants sont notables et pourront faire l’objet de leur propre article prochainement.

Éviter la coupure totale d’un stream

Cependant, SRT n’est pas exempt de défauts qui rendent son usage encore difficile sur certaines productions, notamment le manque de gestion de la priorisation des flux. Par exemple, le fait de sacrifier le flux vidéo pour maintenir le flux audio tant que les conditions du réseau ne permettent pas de faire passer à la fois l’image et le son. Un tel mécanisme permettrait d’offrir une meilleure expérience pour le public qui n’aurait plus à subir une coupure brute de tous les flux, mais qui pourrait au moins continuer d’avoir le son le temps que le réseau retourne à sa situation nominale.

Nous nous penchons actuellement sur un protocole libre qui pourrait permettre cela. Le projet est encore immature, mais à ce jour nous avons déjà mené des premiers tests grandeur nature : dans les rues de Paris et dans les sous-terrains du métro.

Les résultats sont encourgeants pour le moment, nous avons hâte de partager d’avantage de détails prochainement !


Article publié par Luciano Calamia et Amaury Carrade, le 5 janvier 2023. Besoin de captation et de diffusion en direct ? Contactez-nous !