Text2Speech – Sprachausgabe auf dem Raspberry

In einigen Situation kann es sinnvoll sein Ereignisse durch eine Sprachausgabe zu visualisieren. In diesem Beitrag erkläre ich euch, wie die Grundlagen für eine Sprachausgabe auf einem Raspberry und unter FHEM realisiert werden. Zuständig für die Sprachausgabe ist das Modul „Text2Speech„.

Vorbereitungen

Damit die Sprachausgabe ordnungsgemäß funktioniert, sind einige Vorbereitungen zu treffen. Neben der eigentlichen Definition unter FHEM ist es auch notwendig zwei Pakete auf dem Raspberry zu installieren.

Vorbereitungen auf dem Raspberry

Damit der Raspberry die gewünschte Sprachausgabe auch abspielen kann, ist ein Mediaplayer notwendig.

Bevor der Mediaplayer etwas über den Audioausgang ausgeben darf, müssen noch entsprechende Rechte vergeben werden.

Es öffnet sich der Editor. Am Ende der Datei muss nun folgende Zeile eingefügt werden.

ACHTUNG: Am Ende der Datei muss noch mindestens eine freie Zeile vorhanden sein. Mehr Infos auf ubuntuusers. Ein Dank an Martin für den Hinweis.

visudo Raspberry

Für eine flüssige Sprachausgabe ist es sinnvoll noch folgendes Paket zu installieren. Bei sich widerholenden Sprachbausteinen wird die Sprachausgabe nun flüssiger.

Zum Schluss noch schnell herausfinden welche Audioausgabequellen verfügbar sind. Dazu folgenden Befehl eingeben.

Man erhält nun eine Liste aller verfügbaren Ausdigeräten.

aplay Raspberry

Wie man in der Lister erkennt, befindet sich unter Karte 0 und Gerät 0 der Audioausgang. Diese Infos benötigt man später für Definition unter FHEM.

Vorbereitungen unter FHEM

Unter FHEM kann nun das eigentliche Modul für die Sprachausgabe definiert werden.

Der Zusatz „hw=0.0“ gibt die Ausgabequelle an. In diesem Fall Karte 0 und Gerät 0.

Damit das Zusatzmodul „mp3wrap“ verwendet wird, muss noch folgendes Attribut gesetzt werden:

Text2Speech FHEM

Sprachausgabe testen

Nach der Einrichtung kann die Sprachausgabe nun getestet werden.

Diese Sprachausgabe lässt sich natürlich auch mit anderen Ereignissen verbinden. Zum Beispiel eine Sprachausgabe bei eingehenden Anrufen. Mehr dazu in meinem Blog-Beitrag.

5 Kommentare zu “Text2Speech – Sprachausgabe auf dem Raspberry

  1. Hallo Daniel, ich bitte um deine Hilfe. Habe alles so gemacht wie beschrieben. Als ich dann die in der sudoers  im /etc ordner mit chmod die rechte auf 777 setzte um „sudo aptget install mp3wrap“ einzufügen hatte ich danach keinen Zugriff mehr, weder per ftp noch per terminal.

    Vielen Dank vorab!!!! Gruss Martin

    • meine natürlich „ALL ALL = NOPASSWD: /usr/bin/mplayer“ einzufügen!

    • Hallo Martin,
      um den Eintrag „ALL ALL = NOPASSWD: /usr/bin/mplayer“ hinzuzufügen, reicht es doch aus die Datei über „sudo visudo“ zu öffnen, eigentlich muss man keine Rechte über chmod setzen oder so. Das ist ja dann eine dauerhafte Rechtevergabe. Denke da wurde dann irgendwas zerschossen durch die Rechtevergabe über chmod. Am besten den Raspberry mal über Tastatur und Bildschirm anschließen und steuern und versuchen zu schauen, was dort nun für Rechte vergeben wurden.

      Gruß Daniel

  2. Hallo Daniel, danke für deine Antwort. Habe nach langem Kampf den Raspi neu aufgesetzt. Auf meiner Suche nach einer Antwort bin ich unter anderem auch auf das gestossen: https://wiki.ubuntuusers.de/sudo/Konfiguration/

    Da steht im roten Kästen explizit: „Die letzte Zeile der Sudoers-Datei muss zudem immer leer sein! Bei der direkten Bearbeitung ohne Prüfung kann der kleinste Tippfehler dazu führen, dass man sich aus dem System aussperrt und nur über den Recovery Modus wieder Zugang erhält. Es ist dabei korrekt, die Änderung in sudoers.tmp zu speichern, denn visudo überprüft nun die Syntax und man hat die Möglichkeit, Fehler zu korrigieren.“

    Du schreibst:

    1
    2

    EDITOR=nano
    sudo visudo

    „Es öffnet sich der Editor. Am Ende der Datei muss nun folgende Zeile eingefügt werden.“
    Aber egal, es läuft alles wieder. Ich sehe es als Training an 😉
    Deine Seite gefällt mir trotzdem sehr gut! 😉

    • Hallo Martin,

      vielen Dank für den Hinweis. Dann hatte ich wohl einfach Glück, dass bei mir noch eine freie Zeile vorhanden war. Habe den Beitrag entsprechend ergänzt. Und Sorry, dass du es so „schmerzhaft“ herausfinden musstest. Aber wie du schon sagst, aus Fehlern lernt man 😉

      Gruß Daniel

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Hinweis: Das Betreiben dieser Homepage kostet einiges an Zeit und Geld. Ich bitte euch deswegen von eigenen Affiliate-Links abzusehen. Vielen Dank.

*