Raspberry Pi Text-to-Speech mit natürlichen Stimmen
Ein sprechender Raspberry Pi macht aus einer Bastelei etwas, das die ganze Familie nutzt: eine Türklingel, die Gäste begrüßt, das Wetter jeden Morgen, ein Sensor, der nach Wasser für die Pflanzen ruft, ein Quiz für Kinder. Die üblichen Pi-Stimmen, espeak-ng und pico2wave, sind schnell installiert, klingen aber roboterhaft.
Die kostenlose SuperClonica-Engine gibt dem Pi natürliche neuronale Stimmen in 31 Sprachen. Dieser Leitfaden zeigt drei Wege, sie zu nutzen, von vorab vertonten Dateien bis zur Engine auf dem Pi selbst, und sagt ehrlich, welcher zu welchem Projekt passt.
Drei Wege, einen Pi sprechen zu lassen
Sagt Ihr Projekt nur wenige feste Sätze, genügen vorab vertonte Dateien.
- Vorab vertonte Dateien: Sätze am Computer vertonen, auf den Pi kopieren und mit aplay abspielen. Der schnellste und zuverlässigste Weg.
- Ein Server im Netz: Ein PC oder Heimserver betreibt das Docker-Image, der Pi schickt Text und spielt die Antwort ab. Neuer Text jederzeit.
- Die Engine auf dem Pi: Das Python-Paket lässt sich auf einem Pi 4 oder Pi 5 mit 64-Bit-System installieren. Langsamer, aber komplett offline auf einer Platine.
- Die Stimmen sprechen 31 Sprachen; Chinesisch wird noch nicht unterstützt.
Die Stimmen gratis anhören
Geben Sie auf der Seite einer beliebigen Stimme einen Satz ein, den Ihr Pi sagen soll, 30 bis 100 Zeichen, wählen Sie die Sprache und klicken Sie auf die Schaltfläche zum Vertonen. In wenigen Sekunden hören Sie, wie Ihr Projekt klingen wird, und können die Datei herunterladen, ohne Konto.
Einen Server im Heimnetz fragen
Lassen Sie den Server im Heimnetz oder hinter einem VPN und öffnen Sie ihn nie ohne Schlüssel ins Internet.
- Starten Sie auf einem PC oder Heimserver mit Docker den Server: docker run -d -p 8000:8000 -v superclonica-models:/models superclonica/superclonica:cpu. Das Image ist für x86-64-Prozessoren gebaut und läuft daher nicht auf dem Pi selbst.
- Auf dem Pi fragen Sie ihn und spielen die Antwort ab: curl -s -X POST http://192.168.1.20:8000/synthesize -H "Content-Type: application/json" -d '{"text": "Die Pflanzen brauchen Wasser.", "voice": "F1", "lang": "de"}' -o /tmp/say.wav && aplay /tmp/say.wav
- Setzen Sie SUPERCLONICA_API_KEY auf dem Server und ergänzen Sie die Anfrage um -H "Authorization: Bearer IHR-SCHLÜSSEL".
- Ein kurzer Satz dauert auf einem normalen Desktop-Prozessor deutlich unter einer Sekunde, plus die Zeit im Netzwerk.
Die Engine auf dem Pi selbst
Legen Sie auf einem 64-Bit-Raspberry-Pi-OS zuerst eine virtuelle Umgebung an, denn das System-Python verweigert Installationen per pip: python3 -m venv ~/tts, dann ~/tts/bin/pip install superclonica-cpu. Anschließend vertonen und abspielen: ~/tts/bin/superclonica --text "Guten Morgen! Zeit fürs Frühstück." --voice F1 --lang de --output hello.wav && aplay hello.wav. Beim ersten Start wird das Modell geladen, etwa 385 MB. Alle Bibliotheken der Engine gibt es für den 64-Bit-ARM-Prozessor des Pi, aber wir haben die Geschwindigkeit auf einem Pi nicht gemessen: Rechnen Sie mit einem Vielfachen der Zeit eines Desktops, und vertonen Sie wiederkehrende Sätze einmal und speichern Sie die Dateien.
Projekte, die sprechen
Ein Cronjob kann jeden Morgen das Wetter oder den Kalender vorlesen, ein Bewegungsmelder Eintretende begrüßen und ein Knopf den Kindern einen zufälligen Witz erzählen. Für ein Projekt, das Sie verkaufen oder öffentlich zeigen, nehmen Sie eine Stimme, an der Sie die Rechte haben: die zehn Standardstimmen des Modells, M1 bis M5 und F1 bis F5, oder Ihre eigene im SuperClonica-Studio trainierte Stimme aus der Aufnahme eines Sprechers, der zugestimmt hat. Figurenstimmen aus dem Katalog sind von Fans gemacht und passen zu privaten Basteleien.