Adaptive Bitrate in mobiele apps — wat is het, algoritmen en protocollen

Auteur: IT Sectr Gepubliceerd: 2026-05-24 Leestijd: 8 min

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

  • ABR — adaptieve bitrate-overdrachtstechnologie die de videokwaliteit aanpast aan netwerkomstandigheden.
  • Segmentatie — video wordt verdeeld in fragmenten van 2–10 seconden, elk beschikbaar in meerdere bitrates.
  • HLS en MPEG-DASH — de belangrijkste protocollen voor ABR-streaming in mobiele apps.
  • Algoritmen voor bitrate-selectie omvatten throughput-based, buffer-based en hybride benaderingen.
  • ABR verbetert UX door buffering te minimaliseren en snel te starten met afspelen.

Wat is Adaptive Bitrate?

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.

Geschiedenis van ABR

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.

Hoe werkt ABR?

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.

Structuur van ABR-manifest (MPEG-DASH MPD)

xml
<!-- 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>

Dynamisch schakelen van bitrate

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.

ABR-protocollen: HLS, MPEG-DASH, Smooth Streaming

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.

ProtocolOntwikkelaarManifestSegmentenCodering
HLSApple.m3u8 (M3U playlist).ts of .fmp4AES-128, SAMPLE-AES
MPEG-DASHISO/MPEG.mpd (XML).m4s of .webmCENC (Common Encryption)
Smooth StreamingMicrosoft.ismc (XML, IIS).ismv / .ismaPlayReady (AES-128 CT)

HTTP Live Streaming (HLS)

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

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).

Vergelijking van protocolprestaties

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.

Adaptieve bitrate-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

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

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.

Hybride algoritmen en machinaal leren

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.

ABR in mobiele apps

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.

ABR-configuratie in ExoPlayer (Android)

kotlin
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()

ABR-optimalisatie voor mobiele apparaten

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.

ABR en prestatieanalyse

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

Wat is Adaptive Bitrate in mobiele apps?

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.

Wat is het verschil tussen HLS en MPEG-DASH?

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.

Hoe beïnvloedt ABR de videokwaliteit?

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.

Welke ABR-algoritmen worden gebruikt in ExoPlayer?

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.

Hoe beïnvloedt segmentatie ABR?

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

  • Adaptive Bitrate — de belangrijkste streamingtechnologie die de videokwaliteit dynamisch aanpast aan de netwerkbandbreedte.
  • HLS en MPEG-DASH — de belangrijkste ABR-protocollen; HLS domineert op iOS, DASH op Android en webplatforms.
  • ABR-algoritmen worden onderverdeeld in throughput-based, buffer-based en hybride; ML-algoritmen van de nieuwe generatie verminderen het aantal schakelingen met 30–40%.
  • Segmentatie in fragmenten van 2–10 seconden stelt de speler in staat om onmerkbaar voor de gebruiker tussen bitrates te schakelen.
  • Mobiele optimalisatie vereist snelle start (start-low-and-rise) en rekening houden met energieverbruik bij decodering.
  • QoE-metrics omvatten het aantal schakelingen, tijd tot eerste frame en bufferingfrequentie.
  • Hybride algoritmen combineren bandbreedteschatting en bufferstatus voor optimale bitrate-selectie.

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.

Bespreek het project

Lees ook