Not able to store the audio data streamed via nrf5340 to android phone

Hi Team,

We are trying to store the audio that is being captured and transmitted by nrf5340 digital mic and then store it to connected android phone. For this we tried A2DP profile but android is not converted as sink device. 

Do we have any sample or suggestion on how can we achieve the same use case?

Best Regards,

KK

  • Hello KK,

    Which android device are you using for this? Have you made sure that it is compatible with / support LE Audio?
    The A2DP profile is part of the Bluetooth Classic protocol, and it does not exist in LE Audio. The nRF5340 does not do any Bluetooth Classic at all, so you will not be able to use A2DP to transfer the audio.
    Instead, you could use the LE Audio Basic Audio Profile (BAP), for example.

    Do we have any sample or suggestion on how can we achieve the same use case?

    Just for clarity, are you using the nRF5340 Audio DK, or a nRF5340 DK?
    In case of the former you can use the nRF5340 Audio reference application to transfer or broadcast the audio from the nRF5340 device.

    Best regards,
    Karl

  • Hi Karl,

    Thanks for the information. 

    We are using nRF5340 Audio DK and our end goal is to store the audio data transmitted from Audio DK to the android device and then store it to cloud. End goal is not to play, but to store and then decode and process the audio files.

    Appreciate the link shared by you above. Till broadcast we are clear on how it will work, but can we store the data on android? Does nrf Connect app have such functionality to check it out on android?

    Thanks,

    KK

  • Hello KK,

    karanshah said:
    We are using nRF5340 Audio DK and our end goal is to store the audio data transmitted from Audio DK to the android device and then store it to cloud. End goal is not to play, but to store and then decode and process the audio files.

    Bi-directional audio was actually added just weeks ago, and is now available in the main branch of the nRF Connect repository. Please know that all product development should be made on a tagged release of the nRF Connect SDK - the main branch is primarily the staging area of new features that will make it into the next tagged release.

    karanshah said:
    Till broadcast we are clear on how it will work, but can we store the data on android? Does nrf Connect app have such functionality to check it out on android?

    The nRF Connect application does not have any such feature, unfortunately.
    Have you made sure that the device you are using is compatible with / supports LE Audio? If so, I would think that they would have some API to receive the incoming data, and process(save) it.

    Best regards,
    Karl

  • Hello Karl,

    Thanks for the update. In that case there is limited support over android We are exploring different options for the same. 

    Can you please let me know the possiblity of saving the audio on the nrf5340 DK behaving as receiver or sink? If that is possiblity then we can plan for the same.

    Best Regards,

    KK

  • Hello again, KK

    karanshah said:
    Thanks for the update.

    No problem at all - I am happy to help! :)

    karanshah said:
    In that case there is limited support over android We are exploring different options for the same. 

    Yes, there is unfortunately still only limited support for LE Audio on most phones, but fortunately the support is growing! I thought I should mention that we have been using the Pixel 7 for testing of CIS transfers internally, just so you know.

    karanshah said:
    Can you please let me know the possiblity of saving the audio on the nrf5340 DK behaving as receiver or sink? If that is possiblity then we can plan for the same.

    How much data do you intend to save at the same time?
    There is no innate functionality for this in the nRF5340 Audio reference application, but if you intend to exceed the storage that the nRF5340 Audio DK can provide you could easily bypass the Cirrus Logic Hardware Codec by doing the following:


    Which will let you route the I2S data anywhere you'd like, such as to an external storage.

    Best regards,
    Karl

Related