Sprachausgabe mit MaryTTS
MaryTTS ist eine Open-Source-Plattform für die mehrsprachige Text-zu-Sprache-Synthese.
Mit diesem Objekt läßt sich sehr unkompliziert eine Sprachausgabe realisieren.
Benötigt
Für das JayMo-Objekt und den Zugriff auf die externe Bibliothek wird benötigt:
- lib-ext.jar (für Patreons)
- Ein paar Bibliotheken vom MaryTTS-Projekt: http://mary.dfki.de/download/index.html
Auf der Download-Seite das Runtime-Package (Version 5.2, Stand 04/2020) herunterladen. In diesem Zip finden sich die folgenden benötigten Dateien:
/lib/marytts-client-5.2-jar-with-dependencies.jar | |
/lib/marytts-runtime-5.2-jar-with-dependencies.jar | |
/lib/marytts-lang-de-5.2.jar | Für deutsche Sprachausgabe |
/lib/marytts-lang-en-5.2.jar | Für englische Sprachausgabe |
/lib/voice-cmu-slt-hsmm-5.2.jar | Standard-Stimme |
Ggf. weitere "lang"-Dateien, für andere Sprachen.
All diese Dateien müssen im JayMo-Verzeichnis abgelegt werden.
Zudem muss im JayMo-Verzeichnis ein Verzeichnis "marytts" erstellt werden, in dem Log-Dateien und die Voice-MRY-Daten (siehe: weitere Sprachen) abgelegt werden.
Der Java-Aufruf in der JayMo-Startdatei "jmo" oder "jmo.bat" muss noch folgende Option enthalten (Pfad bitte anpassen):
-Dmary.base=/usr/local/lib/jmo/marytts/
Konstruktor
MaryTTS()
MaryTTS(Str voice)
Wichtige Funktionen
|
Spricht diesen Text und wartet bis zum Abschluss |
|
Spricht diesen Text in einem eigenen Prozess |
|
Erzeugt eine Tabelle mit allen verfügbaren Stimmen |
|
Setzt eine Stimme |
Beispiel
MaryTTS.say("Hello World!")
Oder etwas ausführlicher:
mary = MaryTTS( "cmu-slt-hsmm" )
mary.say( "Hello!" )
mary.say( "How are you?" )
Weitere Sprachen
Im Zip ist nur eine sehr einfache englische Stimme enthalten.
Es lassen sich vom MaryTTS-Projekt aber weitere Stimmen herunterladen. Hierzu muss das heruntergeladene Zip komplett entpackt werden und im Verzeichnis "/bin" der Installer gestartet werden:
marytts-component-installer
Damit können nun verschiedene "Languages" und "Voices" heruntergeladen werden. Auf der linken Seite die entsprechende Sprache auswählen und rechts die gewünschte Stimme dazu. Die "hsmm"-Stimmen sind sehr einfache Stimmen mit wenig Speicherbedarf. Bitte die jeweiligen "Details" anschauen, denn eine Sprachdatei kann mehrere 100 Megabyte groß sein.
Meine Empfehlung für die deutsche Sprachausgabe ist: "dfki-pavoque-neutral"
Die heruntergeladenen Dateien befinden sich in den Verzeichnissen /lib und /self_voices/lib. Der Inhalt von /lib/voices und /self_voices/lib/voices muss in das JayMo-Verzeichnis nach /marytts/lib/voices kopiert werden.
Anmerkungen
Beim Erzeugen des ersten MaryTTS-Objekts wird im Hintergrund der TTS-Server gestartet. Dies dauert etwas.