I'm attempting to modify the USB Sound Card example on the 7-mic array to run a direction-finder and beamformer.
At this point, I think the best option is to send the input of 3 mics to the direction finder, and that same data to a hires_delay function, then onward to the beamformer. The direction finder can use the mic audio to inform the beamformer. However, I can't figure out if it's possible to duplicate the audio from these microphones.
Currently, the flow is mic_array_pdm_rx() =(mics 0-6)=> (2x) mic_array_decimate_to_pcm_4ch() ==> pdm_process() and uses all 7 microphone channels.
I want it to be mic_array_pdm_rx() =(mics 1, 2, 3, 1, 2, 3)=> mic_array_decimate_to_pcm_4ch() ==> pdm_process() where the direction finder and the beamformer are in the pdm_process.
Is this possible? I can't find where mic_array_pdm_rx is defined, so I can't edit it - is there another, clean way to duplicate the microphone data in a way that I can hires_delay one set, as I've described?
Thanks for any help
Duplicating PDM Mic Data
-
- Newbie
- Posts: 1
- Joined: Tue Sep 26, 2017 11:35 pm
-
- Member
- Posts: 11
- Joined: Thu Jan 03, 2019 12:06 pm
I´m not a professional in Xmos-programming. But as far as I understood the lib-mic-array the function mic_array_pdm_rx ist written in assembler and you can find the code in lib_mic_array/src/pdm_rx.S .