Latenza dei video nella diretta streaming
Cos’è la latenza nella diretta streaming di video?
Immagina di guadare una partita di calcio attraverso il tuo servizio di streaming over-the-top (OTT). Nel frattempo, il tuo vicino di casa sta guardando la stessa partita su una TV tradizionale, celebrando i goal ad alta voce e soffrendo per i rigori che tu devi attendere altri 30 secondi per vedere.
O, forse stai guardando un talent show in diretta, in trepida attesa per conoscere quale sarà il vincitore, quando i feed dei tuoi social media (tipicamente generati da coloro che guardano il programma in TV) rovinano la sorpresa proprio 15 secondi prima che tu possa vederla con i tuoi occhi.
Per i visualizzanti, il grande problema della latenza dei video è la frustrazione di vedere un’azione un secondo dopo che sia avvenuta. Col tempo, le frustrazioni per la latenza dei video per i visualizzanti è diventato un problema per i fornitori di contenuti video.
Con dei contenuti video sensibili al tempo (come sport, giochi e notizie in TV, o contenuti OTT come e-sport e giochi interattivi) i visualizzanti si aspettano di vedere eventi nel momento stesso in cui avvengono. Nel mondo dell’intrattenimento in tempo reale, i problemi relativi alla latenza dei video non solo rovinano le sorprese, ma, se non risolti, rovinano anche la fiducia che i visualizzanti ripongono nei loro fornitori di contenuti OTT.
Cosa causa la latenza dei video? I fattori, dalla telecamera allo schermo
Nel percorso dall’obbiettivo allo schermo, sono numerosi i punti in cui la tecnologia utilizzata può influenzare la latenza dei video:
- La durata della pipeline di codifica video
- Le operazioni di acquisizione e creazione dei pacchetti dei dati
- La propagazione della rete e il protocollo di trasporto
- Rete per la distribuzione di contenuti (CDN)
- Lunghezza del segmento
- Policy del riproduttore
Come misurare la latenza dei video
Vi sono altri metodi, ma il modo più semplice per misurare la latenza dei video end-to-end è il seguente:
- Utilizza un tablet che esegue un’applicazione per utilizzare un ciak
- Filmala con una telecamera connessa al tuo codificatore video
- Pubblica il video sulla tua origine
- Invia il video al riproduttore attraverso una CDN
- Sistema il riproduttore accanto al tablet con il ciak
- Fai una foto ai due schermi
- Esegui la sottrazione del timecode e otterrai il numero
Come diminuire la latenza di video per la diretta streaming
Il ritardo dovuto alla latenza dei video OTT dietro la TV broadcast e i social media è solo uno dei problemi che attanagliano le menti dei fornitori di contenuti video. Ecco alcuni altri problemi da tenere in considerazione quando si vuole ottenere una bassa latenza:
Flash and Real-Time Messaging Protocol (RTMP): le applicazioni basate su Flash che utilizzano lo streaming RTMP funzionavano bene per la bassa latenza, ma la deprecazione di Flash e la riduzione progressiva da parte dei browser Web del supporto per i plug-in o le applicazioni per bloccarli, anche le CDN hanno cominciato a deprecare il RTMP, che aveva già una portata limitata dal punto di vista della fornitura di contenuti, costringendo i fornitori di video a optare per delle alternative.
Scalabilità e affidabilità vs bassa latenza: una scelta che risolve i problemi legati alla scalabilità: passare a tecnologie di streaming adatte per HTML5, come HTTP Live Streaming (HLS), Dynamic Adaptive Streaming over HTTP (DASH o MPEG-DASH) e il Common Media Application Format (CMAF).
Queste tecnologie di streaming distribuiscono sull’HTTP, il che significa che la fornitura di contenuti implica anche la memorizzazione dei dati nella cache e le CDN possono distribuire alti volumi con un’efficienza maggiore.
Tuttavia, una volta ottenute scalabilità e affidabilità, decine di secondi vengono aggiunti ai tempi di distribuzione end-to-end, a spese della bassa latenza.
Funzionalità interattive: altri fornitori di contenuti video possono scegliere di sviluppare i propri servizi di broadcast con funzionalità interattive; tuttavia, un ritardo nel segnale dei video è generalmente inaccettabile in questi casi.
Il motivo: se un video è ritardato fino a 30 secondi rispetto al tempo in cui è generalmente catturato dalla telecamera fino al momento in cui viene visto, è impossibile ottenere video interattivi, i quali richiedono feedback in tempo reale.
Inoltre, coloro che vogliono sviluppare uno schermo secondario sincronizzato, il social watching, i giochi o le applicazioni per il gioco d’azzardo hanno bisogno di controllare la latenza dello streaming video a un livello preciso.
Qual è il modo ideale per ottenere una buona latenza dei video nella diretta streaming?
La latenza dei video può essere vista in tre diverse categorie, ciascuna definita da limiti alti e bassi.
Livelli della latenza dei video
Alta (secondi) | Bassa (secondi) | |
---|---|---|
Latenza ridotta | 18 | 6 |
Latenza bassa | 6 | 2 |
Latenza minima | 2 | 0,2 |
Tuttavia, è necessario comprendere le differenze tra la latenza dei video ridotta, la bassa e la minima, sebbene sia leggermente complicato da spiegare.
Sei secondi di latenza per i video nei broadcast sono spesso considerati la media nel campo, il che significa che il valore ideale per la latenza dei video OTT è uno dei valori nello spettro basso della categoria della latenza ridotta o nello spettro alto della categoria della bassa latenza. Avvicinarsi ai cinque secondi permette di massimizzare le possibilità di competere con il broadcast o i feed dei social network.
Inoltre, a seconda dalla posizione del codificatore di video OTT nel flusso di lavoro di preparazione dei contenuti, l’obbiettivo della riduzione della latenza aumenta mentre i codificatori sono posizionati più in basso nella catena.
Best practice per ottenere video con bassa latenza nelle applicazioni di diretta streaming
A un livello alto, ecco le principali azioni da attuare per far sì che la tua soluzione di streaming video sia a bassa latenza:
- Misura la latenza dei video a ogni passaggio del flusso di lavoro
- Ottimizza la durata della pipeline di codifica video
- Scegli la giusta durata di segmento in base ai tuoi requisiti
- Costruisci l’architettura appropriata
- Ottimizza (o sostituisci) i tuoi riproduttori video
Come scegliere la giusta dimensione dei segmenti per la creazione di pacchetti video
La durata del segmento che scegli ha un effetto meccanico sulla latenza dei video in quasi ciascun riproduttore. Per esempio, puoi raggiungere una latenza di cinque secondi con dei segmenti della durata di un secondo. Scegli segmenti della durata di due secondi, e la latenza dei video risulterà in qualcosa compreso tra i sette e i dieci secondi, a meno che tu non ottimizzi le impostazioni del riproduttore.
La regola fondamentale è di scegliere una dimensione “corretta” in base ai tuoi requisiti. Quindi, se la latenza dei video è di sette secondo o più bassa non è un problema critico, scegli dei segmenti della durata di due secondi.
Se il tuo riproduttore utilizza segmenti di due secondi, aumenta la lunghezza di GOP da uno a due secondi per incrementare la qualità della codifica con un bitrate costante.
Inoltre, se utilizzi HLS come format di acquisizione dei dati, puoi ridurre lo stress sullo storage dell’origine e le capacità di calcolo per la creazione di pacchetti utilizzando dei segmenti di due secondi durante la fase di acquisizione.
Tieni a mente questi dati e suggerimenti sulla latenza dei video
- La latenza dei video per la diretta streaming non è un problema irrisolvibile. Puoi minimizzarne gli effetti, con alcuni accorgimenti
- Le tecnologie HLS e DASH standard permettono una bassa latenza scalabile sull’HTTP
- Lo standard per la latenza dei video al momento nella diretta streaming: meno di 10 secondi
- È possibile ottenere una latenza dei video stabile di quattro o cinque secondi, se il tuo business lo richiede
- L’ecosistema CMAF a blocchi sta maturando e permetterà presto di ottenere una latenza video stabile di quattro secondi
Dimostrazione per la bassa latenza nella diretta streaming di video
Scopri come ottenere una bassa latenza stabile e prevedibile nella diretta streaming utilizzando i protocolli standard HLS o DASH e come le capacità ad elevate prestazioni dell’origine di video sul cloud e lo storage integrato con AWS in questa dimostrazione di AWS Elemental MediaStore.