ElevenLabs、GoogleAIStudioのtext-to-speech、AivisSpeechとの格闘
みなさんは、AIによる音声合成もガラガラ・ポンだということをご存知でしょうか。
私は使用してみてはじめて気が付きました。
本稿ではAIを利用した音声合成との格闘記録を共有したいと思います。
ここで試したのは、しっかりと原稿があって、その通りに読み上げさせる、という使い方です。
一連のテキストを極力大きなひと塊で与え、音声ファイルをゲットし、動画編集ソフトに読み込ませて10分ほどの尺のビデオを作ろうとしています。
ElevenLabs
まず、YouTubeなどで自然な音声合成で評判高いElevenLabsを使用しました。
モデルにv3(alpha)を選択し、「Ishibashi」という声を選択。
2145文字の原稿テキストを与えて音声を生成しました。
結果には以下のような特徴がありました。
- 原稿にないフレーズの読み上げが発生
- 単語の読み間違いが多発
読み間違いはカタカナで原稿を与えて修正するようです。
細かく修正して再生成するとその分だけポイントを消費します。
音声を細かく一時停止しながらテキストをまとめて修正し、できるだけ少ない生成回数に抑えることができれば、10分尺のビデオも無料で作れそうです。
非常によくできた音声合成ですが、読み上げ辞書の弱さが気になるのが現状です。
Google AI Studioのtext-to-speech
続いてGoogle AI Studioのtext-to-speechも試しました。
ElevenLabsと同様の手順で、設定項目は以下の通りです。
- Mode:「Single-speaker Audio」
- Style Instructions:「Read aloud in a warm and friendly tone: 」
- Voice:「Algieba」
結果には以下のような特徴がありました。
- 生成ごとに声色の印象が大きく変化する
- 単語の読み間違いが多発(とくに数値)
- 低スペックのPCではUIが重い
- 「No Audio~」と生成に失敗することがある
読み上げの全体的な印象はピカイチのナチュラルさです。
ただし、単語の読み間違いや、原文にない読み上げが多発します。
また、テキストを小分けに与えて生成すると、都度の声色の変化が目立ち、繋ぎ合わせると不自然になってしまいます。
読み上げの指定にはSSMLが使用できると見かけたりもしますが、break要素がうまく機能しないなど、今一つ使い方がよくわかりません。
長文を安定して生成できるようになれば、頼もしい存在になりそうです。
AivisSpeech
オフラインアプリケーションのAivisSpeechを試してみました。
結果には以下のような特徴がありました。
- 単語の読み間違いは辞書で優先度の高い語を登録してカバーできる
- 低スペックのPCでは生成に時間がかかる
優秀なElevenLabsやGoogle AI Studioと比較すると、単語単位での読み上げの不自然さが気になります。
ただし、テキストに対する読み上げの結果は最も安定しています。
また、アクセントのコントロールも容易で、読み上げを制御しやすいのが特徴です。
無料ながらここまでのクォリティで使えるのは素晴らしいでしょう。
ここでポイントになってくるのが読み上げの揺らぎです。
音声合成を実行すると、たとえば「記録を」というテキストが「きおくを」と読まれることがあります。
一方、アクセントペインの再生ボタンの左上には、「再生成」のボタンがあります。
これをクリックすると、発声が変化し、意図した読み方に修正されることがあります。
このボタンは小さいのですが、とても重要な存在になります。
まとめ
ElevenLabs、Google AI Studio、AivisSpeechを使用して音声合成を試してみました。
現状では、発声の結果が別の言葉に聞こえるほど揺らぎ、ガラガラ・ポンの状態です。
したがって、適切な音声合成の結果を得るためには読み方を指定するなどしつつ、再音声合成を繰り返す必要があります。
読み上げのナチュラルさは、Google AI Studio、ElevenLabs、AivisSpeechの順に良い印象でした。
しかし、再音声合成で結果を制御しやすいのはAivisSpeechでした。
引き続き、AivisSpeechの使用で格闘してみたいと思います。