Text to Speech unter Windows

Kann man so einen API Key nicht teilen? Die kosten doch nichts, oder?

Vielleicht könnte man sich auf ein Text Format einigen, in dem die Quellen vorliegen:

datei1.mp3|Text 1
datei2.mp3|Text 2
datei3.mp3|Text 3

usw.

Ja, unbedingt. Um ganz genau zu sein konvertiert ein Skript Thorstens Datei in „Dein“ Format, hier mache ich dann Änderungen. Ein zweites Skript benutzt diese Datei als Input für das Erstellen der Files.

1 „Gefällt mir“

Doch, ab einem bestimmten Volumen muss der Inhaber des Keys bezahlen…

OK, ist dann natürlich suboptimal

Ich habe die Powershell Skripte nun hier hochgeladen: https://github.com/ceear/Powershell.Text2Speech

Die sind noch nicht gut dokumentiert und es gibt ein paar Dinge zu beachten. Wäre gut, wenn ein Windows-User das mal (mit mir zusammen) testen könnte.

Grundsätzlich dient das Skript dazu Sprachdateien (MP3) mit verschiedenen Text-To-Speech Engines zu erstellen. Aktuell mit der Windows “Offline” Engine, Google TTS und Amazon Polly.
Für Google TTS und Amazon Polly werden entsprechende Konten/API-Keys benötigt.

  • Das eigentliche Skript ist Generate-Speech-Files.ps1

  • Es erwartet eine Datei speech.txt als Eingabedatei für die zu erzeugenden Texte.

  • Das Format der speech.txt ist so wie von stephan beschrieben : datei1.mp3|Text 1

  • Im oberen Breich von Generate-Speech-Files.ps1 können einige Anpassungen vorgenommen werden.
    ** $Basepath = "C:\temp\MySpeech" gibt den Zielordner der Sprachdateien an.
    ** Jede Speech-Engine kann mit $True / $False aktiviert oder deaktiviert werden.
    ** Für jede Sprach-Engine können die gewünschten Sprachen ausgewählt werden.

  • Windows-Sprach-Engine
    ** Wenn ihr das Skript mit dem Parameter Generate-Speech-Files.ps1 -ShowAvailableWinSpeechVoices startet, zeigt es die aktuell in Windows verfügbaren Stimmen an. Die sind von der Sprachversion abhängig, können aber nachinstalliert werden:Microsoft
    ** $GenerateWinSpeechVoice="Microsoft Hedda Desktop" Definiert dann die Stimmen. Hedda scheint eine Standardstimme zu sein. Hier können auch mehrere Stimmen angegeben werden ="Stimme1","Stimme2",...
    ** Die Windows Engine erzeugt WAV Dateien. Ich verwende FFMPEG für die Konvertierung zu MP3. Unter $FFMPEGPath = "C:\windows\system32\ffmpeg.exe" muss der Path zu FFMPEG eingetragen werden. Download z.B. hier : FFMPEG

  • Google TTS
    ** API-KEY erstellen Link und unter $GoogleAPIToken eintragen. die anderen Parameter sind im Skript dokumentiert.

  • Amazon Polly
    ** Hier verwende ich die Amazon Powershell Module. Link
    ** Auch hierfür benötigt man einen Amazon-Account
    ** Einrichtung: Anleitung

4 „Gefällt mir“

Respekt! Das ist ein großer Schritt nach vorne, danke fürs teilen! Bin gespannt wie das Feedback ist, wenn das die ersten mutigen Tester ausprobiert haben. :ok_hand:t2:

Hallo zusammen,
könnte mir einer mit der Google Stimme wie im aktuellen repo sieben Dateien erzeugen, es geht hierbei um die Menüerweiterung für das Ambilight in meiner neuen Box?

Folgender text wird benötigt, Nummerierung ist egal:
Bitte wähle eine Farbe aus
keine, das Licht bleibt aus
rot
gelb
grün
blau
weiss
rosa

Hat sich noch kein Windows User gefunden, der mal das Script von @Christian testen möchte? Welches Windows braucht man da eigentlich? Funktioniert das unter 7 oder braucht man unbedingt 10?

Ich werde das am WE mal ausprobieren. Habe Windows 10.
Wollte eigentlich noch auf Thorstens neue Firmware warten, weil es da ja sicherlich neue Sätze geben wird.

@Christopher wie hier im Forum schon beschrieben, gibt es eine Android-App (T2S), mit der man recht einfach Wörter / Sätze aus verschiedenen Quellen als .wav speichern kann.
Mit dem VLC Player habe ich dann MP3s draus gemacht.

Das schöne ist ja, man muss nicht mehr warten. Der Plan ist ja, dass das „mal eben so“ geht. :slight_smile:

So, hab das Skript mit der MS Hedda ans laufen bekommen. Brauchte aber die Hilfe von hier:


Konnte das Skript wegen Restriktionen und fehlender Admin Rechte nicht ausführen.
Respekt läuft super. Zusätzlich zu den gewünschten Dateien, wurde noch 0001.mp3 und 0002.mp3 erzeugt und die Zahlen eins und zwei angesagt.

Die Google Stimme hab ich bisher leider nicht ans laufen bekommen, Hedda gefällt mir auf jeden Fall nicht.

Gruß
Papa

2 „Gefällt mir“

So, hab mich durch die Google Cloud gekämpft und einen API Key erzeugt. Hab ein Guthaben von 264,71 € erhalten, damit dürften sich einige Texte erzeugen lassen.

Key eingetragen, Skript läuft. Hat direkt alle Files 4 Mal erzeugt, de-DE-Wavenet-A bis de-DE-Wavenet-D. Welche hat Thorsten verwendet?

Danke!

@Christopher
Hier deine Dateien: https://transfer.pcloud.com/download.html?code=5ZfRkP7ZvUUO7nlBU5BZYVGhZcfSwdhJh6i5ngx0nF1Cgwb5a4uey

4 „Gefällt mir“

Super vielen Dank werde sie mir heute Abend gleich ziehen :+1:

Sollte ab Powershell 5 laufen, welches man unter Windows 7 evtl. nachinstallieren müsste.

Vielen Dank für die positive Rückmeldung! Eigentlich sollten ja die Zahlen 1-255 erzeugt werden. Ich hatte das im Script aber vorerst auf 1-2 beschränkt. Könnt ihr in der Zeile 43 abändern. Aus
1..2 | % {
wird
1..255 | % {
Dann sollte es vollständig sein.

Super cool! Das mit dem Startguthaben wusste ich gar nicht.

Johannes / Thorsten hat „de-DE-Wavenet-C“ benutzt.

die Generierung der Dateien hat sowohl für Windows als aus für Google grundsätzlich funktioniert. Allerdings wenn ich versuche sie abzuspielen kommt kein Ton. Egal mit welchem Player. Das trifft aber auf die original Tonuino files auch zu. Was mache ich falsch?

edit: mit VLC ging es jetzt … scheint aber generell dann ein komischer codec zu sein …

Also bei mir laufen die in jedem Player. Sind mit 32kbit/s mono codiert.

Ah ja, Danke für den Hinweis. Jetzt macht es Sinn :slight_smile: