Latenza audio su Android: gli ingegneri di Google fanno il punto della situazione

Lorenzo Quiroli
Lorenzo Quiroli
Latenza audio su Android: gli ingegneri di Google fanno il punto della situazione

La latenza audio è un problema che affligge il robottino verde ormai da anni, e sembra che Google abbia finalmente deciso di focalizzare la sua attenzione per limare anche questa imperfezione.

Durante il Google I/O ormai concluso c'è stata una sessione intitolata "High Performance Audio" volta proprio a mostrare i progressi effettuati in questo settore e alcune vie per risolvere parzialmente il problema; potete trovare il video in fondo all'articolo, ma essendo molto tecnico e pieno di informazioni che a molti potrebbero non interessare, l'abbiamo guardato per voi e vi faremo un breve riassunto.

audio-latency-1

Una delle slide iniziali mostra subito una promessa: la latenza audio diminuirà drasticamente in futuro. E' stato poi mostrato tutto il lavoro svolto per individuare i vari problemi e le soluzioni per risolverli, il cui esito è stato non sempre soddisfacente. La questione è molto più complicata di quanto possa sembrare ad un occhio profano, in quanto le variabili in gioco sono davvero molte (dal kernel alla CPU, dalla versione di Android presente alla gestione dell'alimentazione), e la frammentazione di software e hardware rende davvero difficile la ricerca di una soluzione che funzioni per tutti.

La situazione è comunque migliorata con le API level 17 (per intenderci quelle contenute in Android 4.2), grazie alle quali non è più necessario inserire manualmente alcuni dati che sono diversi per ogni dispositivo (come la dimensione del buffer), e anche grazie alla creazione di un apposito percorso per l'audio a bassa latenza. Già ora, attraverso alcuni accorgimenti, gli sviluppatori possono ottenere una latenza di circa 20ms (il che è un buon valore) ma al momento solamente sui dispositivi Nexus con Android 4.2. Aspettiamo quindi i miglioramenti promessi per il futuro, magari nella prossima versione di Android, e speriamo che il problema possa essere risolto al più presto e definitivamente; a seguire il video della sessione: