[PYTHON] Sprechen Sie vom Code auf dem Mac (eSpeak, OpenJTalk)

Es war wirklich einfach vorzustellen. Homebrew Danke.

espeak: Englisch

Installieren und ausführen

$ brew install espeak
$ espeak "hello world"

open-jtalk: Japanisch

Installation

$ brew install open-jtalk

Das allein Auch die Wörterbuchdatei (/usr/local/Cellar/open-jtalk/1.10_1/dic/) Eine Sprachdatei (/usr/local/Cellar/open-jtalk/1.10_1/voice/) ist ebenfalls enthalten.

Lauf

Frauenstimme: mei_normal.htsvoice

$ echo "Ich bin eine Katze. Es gibt noch keinen Namen. Ich habe keine Ahnung, wo ich geboren wurde. Ich erinnere mich, wie ich an einem dunklen und feuchten Ort geweint habe. Ich habe hier zum ersten Mal Menschen gesehen." > sample.txt
$ open_jtalk \
-x /usr/local/Cellar/open-jtalk/1.10_1/dic \
-m /usr/local/Cellar/open-jtalk/1.10_1/voice/mei/mei_normal.htsvoice \
-ow out.wav sample.txt
$ afplay out.wav

Männerstimme: nitech_jp_atr503_m001.htsvoice

$ open_jtalk \
-x /usr/local/Cellar/open-jtalk/1.10_1/dic \
-m /usr/local/Cellar/open-jtalk/1.10_1/voice/m100/nitech_jp_atr503_m001.htsvoice \
-ow out.wav sample.txt
$ afplay out.wav

Laufen Sie von Python. Erstellen und speichern Sie die folgende jtalk.py.

jtalk.py


# coding: utf-8
import subprocess
from datetime import datetime

def jtalk(t):
    open_jtalk = ['open_jtalk']
    mech = ['-x', '/usr/local/Cellar/open-jtalk/1.10_1/dic']
    htsvoice = ['-m', '/usr/local/Cellar/open-jtalk/1.10_1/voice/mei/mei_normal.htsvoice']
    speed = ['-r', '1.0']
    outwav = ['-ow', 'out.wav']
    cmd = open_jtalk + mech + htsvoice + speed + outwav
    c = subprocess.Popen(cmd, stdin=subprocess.PIPE)
    c.stdin.write(t)
    c.stdin.close()
    c.wait()
    aplay = ['afplay', 'out.wav']
    wr = subprocess.Popen(aplay)

def say_datetime():
    d = datetime.now()
    text = '%s Monat%s Tag,%s Zeit%s Minuten%s Sekunden' % (d.month, d.day, d.hour, d.minute, d.second)
    jtalk(text)

if __name__ == '__main__':
    say_datetime()
$ python jtalk.py

Wird als Python-Modul verwendet

$ python
>>> import jtalk
>>> jtalk.jtalk ("Roseis Richou wurde in jungen Jahren nach der Gelehrsamkeit Saiei, dem himmlischen Schatz Matsunen und Kobo benannt und dann von Kounani ergänzt.")

Referenz: http://qiita.com/kkoba84/items/b828229c374a249965a9

Recommended Posts

Sprechen Sie vom Code auf dem Mac (eSpeak, OpenJTalk)
OpenJTalk unter Windows 10 (Sprechen Sie Japanisch mit Python aus der Umgebungskonstruktion)
Rufen Sie C / C ++ von Python auf dem Mac auf
Aktualisieren Sie Mac Python von 2 auf 3
Installieren Sie PostgreSQL aus dem Quellcode unter CentOS
Python auf Mac
Einstellungen zum Generieren animierter GIFs aus Python auf dem Mac
Lesen Sie den QR-Code aus der Bilddatei mit Python (Mac).