今回はpythonで簡単に音声を合成できる
pyopenjtalkを使ってみました
解説動画はこちら
今回使用したpyopenjtalkは
日本語の文章を音素表記に
変換してくれる便利ツールです
普通のWindowsPCだと
インストールにコツがいるかもしれません
MacやLinuxは大丈夫っぽいので
Google Colabで実行できるコードを用意しました
colabだと入っていないので
まずはインストールが必要です
インストール方法
こちらのコードでインストールできます
音素表記へ変換
次は日本語のテキストを
音素表記に変換してみましょう
日本語テキストを入力してあげると
簡単に変換できます
音声ファイルに変換する
次は日本語のテキストを
音声にしてみましょう
ファイル化することもできるので
colab上に音声ファイルとして出力します
displayを使うと
colab上で音声を再生することもできます
ファイル化せず直接喋らせてみる
pyopenjtalkでは音声データとして
周波数と数値配列を生成するようです
displayを使えば
ファイル化しなくても
再生できます
合成した音声は
動画の方で聞いてみてください
日本語の小説など
大量の文章を音声化したいなら
少しは使えるかも知れませんね
動画作成の自動化なんかも
うまくやれば出来てしまうかもしれません
なかなか面白いツールでした
それでは
pyopenjtalkを使ってみました
解説動画はこちら
今回使用したpyopenjtalkは
日本語の文章を音素表記に
変換してくれる便利ツールです
普通のWindowsPCだと
インストールにコツがいるかもしれません
MacやLinuxは大丈夫っぽいので
Google Colabで実行できるコードを用意しました
colabだと入っていないので
まずはインストールが必要です
インストール方法
こちらのコードでインストールできます
pip install pyopenjtalk
音素表記へ変換
次は日本語のテキストを
音素表記に変換してみましょう
日本語テキストを入力してあげると
簡単に変換できます
import pyopenjtalk talk_text = 'こんにちは' voice = pyopenjtalk.g2p(talk_text) print(voice)k o N n i ch i w a
音声ファイルに変換する
次は日本語のテキストを
音声にしてみましょう
ファイル化することもできるので
colab上に音声ファイルとして出力します
displayを使うと
colab上で音声を再生することもできます
import pyopenjtalk import numpy as np from scipy.io import wavfile taik_text = "どうもこんにちは 乙ぱいです" x , sr = pyopenjtalk.tts(taik_text) wavfile.write("output.wav", sr , x.astype(np.int16)) # 音声ファイルの再生 import IPython.display IPython.display.Audio("output.wav" , autoplay=True )
ファイル化せず直接喋らせてみる
pyopenjtalkでは音声データとして
周波数と数値配列を生成するようです
displayを使えば
ファイル化しなくても
再生できます
import IPython.display import pyopenjtalk from scipy.io import wavfile taik_text = "どうも、ゆっくり不動産です" #taik_text = "じょ、女子高生が、す、好きなんだなぁ" #taik_text = "先にシャワー浴びてこいよ" #taik_text = "この紋所が目に入らぬか!" #taik_text = "事件は会議室で起きてるんじゃない 現場で起きてるんだ!" #taik_text = "室井さん、レインボーブリッジ封鎖できません" #taik_text = "じっちゃんのなににかけて" x , sr = pyopenjtalk.tts(taik_text) IPython.display.Audio(x , rate=sr , autoplay=True)
合成した音声は
動画の方で聞いてみてください
日本語の小説など
大量の文章を音声化したいなら
少しは使えるかも知れませんね
動画作成の自動化なんかも
うまくやれば出来てしまうかもしれません
なかなか面白いツールでした
それでは
コメントする