Cant use output of 4 mic array on Raspberry

Hey,

I am using a Raspberry Pi with the 4 mic array and noticed a strange thing. I am recording the 4 channal audio and would like to get the raw data from it, but if I play some loud music to it and record, it seems to completly mess up the recording.

Is this because of the algorythms or something else? Is there an option to get the raw data from the mcrophones?

Kind regards.

Hi there~,


  1. Do you use the respeaker 4 mics pi hat for raspberry pi?


  2. If yes, the hardware does not have any AEC functions. So if you play the music on raspberry pi, the mics will record the music as well. You can check the software aec function from below link. thanks.



    https://github.com/voice-engine/ec

1. Yes i do use the one for raspberry pi.

2.I am playing audio via my laptop and let it record on the pi.

But I have a question concering the diffrent outputs of this model, that would maybe answer my question:
</s>pi@raspberrypi:~/seeed-voicecard $ arecord -L null Discard all samples (playback) or generate zero samples (capture) playback capture dmixed array ac108 default:CARD=seeed4micvoicec seeed-4mic-voicecard, Default Audio Device sysdefault:CARD=seeed4micvoicec seeed-4mic-voicecard, Default Audio Device dmix:CARD=seeed4micvoicec,DEV=0 seeed-4mic-voicecard, Direct sample mixing device dsnoop:CARD=seeed4micvoicec,DEV=0 seeed-4mic-voicecard, Direct sample snooping device hw:CARD=seeed4micvoicec,DEV=0 seeed-4mic-voicecard, Direct hardware device without any conversions plughw:CARD=seeed4micvoicec,DEV=0 seeed-4mic-voicecard, Hardware device with all software conversions <e>
Is there a way, that i can directly record sound from the hw card, becaus if i could, than i would get a “raw” output from the microphones right?

And could there be a way that this echo isnt present anymore, if I dont play the music from the pi but from a diffrent device, like my Laptop instead?

Kindly, Moritz Pfennig

  1. Yes i do use the one for raspberry pi.

    2.I am playing audio via my laptop and let it record on the pi.

    But I have a question concering the diffrent outputs of this model, that would maybe answer my question:
    [code]
    Code: Select all

pi@raspberrypi:~/seeed-voicecard $ arecord -L
null
Discard all samples (playback) or generate zero samples (capture)
playback
capture
dmixed
array
ac108
default:CARD=seeed4micvoicec
seeed-4mic-voicecard,
Default Audio Device
sysdefault:CARD=seeed4micvoicec
seeed-4mic-voicecard,
Default Audio Device
dmix:CARD=seeed4micvoicec,DEV=0
seeed-4mic-voicecard,
Direct sample mixing device
dsnoop:CARD=seeed4micvoicec,DEV=0
seeed-4mic-voicecard,
Direct sample snooping device
hw:CARD=seeed4micvoicec,DEV=0
seeed-4mic-voicecard,
Direct hardware device without any conversions
plughw:CARD=seeed4micvoicec,DEV=0
seeed-4mic-voicecard,
Hardware device with all software conversions
[/code]
Is there a way, that i can directly record sound from the hw card, becaus if i could, than i would get a “raw” output from the microphones right?

And could there be a way that this echo isnt present anymore, if I dont play the music from the pi but from a diffrent device, like my Laptop instead?

Kindly, Moritz Pfennig