That should be doable!
The DSP of the mics resides on our FPGA, you can check out the MATRIX Creator FPGA code here. The FIR filter coefficients can be edited for the kernel modules using the instructions here. You would likely use the kernel modules for the microphone recordings. This gives you access to audio through ALSA which has a python wrapper called pyaudio.
Install the kernel modules using the steps provided here.
Then, set up pyaudio following the steps below.
Install the pip3 package manager.
sudo apt install python3-pip
python3 -m pip install --upgrade pip
sudo apt install portaudio19-dev
Install pyaudio using pip
sudo python3 -m pip install pyaudio
Then, you need to implement a little workaround as portaudio is having some issues with the latest Raspbian, since pyaudio relies on that.
On your RPi, in the /etc/asound.conf file, add the following line in the
Then, you can try out this example program here. You can edit th sampling rate, channels, and other mic characteristics in the file. You can access other MATRIX Creator sensor functionality through python with MATRIX Lite.
If the recording volume is too low for your liking, you can play with the mic gain by adding and editing the following line in /etc/asound.conf once you have the MATRIX kernel modules:
name "MicArray Master"
You can also access audio through MATRIX HAL which doesn’t go through ALSA. Setup here & examples found here. You can edit the FIR coefficients for HAL by editing this file and compiling from source.
You should be able to use any of these methods, and use sockets to create streaming web servers to send the files/data buffers over WiFi/ethernet to a program on your laptop!
Hope this helps!