Ich möchte SofTalk von Python verwenden
Laden Sie SofTalk herunter Bitte laden Sie die neueste Version von der folgenden Seite herunter https://w.atwiki.jp/softalk/pages/15.html
Es gibt auch eine Möglichkeit, Softalk über die Befehlszeile zu verwenden, wie in der beiliegenden help.chm
beschrieben.
Entpacken Sie die DL-Zip
start ..\softalk\Softalk.exe
Dadurch wird SofTalk selbst gestartet und die folgenden Argumente stehen zur Verfügung
Schließt Argumente aus, die in Slow Voice nicht verfügbar sind (nur in Aquestalk 10 verfügbar).
Art | Wert | bewirken | Einzelheiten | Bemerkungen |
---|---|---|---|---|
/NM: | String | Sprachbezeichnung | Geben Sie die Stimme nach Namen an | Beispiel)/NM:Weiblich 01 |
/M: | 0~? | Geben Sie die Stimme anhand der Nummer an | ||
/PR: | String | Voreingestellte Spezifikation | Geben Sie die Voreinstellung nach Namen an | Beispiel)/PR:Grundeinstellung |
/N: | 0~? | Geben Sie die Voreinstellungen nach Nummer an | ||
/O: | 0~300 | Tonhöhe | 声のTonhöhe | Wenn Sie die Geschwindigkeit verringern, nimmt die Lesegeschwindigkeit nur ab, sodass möglicherweise kein großer Unterschied zur Geschwindigkeit besteht. |
/P: | lesen | lesen追加 | lesen(Hiragana),Wort,alles/Halbbreite unterscheiden(True/False) | Beispiel)/P:Tesuto,Test,True |
Aktualisieren Sie vorherige Wörter für registrierte Wörter | ||||
/Q: | 0~5 | Wie man liest | 0:Keine flache Pseudonymkonvertierung / keine Intonation | Für die ausgewählte Bibliothek einstellen |
1:Keine flache Pseudonymkonvertierung mit Intonation | ||||
2:Mit flacher Pseudonymkonvertierung ohne Intonation | ||||
3:Mit flacher Pseudonymkonvertierung / mit Intonation | ||||
4:Mit flacher Pseudonymumwandlung, ohne Intonation, mit leeren Ohren | ||||
5:Mit flacher Pseudonymumwandlung Ja, mit Intonation, mit Gesang | ||||
/R: | Aufzeichnung | 読み上げた文章のAufzeichnung | Beispiel)/R:c:\test.wav | |
/S: | 1~300 | Geschwindigkeit | 読み上げのGeschwindigkeit | |
/T: | 7~11 | Bibliotheksspezifikation | Spezifikation der Bibliothek (Engine) | Reimu langsam mit 0, Marisa Stimme langsam mit 1 |
7:AquesTalk | ||||
8:SAPI | ||||
9:Speech Platform | ||||
10:AquesTalk2 | ||||
11:AquesTalk10 | ||||
/U: | 0~? | Sprachbezeichnung | Geben Sie die Stimme aus der Bibliothek (Engine) an. | Für die ausgewählte Bibliothek einstellen |
/V: | 0~100 | Volumen | 声のVolumen | |
/W: | Satz | Satz | 読み上げたいSatz | このオプション以降の文字は全てSatzとみなす |
/X: | 0~1 | Bildschirmanzeige | 0:Anzeige 1:Ausblenden | Gültig nur beim Start beim Beenden/close |
/Z: | Pfad | XML-Ausgabe | Geben Sie eine spezifizierbare Stimme im XML-Format aus |
Es scheint nicht besonders schwierig zu sein, wenn Sie auf die Position von / W achten.
Es ist mühsam, jedes Mal über die Befehlszeile zu tippen Lassen Sie Python den Ärger machen
Wenn Sie einen Befehl in Python ausführen möchten, verwenden Sie das Unterprozessmodul [^ Unterprozess].
Ich wusste es nicht, bis ich diesen Artikel schrieb, aber es scheint, dass Sie `subprocess.run ()`
anstelle von subprocess.call ()
`in Python 3.5 oder höher verwenden sollten.
** Die empfohlene Methode zum Starten eines Unterprozesses ist die Verwendung der Funktion run (), die alle Verwendungen verarbeiten kann. ** Für eine erweiterte Verwendung können Sie auch die zugrunde liegende Popen-Oberfläche direkt verwenden. ** Die Funktion run () wurde in Python 3.5 hinzugefügt **; Wenn Sie die Kompatibilität mit früheren Versionen beibehalten möchten, lesen Sie den alten Abschnitt über API auf hoher Ebene.
yukkuri ├yukkuritest.py └softalk (dekomprimierter Ordner) └ SofTalk.exe
Stellen Sie sich eine Verzeichnisstruktur wie diese vor
Sie können die Befehle nach Leerzeichen auflisten und an die Funktion run () übergeben. Ich dachte ... aber anscheinend muss ich die Listen einmal mit einem Leerzeichen halber Breite kombinieren. In einfachen Worten sieht es also so aus:
yukkuritest.py
import os
import subprocess
os.chdir(os.path.dirname(os.path.abspath(__file__)))
_start = "start ..\\yukkuri\\softalk\\SofTalk.exe"
_speed = "/S:120"
_word = "/W:Guten Morgen"
_command = [_start, _speed, _word]
subprocess.run(' '.join(_command), shell=True)
Jetzt können Sie langsam Sprache von Python ausgeben
[^ Unterprozess]: Unterprozess --- Unterprozessverwaltung https://docs.python.org/ja/3/library/subprocess.html
Recommended Posts