今回は、音声合成(テキストから音声ファイルを作成する)ライブラリ『gtts 』を利用したプログラムを作成します。

今回はGUIなしで、決まった文章を音声合成し、再生するプログラムまでを作ります。
『gtts』、『playsound』のインストール
音声ファイルを作成する為のライブラリ『gtts』、音声ファイルを再生する為のライブラリ『playsound』をインストールして下さい。
pip install gtts pip install playsound
これでプログラム作成の準備が整いました。
『gtts』を使用して音声ファイルを作る
from gtts import gTTS myText = "おはようございます" language ='ja' output = gTTS(text=myText, lang=language, slow=False) output.save("output.mp3")
1行目:gttsのライブラリからgTTSという関数をインポートします。
2行目:myTextに音声変換する文字列を保存します。
3行目:languageに言語を指定します。日本語なので『ja』になります。
4行目:音声合成をする関数『gTTS』です。引数として、text:(音声変換する文字)、lang:(言語)、slow:(音声速度)があります。langに関しては、日本語の場合はja、英語の場合はenになります。
プログラムを実行すると、音声ファイル『output.mp3』が作成されます。
音声ファイルを再生する
先ほどの音声ファイル『output.mp3』を再生してみましょう。

えっ、ファイルはどこにあるの?
プログラムを見ると、どこに音声ファイルが出力されているか分かりません。
では、出力されている場所を確認しましょう。プログラムがどのフォルダを基準(現在の作業フォルダ)としているを知るためには、先ほどのプログラムに、下記を追記し、どこのフォルダかを確認します。
import os path = os.getcwd() print(path)
私の場合(windows10)、”C:\Users\ユーザー名”のフォルダに保存されていました。『output.mp3』を見つけたら、一度、再生してみて下さい。女性の声で”おはようございます”と流れます(音声は女性のみになります)。
ここで、音声ファイルを解りやすい所、指定したフォルダにに出力するように工夫します。下記のようにファイル名を変えてみて下さい。
storepath = "C:/pythontest/" storefile = storepath + "output.mp3" output.save(storefile)
1行目:出力先のフォルダを指定する
2行目:ファイル名と出力先のアドレスを繋げる
ここで『/』と『\』の違いですが、プログラム内で階層(ディレクトリ)を区切るには、『/』を使って下さい。windowsのフォルダアドレスをそのままコピーすると『\』になってしまうので注意して下さい。
プログラムで音声を再生『playsound』
プログラム内で再生するにはライブラリ『playsound』を使用します。
from playsound import playsound playsound(storefile)
プログラムを実行すると音声が流れました。
今回のコード
from gtts import gTTS import os from playsound import playsound path = os.getcwd() print(path) storepath = "C:/pythontest/" inText = "おはようございます" language ='ja' output = gTTS(text=inText, lang=language, slow=False) storefile = storepath + "output.mp3" output.save(storefile) playsound(storefile)
実際には作業フォルダを知る為のコードは不要になります。
最後に
文字から音声への変換(音声合成)と音声再生を実行することが出来ました。次はGUIベースでこのプログラムを拡げていきます。楽しみにしていて下さい。
コメント