Adaptive Bitrate nelle app mobili — cos'è, algoritmi e protocolli

Autore: IT Sectr Pubblicato: 2026-05-24 Tempo di lettura: 8 min

Adaptive Bitrate (ABR) è una tecnologia di streaming che modifica dinamicamente la qualità del video in base alla larghezza di banda del canale dell'utente. A differenza del download progressivo, ABR divide il video in piccoli segmenti di 2–10 secondi e passa dall'uno all'altro al volo. Secondo il Bitmovin Video Developer Report (2025), l'86% dei servizi di streaming utilizza ABR per garantire una riproduzione fluida sui dispositivi mobili.

Punti chiave

  • ABR — tecnologia di streaming a bitrate adattivo che modifica la qualità del video in base alle condizioni della rete.
  • Segmentazione — il video viene suddiviso in frammenti di 2–10 secondi, ciascuno disponibile a più bitrate.
  • HLS e MPEG-DASH — i principali protocolli per lo streaming ABR nelle applicazioni mobili.
  • Algoritmi di selezione del bitrate includono approcci basati su throughput, buffer e ibridi.
  • ABR migliora l'UX riducendo al minimo il buffering e consentendo un avvio rapido della riproduzione.

Cos'è l'Adaptive Bitrate?

Adaptive Bitrate (ABR) è un metodo di streaming di contenuti multimediali in cui un file video viene codificato in più varianti con diversi bitrate e risoluzioni, e il lettore seleziona automaticamente la variante appropriata in tempo reale. L'utente ottiene la massima qualità possibile senza buffering in base alla propria velocità Internet corrente.

A differenza del download progressivo tradizionale, ABR non richiede il caricamento dell'intero file — il lettore richiede segmenti brevi alla qualità desiderata e può passare a un altro bitrate tra i segmenti. Ciò rende la tecnologia indispensabile per le applicazioni mobili, dove la velocità della rete cambia costantemente.

Storia di ABR

La tecnologia di streaming adattivo è stata implementata commercialmente per la prima volta da Move Networks nel 2006 per la trasmissione del canale ABC. Nel 2009, Apple ha presentato HTTP Live Streaming (HLS), che è diventato il primo standard ABR ampiamente adottato basato su HTTP e domina ancora l'ecosistema iOS.

Nel 2012, MPEG ha rilasciato lo standard MPEG-DASH (Dynamic Adaptive Streaming over HTTP) come formato ABR universale non legato a un fornitore specifico. DASH è supportato da tutte le principali piattaforme ed è l'unico standard ABR adottato dall'ISO.

Come funziona ABR?

Il processo di streaming ABR inizia nella fase di preparazione del contenuto: il video sorgente viene codificato in più varianti con diversi bitrate — ad esempio, 144p, 360p, 720p, 1080p e 4K. Ogni variante viene suddivisa in segmenti di uguale durata, tipicamente 2, 4, 6 o 10 secondi.

Sul server viene creato un file manifesto che descrive le varianti disponibili, il loro bitrate, risoluzione, codec e collegamenti ai segmenti. Il lettore scarica il manifesto, lo analizza e inizia la riproduzione al bitrate più basso per un avvio rapido.

Struttura del manifesto ABR (MPD di MPEG-DASH)

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>

Commutazione dinamica del bitrate

Durante la riproduzione, l'algoritmo ABR lato client monitora costantemente le condizioni della rete e lo stato del buffer. Se la larghezza di banda diminuisce, il lettore richiede i segmenti successivi a un bitrate inferiore per evitare il buffering. Quando la rete migliora, il bitrate aumenta.

La commutazione tra i bitrate avviene ai confini dei segmenti, rendendo i cambiamenti di qualità quasi impercettibili per l'utente. I lettori moderni possono sincronizzare i fotogrammi chiave tra diverse varianti in modo che la commutazione avvenga senza artefatti visivi.

Protocolli ABR: HLS, MPEG-DASH, Smooth Streaming

Tre protocolli ABR principali dominano il mercato dello streaming video: HLS di Apple, MPEG-DASH come standard aperto e Smooth Streaming di Microsoft. Ogni protocollo definisce il formato del manifesto, il metodo di segmentazione e il meccanismo di crittografia.

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

HTTP Live Streaming (HLS)

HLS è il protocollo ABR più diffuso, integrato in iOS, tvOS e Safari su macOS. Il formato del manifesto si basa su playlist M3U estese, dove la playlist principale contiene collegamenti a varianti con diversi bitrate e risoluzioni.

Ogni variante fa riferimento alla propria playlist multimediale con un elenco di segmenti. HLS supporta le trasmissioni in diretta tramite un meccanismo a finestra scorrevole, in cui i segmenti vecchi vengono rimossi e quelli nuovi vengono aggiunti man mano che arrivano.

MPEG-DASH

MPEG-DASH è l'unico standard ABR adottato come ISO/IEC 23009-1 nel 2012. A differenza di HLS, DASH utilizza un manifesto XML (MPD — Media Presentation Description) e non è legato a un formato di contenitore specifico — supporta fMP4, WebM e altri.

DASH offre una segmentazione flessibile: i segmenti possono avere durate diverse all'interno dello stesso flusso, ottimizzando il compromesso tra latenza e overhead delle richieste HTTP. Per le trasmissioni in diretta, DASH supporta i modelli SegmentTemplate.

Confronto delle prestazioni dei protocolli

Secondo i test di Bitmovin (2025), HLS e DASH mostrano prestazioni comparabili in termini di tempo di avvio e frequenza di commutazione del bitrate. HLS offre una latenza inferiore su iOS grazie al supporto hardware, mentre DASH è preferito su Android per la configurazione più flessibile degli algoritmi ABR.

Algoritmi di bitrate adattivo

Il cuore di ABR è l'algoritmo di selezione del bitrate che determina quale variante richiedere successivamente. Esistono tre famiglie principali di algoritmi: basati su throughput, basati su buffer e ibridi. Ogni approccio ha i suoi punti di forza e limitazioni.

Algoritmi basati su throughput

Gli algoritmi basati su throughput stimano la larghezza di banda della rete in base alla velocità di download dei segmenti precedenti. L'algoritmo seleziona il bitrate massimo che non supera l'80–90% del throughput misurato, lasciando un margine per le fluttuazioni.

Lo svantaggio di questo approccio è la sua sensibilità ai picchi di velocità di breve durata. Se la rete cala bruscamente durante il download di un segmento, la stima del throughput diventa troppo bassa, riducendo inutilmente la qualità.

Algoritmi basati su buffer

Gli algoritmi basati su buffer prendono decisioni in base all'occupazione del buffer del lettore. Se il buffer è pieno per oltre il 70%, l'algoritmo aumenta il bitrate; se il buffer scende sotto il 20%, riduce drasticamente la qualità per evitare il buffering.

Il vantaggio principale è nessuna falsa riduzione durante i cali di rete di breve durata, poiché il buffer attenua le fluttuazioni. Lo svantaggio è la lenta reazione ai cambiamenti sostenuti della larghezza di banda.

Algoritmi ibridi e apprendimento automatico

I lettori moderni come ExoPlayer e AVPlayer utilizzano algoritmi ibridi che combinano la stima del throughput e lo stato del buffer. ExoPlayer utilizza l'algoritmo ABR predefinito DefaultTrackSelector, che considera entrambi i parametri.

Nel 2024–2025, vengono attivamente implementati algoritmi basati su ML che prevedono i futuri cambiamenti della rete sulla base di dati storici. Netflix, YouTube e Twitch utilizzano i propri modelli di apprendimento automatico per ottimizzare la selezione del bitrate, riducendo il numero di commutazioni del 30–40%.

ABR nelle applicazioni mobili

Le applicazioni mobili impongono esigenze particolari ad ABR a causa dell'instabilità delle reti cellulari (4G/LTE, 5G) e della potenza di calcolo limitata dei dispositivi. Il lettore deve adattarsi rapidamente ai cambiamenti della rete, riducendo al minimo il consumo energetico e l'utilizzo dei dati.

Secondo OpenSignal (2025), la velocità media del 4G nelle aree urbane varia da 5 a 50 Mbps, e in movimento può scendere a 1 Mbps. Gli algoritmi ABR devono commutare tra bitrate in 1–2 segmenti per evitare il buffering quando si entra in un tunnel o in un ascensore.

Configurazione ABR 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()

Ottimizzazione ABR per dispositivi mobili

Per le applicazioni mobili, il caricamento iniziale rapido (tempo al primo fotograma inferiore a 2 secondi) è fondamentale. Si consiglia di avviare la riproduzione al bitrate più basso disponibile e poi aumentare la qualità man mano che il buffer si riempie — la strategia start-low-and-rise.

Il consumo energetico è anche importante: la decodifica accelerata via hardware dovrebbe essere utilizzata per tutti i bitrate. La decodifica software di bitrate elevati (1080p e superiori) su dispositivi obsoleti può causare surriscaldamento e throttling.

ABR e analisi delle prestazioni

Metriche chiave della qualità ABR: numero di commutazioni di bitrate, tempo al primo fotograma (TTFF) e rapporto di commutazione rispetto al tempo di visione totale. L'indice QoE (Quality of Experience) viene calcolato come somma ponderata di bitrate, penalità di commutazione e penalità di buffering.

Per il monitoraggio ABR, si consiglia di raccogliere analisi dal lettore: bitrate corrente, dimensione del buffer, larghezza di banda, numero e tipi di commutazioni. Questi dati aiutano i fornitori di contenuti a ottimizzare il set di bitrate disponibili e a configurare la segmentazione per il loro pubblico specifico.

Domande frequenti

Cos'è l'Adaptive Bitrate nelle applicazioni mobili?

Adaptive Bitrate (ABR) è una tecnologia di streaming che modifica dinamicamente la qualità del video in base alle condizioni della rete. Il lettore divide il video in segmenti e seleziona il bitrate ottimale per ciascuno, garantendo una riproduzione fluida senza buffering sui dispositivi mobili.

Qual è la differenza tra HLS e MPEG-DASH?

HLS è un protocollo Apple che utilizza playlist M3U e flussi di trasporto (.ts). MPEG-DASH è uno standard ISO aperto con un manifesto XML (.mpd) e formati di segmento flessibili. HLS funziona meglio su iOS, DASH su Android e sul web.

In che modo ABR influisce sulla qualità video?

ABR migliora la qualità percepita eliminando il buffering: il video può temporaneamente ridurre la risoluzione quando la rete si degrada, ma non si ferma. Gli utenti preferiscono un video fluido in 720p a un 4K a scatti con buffering costante.

Quali algoritmi ABR vengono utilizzati in ExoPlayer?

ExoPlayer utilizza un algoritmo ibrido DefaultTrackSelector che considera la larghezza di banda della rete e l'occupazione del buffer. Sono disponibili anche strategie basate su throughput e su buffer con personalizzazione tramite AdaptiveTrackSelection.Factory.

In che modo la segmentazione influisce su ABR?

La durata dei segmenti determina la frequenza di adattamento: i segmenti brevi (2 secondi) reagiscono più velocemente ai cambiamenti di rete ma generano più richieste HTTP. I segmenti di 4–6 secondi sono ottimali per i dispositivi mobili, bilanciando velocità di adattamento e overhead.

Riepilogo

  • Adaptive Bitrate — tecnologia chiave di streaming che regola dinamicamente la qualità del video in base alla larghezza di banda della rete.
  • HLS e MPEG-DASH — i principali protocolli ABR; HLS domina su iOS, DASH su Android e piattaforme web.
  • Gli algoritmi ABR si dividono in basati su throughput, basati su buffer e ibridi; gli algoritmi ML di nuova generazione riducono le commutazioni del 30–40%.
  • La segmentazione in frammenti di 2–10 secondi consente al lettore di commutare il bitrate tra i segmenti in modo impercettibile per l'utente.
  • L'ottimizzazione mobile richiede un avvio rapido (start-low-and-rise) e la considerazione del consumo energetico durante la decodifica.
  • Le metriche QoE includono il numero di commutazioni, il tempo al primo fotograma e la frequenza di buffering.
  • Gli algoritmi ibridi combinano la stima del throughput e lo stato del buffer per una selezione ottimale del bitrate.

Svilupperemo un'applicazione mobile chiavi in mano

IT Sectr crea applicazioni iOS e Android per startup e aziende dal 2017. Ti consulteremo e ti proporremo la soluzione migliore.

Discuti il progetto

Leggi anche