音声合成 (.ojt)

音声合成エンジン Open JTalk の設定

MMDAgent では日本語の音声合成エンジンとして Open JTalk が組み込まれています。音声合成を行うには

  • Open JTalk エンジン用のボイスモデルファイル
  • 設定ファイル(.ojt)

をそれぞれ用意します。

ボイスモデル

HTS で学習された Open JTalk 用のボイスモデルが使えます。 自分のコンテンツで音声合成を行うためには、Open JTalk エンジン用のボイスモデルファイルをコンテンツに含める必要があります。 ボイスモデルや設定ファイルが含まれていない場合、音声合成は行われません。

サンプルとしてデフォルトコンテンツの voice/mei/ 以下にメイちゃんの用のボイスモデルがあります。このモデルは Creative Commons Attribution 3.0 ライセンスのもとで利用できます。詳しくは同フォルダ内の README.txt をご覧ください。

設定ファイル(.ojt)

.ojt ファイルでは、ボイスモデルのパスと、1つあるいは複数の発話スタイルを定義します。発話スタイルは、音声合成で用いるボイスの定義であり、単体のボイスモデルを使うこともできますし、複数のボイスモデルの重みつき混合として表すこともできます。また、話速、声の高さ、ジェンダーパラメータ、強調等を設定・変更できます。

.ojt ファイルのサンプルは以下の通りです。これはデフォルトコンテンツに含まれる .ojt です。

##
## ボイスモデルの数
##
5
##
## ボイスモデルのパス(上記で指定した数だけ)
##
Voice/mei/mei_normal.htsvoice
Voice/mei/mei_angry.htsvoice
Voice/mei/mei_bashful.htsvoice
Voice/mei/mei_happy.htsvoice
Voice/mei/mei_sad.htsvoice
##
## 発話スタイルの定義数
##
9
##
## 発話スタイルの定義
## 
##   スタイル名および各パラメータを1行ずつ(上記で指定した数だけ)
##   冒頭の3種類はボイスモデルの数だけ記述
##   以下、ボイスモデルの数を N とする
##
##   - スタイル名
##   - スペクトルの混合重み N 個 [0.0~1.0]
##   - F0 の混合重み N 個        [0.0~1.0]
##   - 持続長の混合重み N 個     [0.0~1.0]
##   - 話速 [デフォルトが1.0、より小さいと遅く、大きいと速く]
##   - ピッチシフト量 [半音単位]
##   - ジェンダーパラメータ [小さいと女声に、大きいと男声に近づく]
##   - 強調 [デフォルトが1.0、より大きいと影響大]
##
mei_voice_normal   1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.52 1.0
mei_voice_angry    0.0  1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  1.1 -0.5  0.52 1.1
mei_voice_bashful  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  1.0  0.5  0.52 0.9
mei_voice_happy    0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  0.0  1.1  1.5  0.52 1.0
mei_voice_sad      0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  1.0 -0.5  0.52 0.9
mei_voice_fast     1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  2.0  1.0  0.52 1.0
mei_voice_slow     1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  0.5  1.0  0.52 1.0
mei_voice_high     1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  4.0  0.52 1.0
mei_voice_low      1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0  0.0  0.0  0.0  0.0  1.0 -2.0  0.52 1.0

起動後、音声合成の実行メッセージ SYNTH_START メッセージで、ここで定義した発話スタイル名を指定します。複数の発話スタイルを定義しておくことで、それらを使い分けながら音声合成することができます。

ojt は音声合成のパラメータを設定するファイルで、スタートアップ・設定ファイル(.mdf)と同じ名前で作成します. 例えば、foobar.mdf というスタートアップ・設定ファイルがコンテンツトップにあるとき、.ojt ファイルの名前は以下のように foobar.ojt である必要があります。

  foobar.mdf
  foobar.ojt

最終更新 2021.01.15: update till julius (5d37b5a)