Qu'est-ce que la diffusion en direct HTTP (HLS) ? Avantages et inconvénients du HLS

Le fonctionnement de HLS est assez simple. Une liste de lecture principale (alias manifeste principal) – qui contient des informations sur les résolutions, les rendus, les langues, le codec, etc. – est envoyée au lecteur.
15 octobre 2023
-
Procès-verbal lu

HTTP Live Streaming est né à une époque tumultueuse. Le lancement de l’iPhone en 2007 a ouvert la voie à la guerre des smartphones. Et avec cela s’est produit un changement radical dans la consommation de contenu.

Les téléphones portables étaient déjà populaires. Les utilisateurs n'étaient plus connectés à leur ordinateur de bureau ; ils pouvaient accéder à Internet en déplacement ! Il était inévitable que les smartphones accélèrent encore cette tendance. Les fournisseurs de contenu devaient donc désormais proposer des vidéos en phase avec cette nouvelle mobilité.

Mais il y avait un défi – de taille en plus ! Flash Player d'Adobe était à l'époque le champion en titre de la diffusion vidéo. Cependant, le flash n'était pas bien optimisé pour les appareils mobiles. D’une part, il s’agissait d’une batterie gourmande, ce qui était une préoccupation majeure pour les utilisateurs qui souhaitaient regarder des vidéos en déplacement. Flash n'était pas non plus adapté aux écrans tactiles et certains systèmes d'exploitation mobiles n'étaient pas du tout pris en charge.

Apple s'est vite rendu compte qu'une nouvelle norme était nécessaire, capable de garantir RTMP-comme les flux sur les appareils mobiles, profitez de la spécification HTML5 et soyez plus efficace dans l'utilisation de la bande passante. Ainsi, en 2009, il a proposé HTTP Live Streaming (HLS). Le protocole de streaming est depuis devenu le standard de facto pour la diffusion de vidéos sur toutes les plateformes et tous les navigateurs.

Dans cet article, nous examinerons de plus près ce qu'est HLS, comment fonctionne un flux HLS et quand vous devez l'utiliser pour vos projets.

HTTP Live Streaming (HLS)

HTTP Live Streaming est un protocole de communication à débit adaptatif créé par Apple pour diffuser du contenu vidéo et audio sur Internet. Il utilise l'un des trois principaux standards du Web – Hypertext Transfer Protocol (HTTP) – pour transférer des données entre les serveurs et les clients.

HLS est conçu pour la fiabilité et l’évolutivité en plus des performances multi-appareils et multiplateformes. Ces aspects le rendent idéal pour une gamme d'applications de streaming, notamment les événements en direct à grande échelle et la vidéo à la demande (VOD).

Comparé à d'autres techniques de débit adaptatif telles que MPEG-DASH, HLS se distingue par le fait qu'il utilise plusieurs flux avec des débits binaires variables pour une résolution donnée. DASH, à l’inverse, utilise un seul flux pour un débit binaire sur une certaine résolution. Ainsi, alors que DASH offre de meilleures performances dans des conditions de réseau fixe, dans le monde réel, HLS a un avantage !

La capacité de HLS à basculer entre différents flux en fonction de la connexion réseau étend des performances de streaming supérieures. Cela offre une expérience utilisateur inégalée dans des conditions réelles, car la vitesse Internet a toujours tendance à varier, en particulier sur les réseaux cellulaires. Étant un protocole basé sur HTTP, HLS est facilement implémenté sur tous les appareils, ce qui en fait une option attrayante pour les fournisseurs de contenu et les plateformes.

Comment fonctionne la diffusion HTTP en direct ?

Le fonctionnement de HLS est assez simple. Une liste de lecture principale (également appelée manifeste principal) – qui contient des informations sur les résolutions, les combinaisons de débits binaires (rendu), les langues, le codec, les métadonnées, etc. – est envoyée au lecteur. Chacun de ces rendus possède une liste de lecture distincte (également appelée manifeste enfant) qui répertorie leurs noms, séquences et URL (URI) respectives.

Le lecteur télécharge ensuite ces listes de lecture et démarre la lecture. Pendant la lecture de la vidéo, le client bascule entre les rendus en fonction des conditions réseau de l'appareil. Tout ce gros travail est effectué en arrière-plan et garantit une lecture ininterrompue.

L'image ci-dessus représente une liste de lecture HLS multivariée. Il commence par la balise #EXTM3U, qui est obligatoire et représente un fichier M3U étendu. Le #EXT-X-STREAM-INF informe le joueur que l'URL suivante (URI) est un autre fichier de playlist, c'est-à-dire le manifeste enfant.

La balise #EXT-X-STREAM-INF contient plusieurs paramètres, notamment BANDWIDTH (débit binaire supérieur en bits par seconde) et CODECS (identifiants de format RFC-6381 pour l'audio et la vidéo séparés par une virgule). Le paramètre CODECS est facultatif mais fortement recommandé. Il indique quel encodeur est utilisé pour les flux audio et vidéo. Il en va de même pour la RÉSOLUTION (taille d'affichage en pixels), FRAME-RATE (fréquence d'image maximale) et AVERAGE-BANDWIDTH (débit binaire moyen). Pour la protection HDCP, vous pouvez également utiliser le paramètre HDCP-LEVEL. Tout ce que vous avez à faire est d'utiliser TYPE-0 (pour la résolution HD) et TYPE-1 (pour les résolutions supérieures à HD).

Voici un autre exemple de liste de lecture multivariée plus avancée.

Dans cet exemple, nous pouvons voir une liste de lecture avec deux groupes de rendus audio supplémentaires (représentés par les GROUP-ID de audio-lo et audio-hi). Chaque élément multimédia (dans ce cas, les fichiers audio pour différentes langues) doit être représenté par la balise EXT-X-MEDIA et son TYPE (AUDIO, VIDEO, SUBTITLES ou CLOSED-CAPTIONS.)

De plus, chaque groupe de sélection de média doit avoir ses éléments codés avec les mêmes caractéristiques. Par exemple, ils doivent avoir le même codec, la même bande passante maximale, etc.

Quelle est l’architecture de HLS ?

HTTP Live Streaming a une architecture à trois niveaux : serveur d'origine, serveur de distribution (edge) et client.

1. Serveur d'origine

Le serveur d'origine reçoit une entrée AV et la convertit en un fichier compressé prêt à être distribué. Généralement, il comprend un encodeur multimédia et un segmenteur de flux. L'encodeur multimédia encode le fichier multimédia dans des formats compatibles. Le segmenteur de flux divise ensuite le média codé en petits segments et crée un fichier d'index. Le fichier d'index contient les métadonnées des segments multimédias.

2. Serveur de distribution (Edge)

Le serveur de distribution, ou CDN, est responsable de la livraison du contenu aux clients. Il comprend un serveur HTTP et un serveur multimédia. Le serveur HTTP stocke le fichier d'index et les segments multimédias. Un serveur multimédia diffuse les fichiers multimédias vers les clients.

3. Client

Le client est responsable de demander et de recevoir le contenu du serveur de distribution. Il comprend un client HTTP ou un lecteur multimédia. Le client HTTP demande le fichier d'index au serveur HTTP. Le lecteur multimédia utilise ensuite le fichier d'index pour demander les segments multimédias au serveur multimédia et les lit.

Fonctionnalités:

HTTP Live Streaming est livré avec une multitude de fonctionnalités qui en font le choix incontournable pour les fournisseurs de contenu. Jetons un coup d'œil à certaines de ses principales caractéristiques :

1. Streaming vidéo en direct, à la demande et événementiel

L'un des avantages de HLS est qu'il prend en charge les listes de lecture en direct, à la demande et lors d'événements. Cela signifie que vous pouvez utiliser le même protocole pour diffuser en direct un événement ainsi qu'un fichier vidéo existant stocké sur votre serveur. Cependant, étant donné que HLS donne la priorité à la qualité vidéo plutôt qu'à la latence, l'utilisation de bout en bout du protocole de streaming peut entraîner un retard allant jusqu'à 45 secondes dans les flux. Ce défi est généralement résolu en utilisant un protocole différent (tel que RTMP) pour l'ingestion. Il fait partie de l'extension LL-HLS et réduit la latence à env. 2 secondes.

2. Compatibilité multiplateforme

Un autre avantage de HLS est qu’il est compatible avec tous les principaux navigateurs et plates-formes. Cela inclut Safari, Edge, Chrome, Firefox, Android, iOS, tvOS, Playstation 4, Xbox One, etc. Ainsi, que vous souhaitiez diffuser du contenu aux utilisateurs sur des ordinateurs de bureau, des appareils mobiles ou des téléviseurs intelligents, HLS est ce dont vous avez besoin ! 

3. Streaming à débit adaptatif

HTTP Live Streaming prend également en charge plusieurs débits binaires. Cela signifie que vous pouvez encoder vos vidéos avec différents débits binaires pour différents appareils et vitesses Internet. Le client basculera ensuite automatiquement entre ces rendus en fonction des conditions du réseau pour garantir une diffusion vidéo transparente. Il en résulte une meilleure expérience utilisateur, sans aucun signe de mise en mémoire tampon ou de flux vidéo de mauvaise qualité.

4. Cryptage et authentification

HTTP Live Streaming prend également en charge le cryptage et l'authentification. Cela signifie que vous pouvez crypter vos flux vidéo pour les protéger contre tout accès non autorisé. Vous pouvez également authentifier les utilisateurs avant qu'ils ne puissent accéder à votre contenu. Ceci est particulièrement utile si vous souhaitez diffuser du contenu derrière un paywall ou restreindre l'accès à certains pays ou régions.

5. Prise en charge de plusieurs langues

Un autre avantage de HLS est qu’il prend en charge plusieurs langues. Cela signifie que vous pouvez créer des variantes de listes de lecture pour différentes langues et que le client basculera automatiquement entre elles en fonction des paramètres de préférences de l'utilisateur. Ainsi, que vous souhaitiez diffuser du contenu en anglais, espagnol, français ou dans toute autre langue, HLS est là pour vous !

6. Sous-titres codés

Le sous-titrage codé est une fonctionnalité qui permet aux personnes sourdes ou malentendantes de suivre le contenu audio. HLS prend en charge le sous-titrage codé en vous permettant d'intégrer des sous-titres dans vos flux vidéo. Ces légendes sont ensuite affichées à l'écran avec la vidéo pour un accès facile.

7. Sous-titres

Les sous-titres sont similaires aux sous-titres codés, mais sont généralement utilisés pour les films ou les émissions de télévision en langue étrangère où les téléspectateurs ne sont peut-être pas familiers avec le dialogue parlé. Semblable au sous-titrage codé, HLS vous permet d'intégrer des sous-titres dans vos flux vidéo afin qu'ils puissent être affichés à l'écran avec la vidéo elle-même.

8. Audiodescriptions

Les descriptions audio sont un type de piste audio qui décrit ce qui se passe à l'écran pour les personnes aveugles ou malvoyantes. HLS prend en charge les pistes d'audiodescription, appelées Descriptive Video Service (DVS), en vous permettant de les intégrer dans vos flux vidéo. Votre DEP doit être marqué avec l'attribut CHARACTERISTICS="public.accessibility.describes-video".

Avantages de l'utilisation du protocole HLS

Maintenant que nous avons examiné ce qu'est HLS et comment il fonctionne, examinons certains de ses principaux avantages :

1. Livraison sur tous les appareils

Comme mentionné précédemment, l'une des meilleures choses à propos de HLS est qu'il est compatible avec tous les principaux navigateurs et plates-formes. Cela signifie que vous pouvez utiliser le même protocole pour diffuser du contenu aux utilisateurs sur des ordinateurs de bureau, des appareils mobiles, des téléviseurs intelligents, etc. Ainsi, que vous souhaitiez diffuser du contenu aux utilisateurs sur des appareils iPhone ou Android, HLS est votre protocole de streaming incontournable !

2. Excellente qualité

Lors de la diffusion de contenu numérique, la qualité est essentielle. Aujourd’hui, les utilisateurs n’ont que l’embarras du choix. S’ils n’aiment pas ce qu’ils voient sur votre site, ils peuvent facilement passer au suivant. C’est là que HLS brille vraiment. Le protocole de streaming utilise le streaming à débit adaptatif pour ajuster automatiquement la qualité vidéo en fonction des conditions du réseau. Cela garantit que les utilisateurs bénéficient toujours d’une excellente expérience visuelle, quelle que soit leur vitesse Internet ou la qualité de leur connexion !

3. Économique

Lorsqu’il s’agit de diffuser du contenu numérique, le coût est toujours une préoccupation majeure. HTTP Live Streaming est une solution extrêmement rentable car elle ne nécessite aucun matériel supplémentaire. Tout ce dont vous avez besoin est un serveur Web standard et vous êtes prêt à partir !

4. Confidentialité et sécurité

Un autre avantage de HLS est qu’il prend en charge le cryptage et l’authentification. Cela signifie que vous pouvez crypter vos flux vidéo pour les protéger contre tout accès non autorisé. Grâce à HLS, vous pouvez également créer des solutions DRM standard telles que Microsoft PlayReady, Google Widevine et Apple FairPlay. Cela fait également de HLS un choix idéal pour le contenu qui doit être diffusé derrière un mur payant ou limité à certains pays/régions.

Inconvénients de l'utilisation du protocole HTTP Live Streaming

Bien que HTTP Live Streaming présente de nombreux avantages, il présente également certains inconvénients dont vous devez être conscient avant de l'utiliser pour vos propres projets. Jetons un coup d'œil à certains de ses principaux inconvénients :

1. Latence

L'un des plus grands défis du HLS est la latence, c'est-à-dire le temps nécessaire aux données vidéo pour voyager du serveur au client. Cela peut être problématique si vous essayez de diffuser des événements en direct où chaque seconde compte ! Il existe différentes solutions disponibles qui peuvent aider à réduire cette latence (nous y reviendrons plus tard), mais c'est quelque chose que vous devez garder à l'esprit si vous envisagez d'utiliser HLS pour votre projet.

2. Vitesse Internet

Un autre inconvénient du HLS est qu'il nécessite une vitesse Internet minimale de 400 kbps pour les vidéos de faible qualité et jusqu'à 8 Mbps pour la qualité HD. Cela peut constituer un problème majeur dans les zones où la couverture Internet est faible ou pour les utilisateurs disposant de forfaits de données limités.

Solutions au problème de latence

Il existe différentes solutions disponibles qui peuvent aider à réduire la latence lors de l'utilisation de HLS. Certains d'entre eux incluent :

1. Réduire la taille du segment

Bien qu'Apple recommande une durée de 6 secondes, la réduction de la taille du segment (durée cible) peut contribuer à réduire considérablement la latence. C'est parce que le client attend un segment publié du serveur. Le serveur ne peut pas le publier avant la durée cible prédéterminée. Ainsi, avant même qu'un joueur puisse télécharger un segment, celui-ci est déjà retardé de la « durée cible » en secondes. De plus, plusieurs segments sont conservés comme tampon pour garantir une livraison transparente, même sur des réseaux inégaux. Cela inclut l'encodage, le packaging, la liste de playlist et le téléchargement de chaque segment, ce qui augmente la latence d'un facteur de 4 à 7 fois la taille de votre segment.

2. Annoncer les segments à l'avance

Vous pouvez essayer d'annoncer les segments avant qu'ils ne soient réellement disponibles. Cela se fait en définissant la balise #EXT-X-PRELOAD-HINT pour indiquer l'emplacement le plus probable du prochain flux.

3. Utiliser un protocole d'ingestion différent

L’utilisation d’un protocole d’ingestion différent transfère l’encodage côté serveur vers un encodeur plus rapide, ce qui introduit une efficacité supérieure. Vous pouvez également utiliser le HLS à faible latence (LL-HLS). LL-HLS fait partie du protocole HLS, mais avec quelques solutions de contournement. Il a une latence de (environ 2 à 5 secondes).

Quand utiliser le protocole HLS ?

HTTP Live Streaming est un protocole de streaming extrêmement polyvalent. Il peut être utilisé pour un large éventail d'applications, notamment des événements en direct, du contenu à la demande, etc. Voici quelques situations dans lesquelles vous devriez utiliser HLS :

1. Si vous voulez ravir vos téléspectateurs

HLS a été développé dans le but de fournir une expérience visuelle ininterrompue et exceptionnelle aux utilisateurs. Donc, si vous voulez vous assurer que vos téléspectateurs bénéficient de la meilleure expérience possible lorsqu’ils regardent votre contenu, HLS est la voie à suivre !

2. Si vous diffusez des événements en direct

HTTP Live Streaming est le choix idéal pour diffuser des événements en direct tels que des sports, des concerts, des conférences, etc. Le protocole est conçu pour être fiable et évolutif afin que vous puissiez diffuser des événements en direct à grande échelle sans aucun problème ! La seule chose que vous devez contourner est la latence, qui propose quelques solutions rapides.

3. Si vous souhaitez toucher un public mondial

L'un des avantages de HLS est qu'il est compatible avec tous les principaux navigateurs et plates-formes. Cela signifie que vous pouvez utiliser le même protocole pour diffuser du contenu aux utilisateurs sur différents appareils et dans différentes régions géographiques. Donc, si vous souhaitez atteindre un public mondial avec votre contenu, HLS devrait être votre protocole de streaming de prédilection !

4. Si vous avez besoin d’une implémentation simple

Un autre avantage de HLS est qu’il est extrêmement facile à mettre en œuvre. Tout ce dont vous avez besoin est un serveur Web standard et vous pouvez commencer à diffuser du contenu immédiatement !

Quand ne pas utiliser le protocole HLS ?

Bien que HTTP Live Streaming présente de nombreux avantages, il existe également certaines situations dans lesquelles vous devriez éviter de l'utiliser. Voici quelques situations dans lesquelles vous ne devriez pas utiliser le protocole HLS :

1. Si la latence est une préoccupation majeure pour vous

Comme mentionné précédemment, l'un des plus grands défis du HLS est la latence, c'est-à-dire le temps nécessaire aux données vidéo pour voyager du serveur au client. Cela peut être problématique si vous essayez de diffuser des événements en direct comme des conférences Web ou des sports ! Il existe différentes solutions disponibles qui peuvent aider à réduire cette latence, mais c'est quelque chose que vous devez garder à l'esprit si vous envisagez d'utiliser HLS pour votre projet.

2. Si votre bande passante est limitée

Un autre inconvénient de HLS est qu’il nécessite une vitesse Internet minimale de 400 kbps pour les vidéos de mauvaise qualité. Rien de moins peut entraîner des problèmes non seulement en matière de streaming, mais également en gardant la synchronisation labiale intacte. Donc, si vous cherchez à fournir du contenu aux utilisateurs dans ces situations, HLS n'est peut-être pas le meilleur choix pour vous !

Pour conclure...

HTTP Live Streaming est un protocole de streaming extrêmement polyvalent. Il présente de nombreux avantages, notamment la livraison sur tous les appareils, une excellente qualité, la rentabilité, la confidentialité et la sécurité, la prise en charge de plusieurs langues, les sous-titres codés, les sous-titres et les descriptions audio.

Bien qu'il présente certains inconvénients tels que les exigences de latence et de vitesse Internet, il existe diverses solutions disponibles qui peuvent aider à relever ces défis. Donc, si vous recherchez un protocole de streaming compatible avec tous les principaux navigateurs et plates-formes, offrant une excellente qualité et facile à mettre en œuvre, HLS devrait être votre choix privilégié !

Les

Construisez votre empire vidéo

Votre chaîne vidéo exceptionnelle en un seul endroit : CMS vidéo, communauté, marketing et analytique.

Vous avez aimé cette lecture ?

Restez au courant des dernières actualités, stratégies et informations commerciales vidéo envoyées directement dans votre boîte de réception !
Marcello Violini
Table des matières
Partager cette publication

Construisez votre empire vidéo

Votre chaîne vidéo exceptionnelle en un seul endroit : CMS vidéo, communauté, marketing et analytique.
Formation gratuite & assistance 24h/XNUMX
99.9 % de disponibilité au cours des 12 derniers mois
Sérieux sur la sécurité et la confidentialité
Plateforme de distribution vidéo et monétisation
Contactez-Nous

CARACTERISTIQUES

ENTREPRISE

Fabriqué avec amour et passion en Italie.
🌎 Apprécié partout
Conditions générales Données privées  Accord d'utilisation des contenus ABC Global Communications