Text zur Sprachruhe -API für mehrere TTS -Motoren.
Sie können einen Text senden, der mit verschiedenen TTS -Motoren und Soundeffekten in Audio konvertiert werden soll. Anschließend hören Sie es auf Ihrem lokalen Audio -Gerät an oder empfangen die resultierende Audiodatei.
Zunächst sollten Sie die unterstützten TTS -Motoren installieren:
apt install python3 sox libsox-fmt-mp3
pip install google_speechapt install python3 sox libsox-fmt-mp3
pip install gTTSapt install festival festvox-ellpc11kapt install espeak Sie müssen auch NodeJs und NPM installieren und dann einfach npm install und npm start . Die API sollte jetzt unter http://localhost:3000 ausgeführt werden.
Oder Sie können nur Pedroetb/TTS-API Docker- Bild verwenden, das bereits alle Abhängigkeiten konfiguriert hat.
Die einzige Anforderung ist, Docker installieren zu lassen. Dann können Sie rennen:
docker run --rm -d --name tts-api --device /dev/snd -p 3000:3000 pedroetb/tts-api Die API wird ausgeführt und unter http://localhost:3000 zugänglich.
Alternativ können Sie es in einem Docker Swarm -Cluster mit docker compose (bereits in Docker enthalten, wenn Sie die moderne Version verwenden) und docker swarm (Swarm Cluster erstellen) bereitstellen:
cd deploy
# Deploy Caddy service
env $( grep -v ' ^[#| ] ' .env | xargs )
TRAEFIK_DOMAIN=change.me
docker stack deploy
-c compose.caddy.yaml
tts-api
# Run TTS-API container
docker compose
-f compose.tts-api.yaml
-p tts-api
up -d Der Dienst ist bereit, mit Traefik umgekehrt zu sein und bei tts.${TRAEFIK_DOMAIN} Domain. Wie man Traefik ausführt, wird hier nicht beschrieben. Überprüfen Sie die offizielle Website.
Der Proxy benötigt eine kleine Hilfe von Caddy , da Docker Swarm nicht mit der Konfiguration der Geräte (für die Verwendung von Klangfunktionen erforderlich ist) kompatibel ist und Traefik nicht mit Docker -Containern und Docker Swarm -Diensten auf einmal arbeiten kann. Auf diese Weise wird nur der Caddy- Service mit TRAEFIK und tts-api Container ausgesetzt, der nur durch umgekehrte Proxy von Caddy zugänglich ist (gleichermaßen, wie Traefik zu Caddy umgekehrt ist).
Sowohl Docker Container als auch Service können auf verschiedenen Hosts ausgeführt werden, da sie in der Lage sind, über ein Docker -Overlay -Netzwerk zu kommunizieren. Führen Sie tts-api -Docker-Container auf Host aus, der Sprecher hat, damit Sie Rede hören können.
Vergessen Sie nicht, vor der Bereitstellung die Umgebungsvariable TRAEFIK_DOMAIN zu bearbeiten.
Beim Ausführen erhält die API Postanfragen unter http://localhost:3000 . Sie können mit Ihrem bevorzugten Rast-Client eine Anfrage senden oder das integrierte Formular verwenden.
Beide Modi (Abspielen oder Herunterladen von Audio) sind mit verschiedenen Sprachcodes verfügbar. Wählen Sie eine entsprechend Ihren Anforderungen aus.
Gehen Sie mit Ihrem Browser zu http://localhost:3000 , füllen Sie das Formular mit Daten aus und senden Sie es. Genau das.
Sie können eine Postanforderung an http://localhost:3000 nach diesem Schema senden:
application/json{ "voice": "google_speech", "textToSpeech": "hello world", "language": "en", "speed": "1" } Zum Beispiel mit curl :
# Play audio
curl http://localhost:3000
-d ' { "voice": "google_speech", "textToSpeech": "hello world", "language": "en", "speed": "1" } '
-H ' Content-Type: application/json '
# Download audio file
curl http://localhost:3000
-d ' { "voice": "gtts_file", "textToSpeech": "hello world", "language": "en", "speed": "1" } '
-H ' Content-Type: application/json '
-o ' output.mp3 ' Google Sprache ist ein einfaches Multiplattform -Befehlszeilen -Tool zum Lesen von Text mit Google Translate TTS (Text to Sprache) -API.
Sie müssen online sein, um mit Google -Servern zu kommunizieren.
Erfahren Sie mehr unter https://github.com/desbma/googlespeech
Google Text-to-Speech (GTTS) ist eine Python-Bibliothek und eine CLI-Tool, die mit der Text-to-Speech-API von Google Translate mitgeführt wird.
Sie müssen online sein, um mit Google -Servern zu kommunizieren.
Weitere Informationen finden Sie unter https://github.com/pndurette/gtts
Festival ist eine kostenlose Software-Multi-Lingual-Sprach-Synthese-Workbench, die auf mehreren Plattformen mit schwarzem Box-Text für die Sprache sowie einer offenen Architektur für die Forschung in der Sprachsynthese ausgeführt wird.
Es funktioniert offline.
Weitere Informationen finden Sie unter http://www.cstr.ed.ac.uk/projects/festival/ und http://festvox.org/festival/
Espeak ist ein kompakter Open -Source -Software -Sprachsynthesizer für Englisch und andere Sprachen für Linux und Windows.
Es funktioniert offline.
Erfahren Sie mehr unter http://espeak.sourceforge.net/
Dieses Projekt wird unter der MIT -Lizenz veröffentlicht.