Adaptive Bitrate (ABR) est une technologie de streaming qui modifie dynamiquement la qualité vidéo en fonction de la bande passante du canal de l'utilisateur. Contrairement au téléchargement progressif, ABR divise la vidéo en petits segments de 2 à 10 secondes et bascule entre eux à la volée. Selon le Bitmovin Video Developer Report (2025), 86 % des services de streaming utilisent ABR pour garantir une lecture fluide sur les appareils mobiles.
Points clés
Adaptive Bitrate (ABR) est une méthode de streaming de contenu multimédia où un fichier vidéo est encodé en plusieurs variantes avec différents débits et résolutions, et le lecteur sélectionne automatiquement la variante appropriée en temps réel. L'utilisateur obtient la meilleure qualité possible sans mise en mémoire tampon en fonction de sa vitesse Internet actuelle.
Contrairement au téléchargement progressif traditionnel, ABR ne nécessite pas de charger le fichier entier « le lecteur demande des segments courts à la qualité souhaitée et peut basculer vers un autre débit entre les segments. Cela rend la technologie indispensable pour les applications mobiles, où la vitesse du réseau change constamment.
La technologie de streaming adaptatif a été commercialement implémentée pour la première fois par Move Networks en 2006 pour la diffusion de la chaîne ABC. En 2009, Apple a présenté HTTP Live Streaming (HLS), qui est devenu le premier standard ABR largement adopté basé sur HTTP et domine toujours l'écosystème iOS.
En 2012, MPEG a publié le standard MPEG-DASH (Dynamic Adaptive Streaming over HTTP) comme format ABR universel non lié à un fournisseur spécifique. DASH est supporté par toutes les grandes plateformes et est le seul standard ABR adopté par l'ISO.
Le processus de streaming ABR commence à l'étape de préparation du contenu : la vidéo source est encodée en plusieurs variantes avec différents débits « par exemple, 144p, 360p, 720p, 1080p et 4K. Chaque variante est divisée en segments de durée égale, généralement 2, 4, 6 ou 10 secondes.
Un fichier de manifeste est créé sur le serveur, décrivant les variantes disponibles, leur débit, résolution, codec et liens vers les segments. Le lecteur télécharge le manifeste, l'analyse et commence la lecture au débit le plus bas pour un démarrage rapide.
<!-- MPEG-DASH MPD manifest -->
<MPD profiles="urn:mpeg:dash:profile:isoff-live:2011">
<Period>
<AdaptationSet mimeType="video/mp4">
<Representation id="720p" bandwidth="2800000"
width="1280" height="720">
<SegmentTemplate duration="4"
media="seg_$Number$.m4s"/>
</Representation>
</AdaptationSet>
</Period>
</MPD>
Pendant la lecture, l'algorithme ABR côté client surveille constamment l'état du réseau et du tampon. Si la bande passante diminue, le lecteur demande les segments suivants à un débit plus faible pour éviter la mise en mémoire tampon. Lorsque le réseau s'améliore, le débit augmente.
La commutation entre les débits se produit aux limites des segments, rendant les changements de qualité presque imperceptibles pour l'utilisateur. Les lecteurs modernes peuvent synchroniser les images clés entre différentes variantes afin que la commutation se produise sans artefacts visuels.
Trois protocoles ABR principaux dominent le marché du streaming vidéo : HLS d'Apple, MPEG-DASH comme standard ouvert et Smooth Streaming de Microsoft. Chaque protocole définit le format du manifeste, la méthode de segmentation et le mécanisme de chiffrement.
| Protocole | Développeur | Manifeste | Segments | Chiffrement |
|---|---|---|---|---|
| HLS | Apple | .m3u8 (liste de lecture M3U) | .ts ou .fmp4 | AES-128, SAMPLE-AES |
| MPEG-DASH | ISO/MPEG | .mpd (XML) | .m4s ou .webm | CENC (Common Encryption) |
| Smooth Streaming | Microsoft | .ismc (XML, IIS) | .ismv / .isma | PlayReady (AES-128 CT) |
HLS est le protocole ABR le plus répandu, intégré dans iOS, tvOS et Safari sur macOS. Le format du manifeste est basé sur des listes de lecture M3U étendues, où la liste de lecture maître contient des liens vers les variantes avec différents débits et résolutions.
Chaque variante référence sa propre liste de lecture multimédia avec une liste de segments. HLS prend en charge les diffusions en direct via un mécanisme de fenêtre glissante, où les anciens segments sont supprimés et de nouveaux sont ajoutés au fur et à mesure qu'ils arrivent.
MPEG-DASH est le seul standard ABR adopté comme ISO/IEC 23009-1 en 2012. Contrairement à HLS, DASH utilise un manifeste XML (MPD « Media Presentation Description) et n'est lié à aucun format de conteneur spécifique « il supporte fMP4, WebM et d'autres.
DASH offre une segmentation flexible : les segments peuvent avoir des durées différentes au sein du même flux, optimisant le compromis entre latence et surcharge des requêtes HTTP. Pour les diffusions en direct, DASH prend en charge les modèles SegmentTemplate.
Selon les tests de Bitmovin (2025), HLS et DASH montrent des performances comparables en termes de temps de démarrage et de fréquence de changement de débit. HLS offre une latence plus faible sur iOS grâce au support matériel, tandis que DASH est préféré sur Android en raison d'une configuration plus flexible des algorithmes ABR.
Le cœur d'ABR est l'algorithme de sélection de débit qui détermine quelle variante demander ensuite. Il existe trois principales familles d'algorithmes : basés sur le débit, basés sur le tampon et hybrides. Chaque approche a ses forces et ses limites.
Les algorithmes basés sur le débit estiment la bande passante du réseau en fonction de la vitesse de téléchargement des segments précédents. L'algorithme sélectionne le débit maximal qui ne dépasse pas 80 à 90 % du débit mesuré, laissant une marge pour les fluctuations.
L'inconvénient de cette approche est sa sensibilité aux pics de vitesse de courte durée. Si le réseau chute brusquement pendant le téléchargement d'un segment, l'estimation du débit devient trop basse, réduisant inutilement la qualité.
Les algorithmes basés sur le tampon prennent des décisions en fonction de l'occupation du tampon du lecteur. Si le tampon est rempli à plus de 70 %, l'algorithme augmente le débit ; si le tampon tombe en dessous de 20 %, il réduit fortement la qualité pour éviter la mise en mémoire tampon.
Le principal avantage est l'absence de réductions erronées lors des baisses de réseau de courte durée, car le tampon lisse les fluctuations. L'inconvénient est la réaction lente aux changements durables de bande passante.
Les lecteurs modernes comme ExoPlayer et AVPlayer utilisent des algorithmes hybrides qui combinent l'estimation du débit et l'état du tampon. ExoPlayer utilise l'algorithme ABR par défaut DefaultTrackSelector, qui prend en compte les deux paramètres.
En 2024«2025, des algorithmes basés sur le ML sont activement déployés, prédisant les futurs changements de réseau sur la base de données historiques. Netflix, YouTube et Twitch utilisent leurs propres modèles d'apprentissage automatique pour optimiser la sélection du débit, réduisant le nombre de commutations de 30 à 40 %.
Les applications mobiles imposent des exigences particulières à ABR en raison de l'instabilité des réseaux cellulaires (4G/LTE, 5G) et de la puissance de calcul limitée des appareils. Le lecteur doit s'adapter rapidement aux changements de réseau tout en minimisant la consommation d'énergie et l'utilisation des données.
Selon OpenSignal (2025), la vitesse moyenne de la 4G dans les zones urbaines varie de 5 à 50 Mbps, et en mouvement peut tomber à 1 Mbps. Les algorithmes ABR doivent basculer entre les débits en 1 à 2 segments pour éviter la mise en mémoire tampon lors de l'entrée dans un tunnel ou un ascenseur.
val trackSelector = DefaultTrackSelector(context).apply {
setParameters(buildUponParameters {
setMaxVideoSizeSd()
setAllowVideoMixedMimeTypeAdaptiveness(true)
setPreferredVideoRoleFlags(
roleFlags(C.ROLE_FLAG_DESCRIBES_VIDEO_AND_AUDIO)
)
})
}
val adaptiveTrackSelectionFactory =
AdaptiveTrackSelection.Factory()
val player = ExoPlayer.Builder(context)
.setTrackSelector(trackSelector)
.setMediaSourceFactory(
DashMediaSource.Factory(dataSourceFactory)
)
.build()
Pour les applications mobiles, le chargement initial rapide (temps jusqu'à la première image inférieur à 2 secondes) est essentiel. Il est recommandé de démarrer la lecture au débit le plus bas disponible, puis d'augmenter la qualité à mesure que le tampon se remplit « la stratégie start-low-and-rise.
La consommation d'énergie est également importante : le décodage accéléré par matériel doit être utilisé pour tous les débits. Le décodage logiciel des débits élevés (1080p et plus) sur les anciens appareils peut entraîner une surchauffe et un étranglement thermique.
Métriques clés de la qualité ABR : nombre de changements de débit, temps jusqu'à la première image (TTFF) et rapport des changements au temps de visionnage total. L'indice QoE (Quality of Experience) est calculé comme une somme pondérée du débit, de la pénalité de changement et de la pénalité de mise en mémoire tampon.
Pour la surveillance ABR, il est recommandé de collecter des analyses du lecteur : débit actuel, taille du tampon, bande passante, nombre et types de changements. Ces données aident les fournisseurs de contenu à optimiser l'ensemble des débits disponibles et à configurer la segmentation pour leur public spécifique.
Questions fréquentes
Adaptive Bitrate (ABR) est une technologie de streaming qui modifie dynamiquement la qualité vidéo en fonction des conditions du réseau. Le lecteur divise la vidéo en segments et sélectionne le débit optimal pour chacun, garantissant une lecture fluide sans mise en mémoire tampon sur les appareils mobiles.
HLS est un protocole Apple utilisant des listes de lecture M3U et des flux de transport (.ts). MPEG-DASH est un standard ISO ouvert avec un manifeste XML (.mpd) et des formats de segments flexibles. HLS fonctionne mieux sur iOS, DASH sur Android et le web.
ABR améliore la qualité perçue en éliminant la mise en mémoire tampon : la vidéo peut temporairement réduire la résolution lorsque le réseau se dégrade, mais ne s'arrête pas. Les utilisateurs préfèrent une vidéo fluide en 720p à une vidéo 4K saccadée avec une mise en mémoire tampon constante.
ExoPlayer utilise un algorithme hybride DefaultTrackSelector qui prend en compte la bande passante du réseau et l'occupation du tampon. Des stratégies basées sur le débit et sur le tampon sont également disponibles avec personnalisation via AdaptiveTrackSelection.Factory.
La durée des segments détermine la fréquence d'adaptation : les segments courts (2 secondes) réagissent plus rapidement aux changements de réseau mais génèrent plus de requêtes HTTP. Les segments de 4 à 6 secondes sont optimaux pour les appareils mobiles, équilibrant vitesse d'adaptation et surcharge.
Résumé
Nous développerons une application mobile clé en main
IT Sectr crée des applications iOS et Android pour les startups et les entreprises depuis 2017. Nous vous conseillerons et vous proposerons la meilleure solution.
Lisez aussi