sepia-docs icon indicating copy to clipboard operation
sepia-docs copied to clipboard

Erfahrungen mit Respeaker 4-Mic-Array, Mic-Array V2.0 und verschiedenen Lautsprecherlösungen

Open rubipopubi opened this issue 3 years ago • 12 comments

Da ich mittlerweile verschiedene Set-Ups ausprobiert habe und mitunter doch viel rumexperimentieren musste, dachte ich mir, ich gebe hier mal meine funktionierenden Set-Ups durch inkl. der notwendigen Einstellungen zu Audio-Input und Output:

1. 4-Mic-Array an Rpi (3,4) mit USB-Lautsprechern

Audio-Output (im Client-Setup): ac108 Audio-Input ("): default

Änderung in /usr/share/alsa/alsa.conf:

defaults.ctl.card 0 defaults.pcm.card 0

2. 4-Mic-Array mit RPi (3,4) und Pi-Audio-Jack

Audio-Output (im Client-Setup): ac108 Audio-Input ("): default

3. Mic-Array V2.0 mit Rpi (3,4) und Pi-Audio-Jack

Audio-Output (im Client-Setup): default Audio-Input ("): default

Dazu nach der Client-Installation einfach wie hier [(https://github.com/SEPIA-Framework/sepia-installation-and-setup/blob/master/sepia-client-installation/rpi/README.md#variant-1-usb-mic---speakers-via-audio-jack)] vorgehen.

4. Mic-Array V2.0 mit Rpi (3,4) und Audio-Output über Mic Array

Änderung in /usr/share/alsa/alsa.conf:

defaults.ctl.card 0 defaults.pcm.card 0

Vielleicht kann ich damit ja dem ein oder anderen Arbeit ersparen. Bei Bedarf kann ich aufgrund der ganzen mic-hats die ich hier rum liegen habe (Respeaker 2-Mic-Hat, 4-Mic-Array, Mic-Array V2.0) und der Pis (3A+, 3B+, Zero W, 4) auch entsprechende Set-Ups ausprobieren. Einfach bescheid geben. Kann allerdings dann ein bisschen dauern, da ich grade nebenher an meiner Masterarbeit sitze. 🤯

rubipopubi avatar Oct 26 '20 09:10 rubipopubi

Cool, danke dafür! :sunglasses: und viel Erfolg bei deiner Masterarbeit :grin:

fquirin avatar Oct 26 '20 19:10 fquirin

Hi

Hast du auch die Möglichkeit, eine Kombination USB-Microphone und USB-Soundkarte auszuprobieren ?

Tschau nepo

neporamone avatar Nov 06 '20 16:11 neporamone

Hey,

in irgendeiner Schublade müsste bei mir noch eine USB-Soundkarte rumliegen. Sollte ich sie finden, probiere ich es mal aus 😄 Das Mic Array V2 ist ja komplett über USB angebunden, also im Grunde beides, Soundkarte und Mic, über USB. Aber das meinst du vermutlich nicht, sondern zwei separate Devices, richtig?

rubipopubi avatar Nov 07 '20 08:11 rubipopubi

hi Meine Problematik habe ich mal hier beschrieben #88

Das Mic Array V2 ist ja komplett über USB angebunden

Wie zeigt sich das in aplay -l und arecord -l ? Werden sie direkt als USB Geräte angezeigt ?

Tschau nepo

neporamone avatar Nov 07 '20 10:11 neporamone

Ich habe leider keine USB Soundkarte zum Testen, aber zumindest Mikrofon via USB klappte bei mir meist auf Anhieb oder nach Deaktivierung des Audio-Jacks. Wenn man eine funktionierende alsa Config hat aber das Default device trotzdem nicht vom Chromium erkannt wird kann man noch die neue Einstellung im ~/sepia-client/setup.sh versuchen. Da muss man aber etwas experimentieren mit den Namen vermutlich.

fquirin avatar Nov 09 '20 22:11 fquirin

aber zumindest Mikrofon via USB klappte bei mir meist auf Anhieb

Das Mikro ist bei mir auch nicht das Problem !

Wenn man eine funktionierende alsa Config hat aber das Default device trotzdem nicht vom Chromium erkannt wird kann man noch die neue Einstellung im ~/sepia-client/setup.sh versuchen. Da muss man aber etwas experimentieren mit den Namen vermutlich.

siehe hier

Gibt es wirklich keinen, der es mit einer USB-Soundkarte versucht und geschafft hat ?

Das Mic Array V2 ist ja komplett über USB angebunden, also im Grunde beides, Soundkarte und Mic, über USB.

Kannst du (nochmal) die genauen Infos geben:

  • aplay -l und aplay -L bzw. arecord -l und arecord -L

  • eine ~.asoundrc vorhanden und welche

  • Angaben in /usr/share/alsa/alsa.conf

  • Angaben in setup Menue (Punkt 9)

Tschau nepo

neporamone avatar Nov 13 '20 18:11 neporamone

Moin moin. Bin leider momentan länger unterwegs. Daher grade alles aus der Erinnerung:

Bei der Einbindung vom usb mic array (Mic und Output) lief das komplett ohne asound.rc o.ä. Ich hab lediglich die alsa.conf wie oben beschrieben geändert. Bei der Einbindung nur des Mikrofons über USB bin ich wie im Wiki beschrieben vorgegangen. Also das respeaker script ausgeführt, das die entsprechende asound.rc ja einfügt. Einbindung von Mic und Output über die asound.rc (beides auf card 1 gesetzt) funktionierte bei mir NICHT, dann lief über Sepia nur das Mikro, nicht aber der Output. Der Output funktionierte allerdings nur in Sepia nicht. Im Setup Menü hab ich nichts geändert. Hatte da verschiedenes ausprobiert, aber ohne Erfolg.

rubipopubi avatar Nov 14 '20 11:11 rubipopubi

hi Meine Problematik habe ich mal hier beschrieben #88

Das Mic Array V2 ist ja komplett über USB angebunden

Wie zeigt sich das in aplay -l und arecord -l ? Werden sie direkt als USB Geräte angezeigt ?

Tschau nepo

Achso, da wurde das USB Gerät jeweils als card 1 angezeigt, bei subdevice stand glaube ich auch nichts besonderes.

rubipopubi avatar Nov 14 '20 11:11 rubipopubi

Hallo,

muss ich für das ReSpeaker 4-Mic-Array einen Treiber installieren? Ich möchte es gerne auf meinem Pi4 für die Spracheingabe für SEPIA verwenden.

Danke Thorsten

twalenzyk avatar Feb 14 '21 20:02 twalenzyk

Hi Thorsten,

Ich habe den ReSpeaker 4-Mic HAT zuletzt erfolgreich mit dem Seeedstudio Skript installiert, das auch im SEPIA DIY Client für den 2-MIC HAT benutzt wird.

Falls dein RPi Kernel v 5.9 oder höher hat und der offizielle Treiber nicht klappt, musst du eventuell diesen fork benutzen:

git clone https://github.com/HinTak/seeed-voicecard
cd seeed-voicecard
sudo ./install.sh
sudo reboot

Ich deaktiviere danach auch meistens noch alle anderen Audiogeräte am Pi damit das System nicht "aus versehen" das falsche benutzt. Im DIY client ist zumindest für den Klinke Anschluss ein Skript, allerdings hat das 4-Mic Array ja keinen eigenen Anschluss also brauchst du den vielleicht noch ;-)

fquirin avatar Feb 18 '21 09:02 fquirin

Hallo, ich habe das Waveshare WM8960 Hi-Fi Sound Card HAT for Raspberry Pi verbaut. Bei einem erwachsenen Sprecher klappt die WakeWord-Erkennung und STT-Ausgabe sehr gut.

Wenn mein 5 Jahre alter Sohn das WakeWord spricht, reagiert SEPIA fast nicht. Wenn ich das WakeWord spreche und mein Sohn spricht den Befehl, klappt alles sehr gut. Daher vermute ich nicht die kindliche Aussprache als Fehler. Habt Ihr Erfahrungen, die WakeWord-Erkennung zu tunen?

Oder anders gefragt, gibt es (Mess-)Werte (Lautstärkepegel etc.) um die Mikrofoneinstellung zu optimieren? Hat jemand Erfahrung mit der Stimmerkennung von Kindern?

cap-blackbeard avatar Feb 21 '22 22:02 cap-blackbeard

Ich denke das Problem ist dass Picovoice die Engine hauptsächlich mit Daten von Erwachsenen trainiert hat, da können wir leider nichts dran ändern :disappointed: . Mit etwas Glück sind die 2.0 wake-words etwas robuster oder man könnte mal ein eigenes, deutsches WW testen.

Oder anders gefragt, gibt es (Mess-)Werte (Lautstärkepegel etc.) um die Mikrofoneinstellung zu optimieren?

Das ist ein unendliches Thema, an dem ich regelmäßig Stunde um Stunde experimentiere und am Ende doch nicht zufrieden bin. Mit dem IQAudio Codec Zero HAT hatte ich zuletzt die Erfahrung gemacht, dass noise-cancelling "false" irgendwie bessere Resultate liefert, weil weniger Artefakte im Signal sind, das gleiche muss aber nicht für die ReSpeaker gelten und zwischen RPi OS Buster und Bullseye gibt es scheinbar auch Unterschiede :-(. Das Problem ist, dass das Testen unglaublich aufwendig ist und eigentlich nur empirisch funktioniert, also einstellen, ausprobieren.

Gerede experimentiere ich wieder mit den Pulseaudio DSP Modulen. Du könntest mal im SEPIA Client alles ausschalten (noise-cancel, echo-cancel, auto-gain), vielleicht die "resamplerQuality": 5 nutzen und dann das aec_only script aus dem dev branch versuchen. Je nachdem wie dein System konfiguriert ist müsstest du das aber intern noch anpassen auf deine audio card Namen und ich weiß momentan nicht ob es in Bullseye überhaupt klappt :-|.

fquirin avatar Feb 25 '22 13:02 fquirin