Adaptive Bitrate (ABR) — is een streamingtechnologie die de videokwaliteit dynamisch aanpast op basis van de bandbreedte van de gebruiker. In tegenstelling tot progressief downloaden, verdeelt ABR video in kleine segmenten van 2–10 seconden en schakelt er onderweg tussen. Volgens het Bitmovin Video Developer Report (2025) gebruikt 86% van de streamingdiensten ABR voor vloeiende weergave op mobiele apparaten.
Belangrijkste punten
Adaptive Bitrate (ABR) — is een methode voor het streamen van media-inhoud waarbij het videobestand in meerdere varianten met verschillende bitrate en resolutie wordt gecodeerd en de speler automatisch de juiste variant in realtime selecteert. De gebruiker krijgt de best mogelijke kwaliteit zonder buffering bij de huidige internetsnelheid.
In tegenstelling tot traditioneel progressief downloaden (progressive download), vereist ABR niet dat het hele bestand wordt geladen — de speler vraagt korte segmenten van de vereiste kwaliteit en kan tussen segmenten overschakelen naar een andere bitrate. Dit maakt de technologie onmisbaar voor mobiele apps, waar de netwerksnelheid constant verandert.
Adaptieve streamingtechnologie werd voor het eerst commercieel geïmplementeerd door Move Networks in 2006 voor de uitzending van ABC. In 2009 introduceerde Apple HTTP Live Streaming (HLS), dat de eerste wijdverbreide ABR-standaard op basis van HTTP werd en nog steeds dominant is in het iOS-ecosysteem.
In 2012 bracht MPEG de standaard MPEG-DASH (Dynamic Adaptive Streaming over HTTP) uit als universeel ABR-formaat, niet gebonden aan een specifieke leverancier. DASH wordt ondersteund door alle grote platforms en is de enige ABR-standaard die door ISO is aangenomen.
Het ABR-streamingproces begint in de contentvoorbereidingsfase: de originele video wordt gecodeerd in meerdere varianten met verschillende bitrates — bijvoorbeeld 144p, 360p, 720p, 1080p en 4K. Elke variant wordt verdeeld in segmenten van gelijke duur, meestal 2, 4, 6 of 10 seconden.
Op de server wordt een manifestbestand gemaakt dat de beschikbare varianten (representations), hun bitrate, resolutie, codec en links naar segmenten beschrijft. De speler downloadt het manifest, analyseert het en begint met afspelen op de laagste bitrate voor een snelle start.
<!-- 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>
Tijdens het afspelen bewaakt het ABR-algoritme aan de clientzijde constant de netwerk- en bufferstatus. Als de bandbreedte afneemt, vraagt de speler de volgende segmenten aan met een lagere bitrate om buffering te voorkomen. Wanneer het netwerk verbetert, wordt de bitrate verhoogd.
Het schakelen tussen bitrates vindt plaats op de grenzen van segmenten, waardoor de kwaliteitsverandering bijna onmerkbaar is voor de gebruiker. Moderne spelers kunnen keyframes tussen verschillende varianten synchroniseren, zodat het schakelen zonder visuele artefacten gebeurt.
Drie belangrijke ABR-protocollen domineren de videostreamingmarkt: HLS van Apple, MPEG-DASH als open standaard en Smooth Streaming van Microsoft. Elk protocol definieert het manifestformaat, de segmentatiemethode en het coderingsmechanisme.
| Protocol | Ontwikkelaar | Manifest | Segmenten | Codering |
|---|---|---|---|---|
| HLS | Apple | .m3u8 (M3U playlist) | .ts of .fmp4 | AES-128, SAMPLE-AES |
| MPEG-DASH | ISO/MPEG | .mpd (XML) | .m4s of .webm | CENC (Common Encryption) |
| Smooth Streaming | Microsoft | .ismc (XML, IIS) | .ismv / .isma | PlayReady (AES-128 CT) |
HLS — het meest gebruikte ABR-protocol, ingebouwd in iOS, tvOS en Safari op macOS. Het manifestformaat is gebaseerd op uitgebreide M3U-afspeellijsten, waarbij de master-afspeellijst (master playlist) links bevat naar varianten (variant streams) met verschillende bitrates en resoluties.
Elke variant verwijst naar zijn eigen media-afspeellijst met een lijst van segmenten. HLS ondersteunt live-uitzendingen via een schuifvenstermechanisme (sliding window), waarbij oude segmenten worden verwijderd en nieuwe worden toegevoegd zodra ze binnenkomen.
MPEG-DASH — de enige ABR-standaard die in 2012 is aangenomen door ISO/IEC 23009-1. In tegenstelling tot HLS gebruikt DASH een XML-manifest (MPD — Media Presentation Description) en is het niet gebonden aan een specifiek containerformaat — het ondersteunt fMP4, WebM en andere.
DASH biedt flexibele segmentatie: segmenten kunnen binnen dezelfde stream verschillende lengtes hebben, wat de verhouding tussen latentie en overhead van HTTP-verzoeken optimaliseert. Voor live-uitzendingen ondersteunt DASH segmentsjablonen (SegmentTemplate).
Volgens Bitmovin-tests (2025) vertonen HLS en DASH vergelijkbare prestaties wat betreft opstarttijd en frequentie van bitrateschakelingen. HLS biedt lagere latentie op iOS dankzij hardware-ondersteuning, DASH heeft de voorkeur op Android vanwege de flexibelere configuratie van ABR-algoritmen.
Het hart van ABR — het bitrate-selectie-algoritme dat bepaalt welke variant als volgende moet worden aangevraagd. Er zijn drie hoofdgroepen algoritmen: throughput-based, buffer-based en hybride (hybrid). Elke benadering heeft zijn sterke punten en beperkingen.
Throughput-based algoritmen schatten de netwerkbandbreedte op basis van de downloadsnelheid van eerdere segmenten. Het algoritme selecteert de maximale bitrate die niet hoger is dan 80–90% van de gemeten bandbreedte, met een marge voor fluctuaties.
Het nadeel van deze benadering is gevoeligheid voor kortstondige snelheidspieken. Als het netwerk plotseling daalt tijdens het downloaden van een segment, wordt de bandbreedteschatting te laag en wordt de kwaliteit onnodig verlaagd.
Buffer-based algoritmen nemen beslissingen op basis van de buffervulling van de speler. Als de buffer voor meer dan 70% gevuld is, verhoogt het algoritme de bitrate; als de buffer onder 20% zakt — verlaagt het de kwaliteit drastisch om buffering te voorkomen.
Het belangrijkste voordeel is het ontbreken van valse verlagingen bij kortstondige netwerkdalingen, omdat de buffer fluctuaties gladstrijkt. Nadeel — trage reactie op blijvende veranderingen in bandbreedte.
Moderne spelers zoals ExoPlayer en AVPlayer gebruiken hybride algoritmen die bandbreedteschatting en bufferstatus combineren. ExoPlayer gebruikt standaard het ABR-algoritme DefaultTrackSelector, dat beide parameters in overweging neemt.
In 2024–2025 worden ML-gebaseerde algoritmen actief geïmplementeerd die toekomstige netwerkveranderingen voorspellen op basis van historische gegevens. Netflix, YouTube en Twitch gebruiken hun eigen machine learning-modellen om de bitrate-selectie te optimaliseren, wat het aantal schakelingen met 30–40% vermindert.
Mobiele apps stellen speciale eisen aan ABR vanwege de instabiliteit van mobiele netwerken (4G/LTE, 5G) en de beperkte rekenkracht van apparaten. De speler moet zich snel aanpassen aan netwerkveranderingen, terwijl het energieverbruik en dataverbruik worden geminimaliseerd.
Volgens OpenSignal (2025) varieert de gemiddelde 4G-snelheid in stedelijke gebieden van 5 tot 50 Mbit/s en kan deze tijdens het rijden dalen tot 1 Mbit/s. ABR-algoritmen moeten binnen 1–2 segmenten tussen bitrates schakelen om buffering te voorkomen bij het binnengaan van een tunnel of lift.
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()
Voor mobiele apps is snelle initiële belasting (time-to-first-frame minder dan 2 seconden) cruciaal. Het wordt aanbevolen om het afspelen te starten met de laagste beschikbare bitrate en vervolgens de kwaliteit te verhogen naarmate de buffer volloopt — de start-low-and-rise-strategie.
Energieverbruik is ook belangrijk: hardwareversnelling voor decodering moet worden gebruikt voor alle bitrates. Softwarematige decodering van hoge bitrates (1080p en hoger) op oudere apparaten kan leiden tot oververhitting en throttling.
Belangrijke ABR-kwaliteitsmetrics: aantal bitrateschakelingen (switches), tijd tot eerste frame (TTFF), verhouding van schakelingen tot totale kijktijd. De QoE-kwaliteitsindex (Quality of Experience) wordt berekend als een gewogen som van bitrate, boete voor schakelingen en boete voor buffering.
Voor ABR-monitoring wordt aanbevolen om analyses van de speler te verzamelen: huidige bitrate, buffergrootte, bandbreedte, aantal en typen schakelingen. Gegevens helpen contentproviders om de set beschikbare bitrates te optimaliseren en segmentatie af te stemmen op het specifieke publiek.
Veelgestelde vragen
Adaptive Bitrate (ABR) — streamingtechnologie die de videokwaliteit dynamisch aanpast aan netwerkomstandigheden. De speler verdeelt video in segmenten en selecteert voor elk de optimale bitrate, wat zorgt voor vloeiend afspelen zonder buffering op mobiele apparaten.
HLS — het Apple-protocol, dat M3U-afspeellijsten en transportstromen (.ts) gebruikt. MPEG-DASH — een open ISO-standaard met XML-manifest (.mpd) en flexibele segmentformaten. HLS is beter op iOS, DASH op Android en het web.
ABR verbetert de waargenomen kwaliteit door buffering te elimineren: video kan tijdelijk de resolutie verlagen bij verslechtering van het netwerk, maar stopt niet. De gebruiker geeft de voorkeur aan vloeiende 720p-video boven onderbroken 4K met constante buffering.
ExoPlayer gebruikt het hybride algoritme DefaultTrackSelector, dat rekening houdt met netwerkbandbreedte en buffervulling. Ook zijn Throughput-based en Buffer-based strategieën beschikbaar met aanpassingsmogelijkheden via AdaptiveTrackSelection.Factory.
Segmentduur bepaalt de aanpassingsfrequentie: korte segmenten (2 seconden) reageren sneller op netwerkveranderingen, maar genereren meer HTTP-verzoeken. Segmenten van 4–6 seconden zijn optimaal voor mobiele apparaten qua verhouding tussen aanpassingssnelheid en overhead.
Samenvatting
We ontwikkelen een mobiele applicatie turnkey
IT Sectr creëert sinds 2017 iOS- en Android-applicaties voor startups en bedrijven. We adviseren u en stellen de beste oplossing voor.
Lees ook