To Glenn Kasten and others having problems with Bluetooth SCO audio - Predictability, Consistency and Performance!?

51 views
Skip to first unread message

Jake

unread,
Dec 20, 2015, 1:52:05 PM12/20/15
to android-ndk
Hi Glenn,

What is the state of Bluetooth SCO audio on Android 4.4.2 and up ?

I am finding the performance to be quite bad. Audio lag and slow response time.

Establishing an SCO connection can take up to several seconds.

Audio routing is not consistent.

The worst part is : There's little or no documentation on what the correct procedure is for capturing/rendering
audio from/to a BT SCO headset. At least if there was some documentation on initialization
procedures, routing procedures and how to render/capture audio, I would be able to tell if I am doing something
wrong or the device is buggy.

I am using a BT SCO headset for a VoIP application that I am developing. The specific issues
I am running into are:

1. DTMF tones (using Android Tone Generator) will sometimes play to BT headset, sometimes not
play at all, sometimes play to device speaker instead of BT headset.

2. It's practically impossible to get the OS to play the default ringtone to the BT headset.

3. Audio from mic / Audio to speaker doesn't always play to BT headset. Sometimes mic audio is
just silence, sometimes mic audio comes from device mic. Sometimes speaker audio is played
to BT headset, sometimes it is routed to device speaker.

Is it too much to ask for some consistency and predictability in how audio routing works on Android??

How about some documentation on:

1. This is how you play the default ringtone to a BT SCO headset
2. This is how you play DTMF tones to a BT SCO headset
3. This is how you play/capture VoIP call audio to/from a BT SCO headset
4. This is how you switch/manage audio routing

Or are developers just supposed to guess what the right approach is?

If other developers in this group are reading this, please chime in.

Thanks

 

Bruce Greenblatt

unread,
Dec 29, 2015, 6:53:01 PM12/29/15
to android-ndk
I agree. The whole bluedroid package is very poorly documented. It's really hard to figure out what sequence of calls to use in order to do even the simplest things.

dig...@gmail.com

unread,
Dec 30, 2015, 2:39:36 PM12/30/15
to android-ndk
I use the Java SDK, not the NDK, and I also agree that even there, Bluetooth SCO behaviour and documentation leaves a lot to be desired. There is too much variance in behaviour between devices and Android versions, as well as undocumented changes from version to version, and I hope that this area of the SDK will be improved in the future.
Reply all
Reply to author
Forward
0 new messages