A2DP source with custom audio buffers

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
DaEr_349131
Level 5
Level 5
25 likes received 50 sign-ins 5 comments on KBA

Today the A2DP source example supports I2S, UART or the sine-wave test tone.

1. Let's assume you want to feed it with custom audio buffers (generated by code). How could that be achieved. Seems the sine example wiced_audio_set_sinwave()is hardcoded from within the binary.

2. Together with the source (aka watch) example. We'd like to also setup one I2S TX output. Would be great with some guidance if/how that can be done.

0 Likes
2 Replies
AnjanaM_61
Moderator
Moderator
Moderator
5 comments on KBA First comment on KBA 5 questions asked

Hi David,

1. You can try passing custom audio buffer to wiced_audio_set_sinwave(). Or you can input the audio data via UART.

2. I2S can't be set by the application. The audio HW/FW control this based on current audio stream bit depth , sample rate etc.

   Check the blog here: PCM/I2S Clock setting in CYW20706

Note:

Audio route over app is removed. Currently, the only option is to route SCO over I2S/PCM interface.

Configuring audio over I2S: Re: I2S/PCM config for A2DP source

Thanks,

Anjana

Hi AnjanaM_61

1. The data is generated in application code on the 20706. So we can't feed it via UART...

Or do you mean send it out on one uart and route physical traces back in?? It's not a good solution 🙂

2. Can you please open up this part of Wiced to allow the application full control of the I2S peripheral.

We need to be able to control our own I2S output TX, none of the hard-coded features in the binaries support this I'm afraid.

...at a bare minimum, add config options to setup i2s rx and tx independently (running at same sample-rate of course)

0 Likes