Note that there are some explanatory texts on larger screens.

plurals
  1. POWorking around A2DP and HFP limitations of Android Pre-HoneyComb
    primarykey
    data
    text
    <p>I'm researching an interesting project involving mixing streaming audio over Bluetooth for smart phones, starting with android since it's what I have the most experience with. I've worked with Bluetooth on android once or twice and in my experiences have learned that the pre-honeycomb API doesn't allow for applications to connect to A2DP or HFP audio sinks. I've already tried this on Ginger Bread on an HTC EVO, using the necessary UUID to no avail. </p> <p>According to the official documentation, as of <a href="http://developer.android.com/guide/appendix/api-levels.html#level11" rel="nofollow">API LEVEL 11</a>, this is now possible, but I'm pretty sure the only devices that will offer this API level will be Ice Cream Sandwich devices later on, since support started only in Honey Comb. I'm a total amateur so it isn't likely that I will get my mitts on a development grade Ice Cream Sandwich device any time soon. Adapting any code for later revisions wouldn't be a problem right since I'm just looking to prove concept right now.</p> <p>Ideally, I would like use the input/output streams of a paired A2DP device to read and write PCM data directly. However if I want to do this now, I will more than likely have to use a workaround.</p> <p>My idea is to use android's <a href="http://developer.android.com/reference/android/media/AudioRecord.html" rel="nofollow">AudioRecord</a> and <a href="http://developer.android.com/reference/android/media/AudioTrack.html" rel="nofollow">AudioTrack</a> classes which, according to my understanding read audio input from the mic and push audio output to the speaker. Now in both cases, when an A2DP device is not connected, these structures will use the device's mic and speaker respectively. However when an A2DP or HFP device is connected, I'm unaware of whether or not the system would now set these structures respective input and output to the mic and speaker of the headset. If so, then I could effectively work this into my code and adapt it later to take advantage of the direct support in Ice Cream Sandwich.</p> <p>Does anyone with relatively strong experience in this area think that this approach would work? I'd rather know if anyone has been successful, before I sit down and write some code that could potentially be a waste of time.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload