Je souhaite utiliser SofTalk de Python
Télécharger SofTalk Veuillez télécharger la dernière version à partir de la page suivante https://w.atwiki.jp/softalk/pages/15.html
Il existe également un moyen d'utiliser Softalk à partir de la ligne de commande, comme décrit dans le fichier help.chm
inclus.
Décompressez le zip DL
start ..\softalk\Softalk.exe
Cela lancera SofTalk lui-même et les arguments suivants seront disponibles
Exclut les arguments qui ne sont pas disponibles dans Slow Voice (uniquement disponible dans Aquestalk 10)
type | valeur | effet | Détails | Remarques |
---|---|---|---|---|
/NM: | Chaîne | Désignation de la voix | Spécifiez la voix par son nom | Exemple)/NM:Femme 01 |
/M: | 0~? | Spécifiez la voix par numéro | ||
/PR: | Chaîne | Spécification préréglée | Spécifiez le préréglage par nom | Exemple)/PR:Réglage initial |
/N: | 0~? | Spécifiez les préréglages par numéro | ||
/O: | 0~300 | Pas | 声のPas | Si vous la réduisez, la vitesse de lecture ne fera que diminuer, il se peut donc qu'il n'y ait pas beaucoup de différence avec la vitesse. |
/P: | en train de lire | en train de lire追加 | en train de lire(Hiragana),mot,tout/Distinguer la demi-largeur(True/False) | Exemple)/P:Tesuto,Test,True |
Mettre à jour les mots précédents pour les mots enregistrés | ||||
/Q: | 0~5 | Comment lire | 0:Pas de conversion de pseudonyme à plat / pas d'intonation | Définir pour la bibliothèque sélectionnée |
1:Pas de conversion de pseudonyme à plat, avec intonation | ||||
2:Avec conversion de pseudonyme plate, sans intonation | ||||
3:Avec conversion de pseudonyme plate / avec intonation | ||||
4:Avec conversion de pseudonyme à plat, sans intonation, avec des oreilles vides | ||||
5:Avec conversion de pseudonyme à plat Oui, avec intonation, avec chant | ||||
/R: | enregistrement | 読み上げた文章のenregistrement | Exemple)/R:c:\test.wav | |
/S: | 1~300 | la vitesse | 読み上げのla vitesse | |
/T: | 7~11 | Spécification de la bibliothèque | Spécification de la bibliothèque (moteur) | Reimu lentement avec 0, Marisa voix lentement avec 1 |
7:AquesTalk | ||||
8:SAPI | ||||
9:Speech Platform | ||||
10:AquesTalk2 | ||||
11:AquesTalk10 | ||||
/U: | 0~? | Désignation de la voix | Spécifier la voix de la bibliothèque (moteur) | Définir pour la bibliothèque sélectionnée |
/V: | 0~100 | Le volume | 声のLe volume | |
/W: | Phrase | Phrase | 読み上げたいPhrase | このオプション以降の文字は全てPhraseとみなす |
/X: | 0~1 | Écran d'affichage | 0:Affichage 1:Cacher | Valable uniquement au démarrage, à la sortie/close |
/Z: | chemin | Sortie XML | Sortie de voix spécifiable au format XML |
Cela ne semble pas particulièrement difficile si vous faites attention à la position de / W.
C'est un problème de taper à partir de la ligne de commande à chaque fois Laissez Python faire les tracas
Lorsque vous souhaitez exécuter une commande depuis Python, utilisez le module de sous-processus [^ subprocess]
Je ne le savais pas avant d'écrire cet article, mais il semble que vous devriez utiliser
subprocess.run () '' au lieu de
subprocess.call () '' `` dans Python 3.5 ou version ultérieure.
** La méthode recommandée pour démarrer un sous-processus est d'utiliser la fonction run (), qui peut gérer toutes les utilisations. ** Pour une utilisation plus avancée, vous pouvez également utiliser directement l'interface Popen sous-jacente. ** La fonction run () a été ajoutée dans Python 3.5 **; Si vous avez besoin de maintenir la compatibilité avec les versions précédentes, consultez l'ancienne section API de haut niveau.
yukkuri ├yukkuritest.py └softalk (dossier décompressé) └ SofTalk.exe
Imaginez une structure de répertoires comme celle-ci
Vous pouvez lister les commandes par espace et les transmettre à la fonction run (). J'ai pensé ... mais apparemment, je dois combiner les listes une fois avec un espace demi-largeur. Donc, en termes simples, cela ressemble à ceci:
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:Bonjour"
_command = [_start, _speed, _word]
subprocess.run(' '.join(_command), shell=True)
Vous pouvez maintenant émettre lentement la voix de Python
[^ subprocess]: subprocess --- Gestion des sous-processus https://docs.python.org/ja/3/library/subprocess.html
Recommended Posts