C#で簡単に音声合成がしたい!ということで、さっそく作成してみました。
■システム構成
■OpneJTalkの使用方法
OpenJTalkはコマンドプロンプト上で実行可能です。実行コマンドは下記のようになっています。
コマンド例:”bin\open_jtalk -z 2000 -m voice\hts_voice_nitech_jp_atr503_m001\nitech_jp_atr503_m001.htsvoice -ow talk.wav talk.txt”
バッチファイルにコマンドを記述しておけば、バッチファイルを起動するだけで、音声合成ができるようになります。
Windowsでコマンドプロンプトに行わせたい命令列をテキストファイルに記述したもの。
■システム概要
今回、OpneJTalkの便利なオプションをそのまま使用するためにプログラムに直接組み込むのではなく、OpneJTalkを起動させる部分はすべてバッチファイルで作成しています。C#ではバッチファイルの起動と出力結果の読み込みしかしていません。
作成した音声合成システムの起動画面は図1のようになっています。起動画面が立ち上がったら、入力フォームに音声合成させたい言葉を入力します。その後、”音声合成開始”ボタンを押してください。すると出力結果欄に”再生開始”と表示されると同時に音声が再生されます。図1では「こんにちは。」と発話させたいときの実行例となっています。
図1 音声合成システムの使用例
<参考文献>
- DOSコマンドを実行し出力データを取得する[DOBON.NET プログラミング道] (http://dobon.net/vb/dotnet/process/standardoutput.html)
コメントを残す