音声生成(speech synthesis)をします。
その中でも、文章から音声を作るテキスト音声合成(TTS:Text-To-Speech)をします。
ちゃんとやるのはまた今度で、音声合成モデルを用いたライブラリを使って試すだけです。
gTTS
googleが提供しているGoogle Text-to-SpeechというAPIを用いて音声を生成します。
従って動作にはインターネット環境が必要です。
gTTSのインストールにはpipを用います。
1 |
pip install gTTS |
実行はこんな感じです。簡単ですね。
言語を指定することができます。
1 2 3 4 5 6 7 8 |
from gtts import gTTS import os text = "メールが届きました" tts = gTTS(text=text, lang="ja") # 日本語 tts.save("temp.wav") os.system("temp.wav") |
pyttsx3
PC内の音声合成モデルを用いてテキストから音声を生成します。
pyttsx3のインストールにはpipを用います。windowsの場合はpypiwin32を追加でインストールする必要があるみたいです。
1 2 |
pip install pyttsx3 pip install pypiwin32 |
実行はこんな感じです。
私のwindowsだとデフォルトで日本語が割り当てられてました。
1 2 3 4 5 |
import pyttsx3 engine = pyttsx3.init() engine.say('メールが届きました') engine.runAndWait() |
使える言語は下のコードで分かります。
1 2 3 4 5 6 7 8 |
import pyttsx3 engine = pyttsx3.init() voices = engine.getProperty('voices') for voice in voices: engine.setProperty('voice', voice.id) print (voice.id) |
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens\TTS_MS_JA-JP_HARUKA_11.0 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens\TTS_MS_EN-US_DAVID_11.0 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens\TTS_MS_EN-US_ZIRA_11.0 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens\TTS_MS_EN-GB_HAZEL_11.0 |
windowsの設定画面から言語は追加することができます。
中国語や韓国語などの日本語以外の言語でも、手軽に話してもらうことができます。
コメント