Monthly Archives: December 2011

Dave Sparks on Android audio latency at Google I/O 2011

This is old news but I just heard about it and thought it was worth posting for future reference.

Over on the Andraudio list Robert Munro kindly pointed out that there was a question about the sad state of audio latency on Android at the Google I/O 2011 “Fireside Chat with the Android Team.” The question is at 40:24 in the video:

I’ve transcribed Dave’s answer below:

In response to “There are questions about audio latency being a problem for Android, are you seeing this Dave?” Dave Sparks said:

“Latency is a big problem. We’re working at, hopefully we hope to be able to do something about it with ICS. As we investigated it it’s actually a pretty complex problem. There are a number of different places where latency gets introduced. Most of the latency is introduced below Android. Basically it’s happening in the drivers or in the chipsets or somewhere in there, and some of these are really obscene amounts like hundreds of milliseconds of latency in the audio path. So, that’s something we’re going to push on. We started/ I think we introduced something in CDD Gingerbread which was a “should” hit certain latencies.

There are some interesting problems we need to solve in the scheduler, so I’ll be talking to Rebecca shortly about this. Because the fair scheduler makes it really difficult to make sure that these low latency audio threads get scheduled when we need them to be scheduled every single time. That’s probably the biggest issue we’re running into right now. But it’s a problem we want to deal with and hopefully the next release will get it. Obviously it’s not going to solve the problems for legacy devices but it’s going to get better.”

Source:
Dave Sparks — Technical lead for the Android media framework.
Google I/O 2011, “Fireside Chat with the Android Team” May 10, 02:30PM – 03:30PM
On YouTube as “Google I/O 2011: Fireside Chat with the Android Team” at 40:24
www.youtube.com/watch?v=gfiYUL2exT8#t=2424s

Share/Bookmark