Table des matières de l'article :
Ce blog se concentre sur HLS, ou HTTP live streaming, qui est l'un des protocoles les plus populaires utilisés aujourd'hui pour le streaming vidéo. Le format HLS est un protocole de streaming vidéo en direct adaptatif au débit binaire. Développé à l'origine par Apple pour être utilisé sur les appareils iOS, Mac OS et Apple TV, le streaming HLS est devenu le protocole vidéo en direct le plus utilisé.
Cet article examinera les avantages et les inconvénients de la diffusion en direct HTTP. Nous le comparerons également à certains formats alternatifs. Nous examinerons également l'histoire du format HLS et demanderons d'où il vient et pourquoi.
Comment fonctionne la diffusion en direct HTTP (HLS).
La vidéo HLS est diffusée via le protocole de communication Web HTML5, la dernière norme en ligne pour le contenu Web. Les lecteurs vidéo HTML5 prennent en charge la vidéo en ligne diffusée sur une variété de protocoles. Ceux-ci incluent HTTP Live Streaming (HLS) et MPEG-DASH.
Vous pouvez considérer le protocole de streaming comme la méthode qui définit le format utilisé par la vidéo, la manière dont elle est compressée, la taille des blocs envoyés, etc.
HLS a été développé pour fournir une alternative à la vidéo Flash. Techniquement parlant, il utilise la compression vidéo H.264, AAC ou MP3 pour la compression audio et transmet les flux en utilisant le format conteneur MPEG-TS.
Le streaming vidéo via HLS fonctionne en découpant un flux vidéo MP4 en courts blocs vidéo d'environ 10 secondes. Les flux sont décrits à l'aide de listes de lecture M3U8 créées par le serveur HTTP. Cette liste de lecture, également appelée fichier manifeste, indexe les blocs vidéo.
Avantages de l'utilisation du protocole HLS
Ces dernières années, le format HLS est devenu un protocole standard pour la vidéo sur le Web, et pour cause. La capture HLS est assez facile à configurer, elle est gratuite et elle est prise en charge sur une variété d'appareils. Examinons quelques-uns des avantages de l'utilisation du protocole HLMS pour le streaming vidéo.
Avantage non. 1 : Diffusez sur tous les appareils
Premièrement, HTTP Live Streaming prend en charge la vidéo sur presque tous les appareils. Bien que créé à l'origine pour être utilisé sur les appareils Safari et iOS, le format HLS est désormais pris en charge sur tous les navigateurs Web modernes : mobile, ordinateur de bureau, tablette, etc.
Si vous et vos téléspectateurs accédez au contenu sur un smartphone, une tablette, un ordinateur de bureau ou un ordinateur portable, une télévision connectée, un décodeur ou tout autre appareil, la vidéo HLS sera lue. La plupart des navigateurs Web prennent également en charge la principale alternative, MPEG-DASH, mais iOS et Safari ne le font pas. C'est un grand avantage. Pour cette raison, HLS reste la norme de facto.
En utilisant HTML5, les développeurs ne se soucient plus du navigateur ou de l'extension que leurs visiteurs utilisent.
Avantage #2 : Excellente qualité
Le format vidéo HLS utilise une méthode appelée Adaptive Bitrate Streaming. Cette méthode mesure la vitesse Internet disponible pour chaque spectateur d'une vidéo particulière. Par conséquent, la qualité des vidéos diffusées est ajustée dynamiquement.
Par exemple, vous pouvez commencer à regarder une vidéo à la maison, où vous disposez d'une connexion Wi-Fi rapide. Ensuite, vous pouvez quitter la maison et monter dans la voiture avec un ami et continuer à regarder la vidéo avec une connexion mobile. Cette connexion Internet peut être plus lente. Vous pouvez également traverser des zones où la disponibilité de la bande passante est limitée. Même une connexion Internet dédiée à la maison ou au travail peut avoir une variation significative de la vitesse Internet.
Les technologies de streaming adaptatif partagent plusieurs aspects critiques. Tout d'abord, ils produisent plusieurs fichiers à partir du même fichier source à distribuer aux téléspectateurs qui regardent sur différents appareils alimentés par différentes vitesses de connexion. Deuxièmement, ils distribuent les fichiers de manière adaptative, modifiant le flux livré pour correspondre aux changements de débit réel et aux cycles CPU disponibles sur la station de lecture.
Troisièmement, ils fonctionnent tous de manière transparente pour l'utilisateur, de sorte que le spectateur clique sur un bouton (plutôt que sur plusieurs boutons comme avec l'expérience de la bande-annonce de film où les utilisateurs sélectionnent le débit binaire et la qualité vidéo) et toute la commutation de flux se produit dans les coulisses. Le téléspectateur peut remarquer un léger changement de qualité au fur et à mesure que les flux changent, mais aucune action n'est requise de sa part.
Toutes les technologies partagent également des caractéristiques opérationnelles similaires, bien qu'il existe certaines différences essentielles. Par exemple, toutes les technologies de streaming adaptatif surveillent des facteurs tels que l'état de la mémoire tampon vidéo pour évaluer le débit réel et l'utilisation du processeur, et les images perdues pour évaluer la puissance de traitement disponible sur la station de lecture. Ces informations sont utilisées pour déterminer quand changer de flux.
Par exemple, si la mémoire tampon vidéo est pleine et que l'utilisation du processeur est faible, la technologie de diffusion adaptative peut basculer vers un flux de qualité supérieure pour améliorer l'expérience de visionnage. Si la mémoire tampon tombe en dessous de certains niveaux ou si l'utilisation du processeur dépasse certains seuils, la technologie peut basculer vers un flux de qualité inférieure.
La principale différence de mise en œuvre entre les technologies est l'implication d'un serveur de streaming. Plus précisément, certaines technologies nécessitent un serveur de streaming et une communication constante entre le serveur et le lecteur. Si un commutateur de flux est nécessaire, le serveur l'implémente en envoyant un flux différent au visualiseur.
D'autres technologies fonctionnent sans serveur de streaming. Les différents flux de qualité sont envoyés à différentes adresses sur un ou plusieurs serveurs Web. Le lecteur surveille les heuristiques opérationnelles telles que l'utilisation du processeur et l'état de la mémoire tampon, décide quand un changement de flux est nécessaire et commence à rattraper les données d'un flux différent le cas échéant. .
Dans tous les cas, les technologies de streaming adaptatif permettent aux producteurs de fournir des flux de qualité exceptionnelle à l'extrémité supérieure du spectre de bande passante/puissance, car ils desservent également l'extrémité inférieure. Sans streaming adaptatif, la plupart des fabricants fourniraient un seul fichier de qualité moyenne qui apparaît en dessous de la moyenne dans la configuration de visualisation optimale, ou créeraient plusieurs fichiers et forceraient le spectateur à sélectionner la configuration souhaitée.
La vidéo livrée au format HLS, lorsqu'elle est configurée correctement, vous fournira dynamiquement la meilleure qualité vidéo possible avec un minimum de mise en mémoire tampon et de décalage. Cette approche conduit à une expérience utilisateur supérieure. La vidéo essaiera de continuer à jouer autant que possible. La qualité augmentera tant que votre connexion Internet sera suffisamment rapide pour gérer la charge.
Avantage #3 : Rentable
Un autre gros avantage du format HLS est son moindre coût. Comme nous l'avons dit, le format est pris en charge par presque tous les appareils via HTML5 et les extensions de source multimédia. Vous n'avez pas besoin d'utiliser un appareil spécifique pour regarder le contenu. Les serveurs Web standard peuvent gérer la livraison HLS sans problème (en fonction de la charge et d'autres facteurs).
Par exemple, le Serveur Web NGINX que nous utilisons dans l'entreprise prend en charge nativement le support HLS également dans la version gratuite et open source.
Inconvénients de l'utilisation du protocole HTTP Live Streaming
Aucun protocole ou technologie n'est parfait et HTTP Live Streaming n'est pas différent. L'utilisation du format HLS présente certains inconvénients. Examinons l'un des problèmes les plus courants : la latence.
latence
La latence fait référence au temps entre le moment où un événement se produit dans le monde réel et le moment où les téléspectateurs peuvent le voir. Essentiellement, c'est le temps qu'il faut pour que la vidéo soit enregistrée par une caméra, traitée par un encodeur HLS, transmise sur Internet, distribuée aux serveurs "périphériques" et décodée pour la visualisation.
Notez que la latence ne tient pas compte des ralentissements dus aux vitesses Internet et aux goulots d'étranglement ; ce sont des questions largement distinctes.
HLS a été conçu pour maximiser la qualité, et non pour minimiser la latence absolue. Son intervalle d'images clés, sa taille de paquet et ses exigences de tampon de lecture ne sont tout simplement pas adaptés à la diffusion en direct ultra-rapide. Par conséquent, cela ajoute généralement un délai de 20 à 60 secondes à votre flux. Ces plates-formes logicielles de diffusion en direct offrent des solutions intégrées à faible latence et ce sont celles-là à considérer.
Ce n'est généralement un problème que pour un petit sous-ensemble de diffuseurs en direct, en particulier les joueurs et les amateurs de sport. Dans ces situations, la vitesse compte. Cependant, la plupart des utilisateurs peuvent facilement ignorer la faible latence liée à l'hébergement d'un flux HLS, car cela n'aura aucun impact sur la satisfaction ou l'expérience des téléspectateurs. Pour presque tous les téléspectateurs, une vidéo de haute qualité pouvant être visionnée à tout moment, sur n'importe quel appareil, est plus importante que la latence.
Solutions au problème de latence
La vidéo Flash a fourni des flux en direct à faible latence. Mais avec le déclin du Flash, la vidéo sur Internet est dans une période de transition. Il n'existe pas encore de solutions fantastiques au problème de latence HLS. Mais de nombreuses entreprises différentes y travaillent, y compris le fournisseur de CDN de premier plan Akamai. Des remplacements pour HLS sont en cours (comme le MP4 fragmenté), mais les appareils ne sont pas encore prêts à les lire. Le prochain tour pourrait encore avoir lieu dans quelques années.