Getestet mit:RPi3; Google AIY voice HAT v1
Bauteile:Google AIY voice HAT mit zusaetzlichem MAX 98357A DAC
Ghettoblaster, Werkzeug
RPi3 mit Peripheriegeraeten
0

Ghettoblaster mit Sprachsteuerung Google AIY voice HAT


Dank eines defekten Mini-Ghettoblasters eines Freundes konnte ich einen Prototypen fuer eine intelligente, tragbare Stereoanlage basierend auf dem Google AIY voice HAT und einem Raspberry Pi 3 basteln. Dabei benoetigt die Sprachsteuerung eine Internetverbindung fuer den Zugriff auf Youtube mit dem komfortablem MPS-Youtube und funktioniert gut mit englischen Liedern, jedoch leider nicht gut mit anderssprachigen Titeln und Phantasienamen.
Vielen Dank an mikerr fuer das Codebeispiel im RaspberryPi.org Forum!

Aufbau
Zuerst muss der Google AIY voice HAT um einen Stereo-Audioausgang erweitert werden, siehe Tutorial
Google AIY voice HAT mit Stereosound. Danach habe ich mit einem Dremel so lange herumgejuckelt, bis der Raspberry Pi nebst HAT herein passte:

Ghettoblaster Teile

Ghettoblaster Teile

Dabei ist ein kleines Schaumpolster auf den Lautsprecher, um die Schwingungen zum Raspberry Pi zu daempfen. Der fertige Prototyp muss mit Vorsicht behandelt werden:
Ghettoblaster Prototyp

Ghettoblaster Prototyp

Installation
Befolge zur Installation der Software die Aufbauanleitung von Google. Gib dann im Terminal ein

und ersetze die Zeile

durch

Fuehre nun die folgenden Schritte durch:

Dabei muss in /home/pi eine Datei assistant.json liegen, wie es in der verlinkten Installationsanleitung von Google erklaert wird.

Ghettoblaster starten
Starte den intelligenten Ghettoblaster mit

Oeffne den im Terminal ausgegebenen Aktivierungslink in einem Browser und kopiere den dort angezeigen Authentifizierungscode in das Terminal. Sage Ok Google und anschliessend play Bob Marley, um ein Lied abzuspielen. Um das Lied zu stoppen, sage Ok Google, dann stop.
Um den Ghettoblaster mobil nutzen zu koennen, muss aiy_music_player.py automatisch gestarted werden, beispielsweise mit einem Eintrag in der .bashrc. Ausserdem benoetigt es ein Mobiltelephon mit einem Wireless Access Point (WAP), welches in in der Datei wpa_supplicant.conf auf dem Raspberry Pi einzutragen ist.

Code erklaert
In der Funktion process_event werden Sprachbefehle definiert. Der Sprachbefehl play fuehrt die Funktion play aus, in der zuerst der auf Youtube zu suchende track extrahiert und dann an einen Terminalprozess von mpsyt uebergeben wird:

ToDo

  • LiIon Akku einbauen
  • Sprachbefehle fuer naechstes und vorheriges Lied
  • Drucktaster anschliessen fuer An/Aus, Lauter/Leiser ect.
  • Smartphone Audiostreaming
  • Lokale Youtube Playlists ansteuern
  • andere Sprachen?
  • einheitliches Soundvolumen

Gesamtes Script
Klicke auf Ganzes Script um das ganze Programm anzuzeigen.

Links
Google AIY voice Installationsanleitung: https://aiyprojects.withgoogle.com/voice/
GitHub MPS-Youtube: https://github.com/mps-youtube/mps-youtube
mikerr Post im RaspberryPi Forum: https://www.raspberrypi.org/forums/viewtopic.php?f=114&t=182665
Tutorial Google AIY voice HAT mit Stereosound: http://www.knight-of-pi.org/de/raspberry-pi-und-google-aiy-voice-hat-stereo-audio-mit-dem-max-98357a-dac/

Knight of Pi

Johannes Bergs aka Knight of Pi. Diploma in Bioinformatics, some Webdesign and Python coding then. Living in the beautiful city of Vienna.

Kommentar

Time limit is exhausted. Please reload CAPTCHA.