NEWS
[Aufruf] Adapter: Snips - Offline Speak2Text
-
-
@Wal Ja, Lautsprecher geht direkt dran. Leider hat das mit der Audioausgabe auf der Karte nicht zuverlässig funktioniert. Mal gings mal nicht. Habe die Karte nochmal installiert. Für mich siehts so ok aus.
Kenne mich leider auf dem Pi nicht besonders gut mit der Konfiguration der Treiber aus.Fällt dir was auf.
aplay -L null Discard all samples (playback) or generate zero samples (capture) default sysdefault:CARD=ALSA bcm2835 ALSA, bcm2835 ALSA Default Audio Device dmix:CARD=ALSA,DEV=0 bcm2835 ALSA, bcm2835 ALSA Direct sample mixing device dmix:CARD=ALSA,DEV=1 bcm2835 ALSA, bcm2835 IEC958/HDMI Direct sample mixing device dsnoop:CARD=ALSA,DEV=0 bcm2835 ALSA, bcm2835 ALSA Direct sample snooping device dsnoop:CARD=ALSA,DEV=1 bcm2835 ALSA, bcm2835 IEC958/HDMI Direct sample snooping device hw:CARD=ALSA,DEV=0 bcm2835 ALSA, bcm2835 ALSA Direct hardware device without any conversions hw:CARD=ALSA,DEV=1 bcm2835 ALSA, bcm2835 IEC958/HDMI Direct hardware device without any conversions plughw:CARD=ALSA,DEV=0 bcm2835 ALSA, bcm2835 ALSA Hardware device with all software conversions plughw:CARD=ALSA,DEV=1 bcm2835 ALSA, bcm2835 IEC958/HDMI Hardware device with all software conversions sysdefault:CARD=seeed8micvoicec seeed-8mic-voicecard, Default Audio Device dmix:CARD=seeed8micvoicec,DEV=0 seeed-8mic-voicecard, Direct sample mixing device dsnoop:CARD=seeed8micvoicec,DEV=0 seeed-8mic-voicecard, Direct sample snooping device hw:CARD=seeed8micvoicec,DEV=0 seeed-8mic-voicecard, Direct hardware device without any conversions plughw:CARD=seeed8micvoicec,DEV=0 seeed-8mic-voicecard, Hardware device with all software conversions
arecord -L null Discard all samples (playback) or generate zero samples (capture) default sysdefault:CARD=seeed8micvoicec seeed-8mic-voicecard, Default Audio Device dmix:CARD=seeed8micvoicec,DEV=0 seeed-8mic-voicecard, Direct sample mixing device dsnoop:CARD=seeed8micvoicec,DEV=0 seeed-8mic-voicecard, Direct sample snooping device hw:CARD=seeed8micvoicec,DEV=0 seeed-8mic-voicecard, Direct hardware device without any conversions plughw:CARD=seeed8micvoicec,DEV=0 seeed-8mic-voicecard, Hardware device with all software conversions
-
-
Ich hatte auch Probleme mit dem ReSpeaker USB Mic Array 2.0 , der Speaker den ich an das Teil gestöpselt habe, funktionierte nicht immer ab und zu verzerrte die Audioausgabe. Ich nutze jetzt ein Jabra 410 und bin voll zufrieden. Evtl. werde ich mir ein Gehäuse für diese Kombi anfertigen. Das Ganze was mich aber stört sind die Kosten, für einen RPI mit Zubehör und das Jabrateil gehen mal locker 100 Euro plus drauf. Meinen Jabra habe ich zum Glück für 40 Öcken bei E-Bay bekommen.
-
Also für den Pi Zero W geht es eigentlich.
Pi Zero W 10,35 Euro
3 Samsung Ladegeräte 6,99
Respeaker 2-Mic-Hat etwa 10 Euro
Plus günstige Micro SD.Puh. Aber das Jabra 410 ist teuer.
-
@unltdnetworx sagte in [Aufruf] Adapter: Snips - Offline Speak2Text:
Also für den Pi Zero W geht es eigentlich.
Ja das wäre i.O.
Falls jemand so eine Kombi hätte und es für Snips zu gebrauchen wäre, könnte man ein Community-Snips-Gerät daraus machen. Allerdings fehlt da noch der Speaker oder ?Das Gehäuse würde da ja Frank entwickeln, so wie ich das verstanden habe.
-
Laut Snips ist es zu gebrauchen.
Speaker fehlen. Stimmt. Hab im moment aktive Kleinlautsprecher von Media Markt. Für reine Sprachausgabe vollkommen ausreichend. Aber halt zu groß für das Gehäuse. -
Werfe den hier mal noch in den raum
https://www.adafruit.com/product/3369?gclid=EAIaIQobChMIv9_4sJ2h2gIVGIezCh0OsQKgEAQYDSABEgIxgfD_BwE
-
Ich bin nicht so scharf auf einen Speaker. Bei mir gehts vorranging um die Spracheingabe. Aber schaut eich doch mal das hier an. Vielleicht ist das eine Alternative.
https://github.com/Psychokiller1888/SnipsSonosInvader
https://laurentchervet.wordpress.com/category/snips/page/2/Ich kümmere mich um das Gehäuse, aber wie bereits erwähnt... Mal sehen was beim 3d Druck rauskommt.
-
@Wal
Ich hab mal im testing Branch einen Vorschlag eingestellt. Es werden damit für jeden Satelliten eigene Datenpunkte für die Slots bei erster Benutzung des Geräts erstellt.Das Problem mit dem Ziel der Ausgabe ist aber noch nicht behoben. Weiterhin das default Gerät.
-
@unltdnetworx sagte in [Aufruf] Adapter: Snips - Offline Speak2Text:
@Wal
Ich hab mal im testing Branch einen Vorschlag eingestellt. Es werden damit für jeden Satelliten eigene Datenpunkte für die Slots bei erster Benutzung des Geräts erstellt.Das Problem mit dem Ziel der Ausgabe ist aber noch nicht behoben. Weiterhin das default Gerät.
@unltdnetworx,
ich hätte das evtl. ein wenig anders gelöst.
Wenn das Feld room leer bleibt, wird die roomid mit an t2c gesendet, dadurch bleibt die Anzahl der Slots gleich.
Lass dir das mal durch den Kopf gehen. -
Das stimmt. Das Problem ist aber, wenn zwei Satelliten etwa in ähnlicher Zeit benutzt werden, dann haben wir ein Problem mit der Ausgabe aufgrund t2c.
Beispiel:
Ich sage Snips "Gute Nacht". Dann wird bei mir einiges ausgeführt. Alle möglichen Geräte ausgeschaltet, evtl. Müllabfuhr für den nächsten Tag angekündigt, Wetterbericht für die Nacht und den nächsten Tag abgefragt. Das dauert ein klein wenig.Angenommen, es wird gleichzeitg in einen anderen Satelliten gesprochen, z.B. nur die Uhrzeit. Das geht erheblich schneller, auch wenn nur Millisekunden. Bevor aber die Ausgabe der ersten Antwort erfolgen kann, nämlich an Satellit 1, wird die Variable schon mit der ID von Satellit 2 überschrieben und beide Antworten kommen auf Gerät 2 an.
Evtl. müssen wir ein ganz anderen Weg wählen? Irgendeine Form von ID der Anfrage an t2c übergeben und auch entsprechend antworten lassen. Dann aber vermutlich nur mit eigenen Skripten in t2c.
-
@unltdnetworx ,
ich verstehe, wird nicht einfach. -
Kann man die Dialog ID auswerten/verwenden?
-
@unltdnetworx sagte in [Aufruf] Adapter: Snips - Offline Speak2Text:
Kann man die Dialog ID auswerten/verwenden?
Muss ich mir mal mit einem MQTT-Log anschauen.
-
@Wal Ich bein kein Software Experte aber in mir bekannten Client-Server Applikationen wird so etwas in einer "Session" verarbeitet. Stichwort Sessioncookie. In Node git es ein Modul Session. Vielleicht ist das dafür zu gebrauchen
-
Das Hauptproblem wird sein, dass t2c nur einen Datenpunkt als Rückgabe setzen kann.
-
@AndiM said in [Aufruf] Adapter: Snips - Offline Speak2Text:
Die Verarbeitung läuft auf dem Server und genau da greifen wir die Daten von NLU ab. Bei Frank scheint das nicht so zu sein. `
Hatte Frank nicht auch Variante B ??Kenn die Installation von Frank net so genau, aber meine VM hat eine "virtuelle" Soundkarte und würd vermutlich auch als "Satellit" bzw. "Client" laufen.
Hab leider nicht die Hardware da um das zu testen. Ich hab den Snips ohne "Soundkarte" gar nicht installiert bekommen ..
Ich habe Probleme mit meiner Client-Server Umgebung.
Auf dem Snips Server beleiben immer wieder die Services stehen. sam status zeigt "Idle".
Habe jetzt die Services wieder am laufen. Injects gehen aber wieder nicht.Connected to device localhost OS version ................... Debian GNU/Linux 9 (stretch) Installed assistant .......... ASSI-1 Language ..................... de Hotword ...................... hey_snips ASR engine ................... snips Status ....................... Live Service status: snips-analytics .............. 0.60.12 (not running) snips-asr .................... 0.60.12 (running) snips-audio-server ........... 0.60.12 (not running) snips-dialogue ............... 0.60.12 (running) snips-hotword ................ 0.60.12 (running) snips-nlu .................... 0.60.12 (running) snips-skill-server ........... 0.60.12 (not running) snips-tts .................... 0.60.12 (running)
sam watch bei inject:
[23:02:29] Watching on 127.0.0.1:1880 (MQTT) [23:02:35] [Injection] an injection of 1 words for 1 entities has been requested
@AndiM: Bei dier ist der Master mit einer Soundkarte ausgerüstet, richtig?
gehen bei dir die Injects wenn der audio-server gestoppt ist?Ist ein Audio-Server bei injects notwendig? Die Rückmeldung kommt ja von ASR und NLU.
Edit:
Habe ein USB Headset an der VM angeschlossen und den danach audio-server starten können.
Injects gehen auch bei laufendem audio-server nicht.Ich verstehe die Funktion des Eintrags im snips.toml auf dem Master immer noch nicht richtig:
Meldet man hiermit die Satteliten am Master an? (kitchen ist ein Sattelit)
[snips-audio-server]
bind = "kitchen@mqtt"
-
@frank70 sagte in [Aufruf] Adapter: Snips - Offline Speak2Text:
Ist ein Audio-Server bei injects notwendig?
Für die injects musst du lediglich den den Dienst installieren und sollte dann normalerweise laufen:
sudo apt-get install -y snips-injection
@frank70 sagte in [Aufruf] Adapter: Snips - Offline Speak2Text:
[snips-audio-server]
bind = "kitchen@mqtt"Du musst beim Audio Server immer den Namen des Satelliten eintragen.
[snips-common] mqtt = "YOUR_BASE_IP/HOST_NAME:1883"
Bei Snips Common deinen Server. Z.B. Server.fritz. box:1883
Kann es sein, dass du das Gerät evtl. neugestartet hast und die jeweiligen Server nicht neustarten?
-
@frank70 said in [Aufruf] Adapter: Snips - Offline Speak2Text:
Habe ein USB Headset an der VM angeschlossen und den danach audio-server starten können.
Injects gehen auch bei laufendem audio-server nicht.servus,
brauchst auch nicht ...
schau mal mit "sam service log" ob er nicht versucht irgend welche Dienste zu starten, was das System ausbremst, bzw. siehst damit auch warum er die Injects net schafft.Services welche er starten will aber nicht benötigt werden kannst übrigens mit:
sudo systemctl disable/enable snips-?????????.service
de- oder aktivieren.
lg