2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Googleの音声読み上げAI「Text to Speech」の過去形の日本語文を音声合成すると語尾が上がる?

Posted at

Google Cloud PlatformのAIサービスの1つとして提供されている「Cloud Text to Speech」は、日本語の音声読み上げにも対応しています。
しかし、「~だった」や「~しました」という過去形の日本語文章を読み上げると、疑問文のように語尾が上がる音声合成になります。

無料で利用できるText to Speech

Googleが提供する音声合成サービス「Cloud Text to Speech」は、非常に滑らかにテキストを読み上げる音声データを生成してくれます。

「Cloud Text to Speech」は、以下の文字数であれば無料で利用できます。

  • 標準音声:0~400万文字
  • WaveNet音声:0~100万文字

WaveNet音声というのは標準音声よりも高性能な音声で、よりなめらかに読み上げてくれます。

高性能なWaveNet音声でも、400字詰め原稿用紙250枚分が無料で利用できるので、個人利用では無料で十分です。

Cloud Text SpeechをGASで利用する

無料で利用できるCloud Text to Speechは、ブラウザ上ではお試しとして短い文章しかできません。
そのため、長文を利用するには、Google Cloud PlatformからText to SpeechのAPIを有効化して利用する必要があります。

お手軽にCloud Text to Speechを利用できる方法として、以下の記事でGoogle Apps Script(GAS)での利用方法を解説しています。

Text to Speech APIの発行方法から、GASで実行するためのサンプルコードを紹介しています。

「~だった」など過去形の文章を読み上げると、語尾が上がる?

ただ、Cloud Text to Speechはまだまだ完璧な読み上げが実現できていません。
ひらがなと漢字、カタカナを適切に組み合わせないと、想定しない読み上げをすることがあります。

さらに、問題が発覚したのは、「~だった」や「~しました」といった過去形の文章です。

  • 今日は朝ごはんを作りました。
  • 暖かい陽気な1日だった。

このような文章をText to Speechに読み上げると、語尾が疑問文のように上がってしまうのです。

  • 今日は朝ごはんを作りました。↑
  • 暖かい陽気な1日だった。↑

句読点などを工夫したり、エクスクラメーションマーク!を使ってみたのですが、語尾が上がる事象は解消されませんでした。

音声マークアップSSMLでも語尾のイントネーションは対応不可

Text to Speechには、音声読み上げで利用される音声用マークアップ言語SSMLが利用できます。

しかし、Text to Speechに対応しているSSMLのタグを調べたところ、休止をコントロールするbreakタグや、ピッチや速度を調整するprosodyタグで、語尾のイントネーションを調整するものはありませんでした。

そのため、過去形の文章を読み上げた音声データの語尾を上げないようにするのは調べたところ、困難でした。

「です」、「ます」で防ぐ対処法のみ

残念ながら、Text to Speechで語尾が上がらないように対処するには、「です」や「ます」といった現在形の文章に変換することです。
おそらく、もう少しText to Speechの性能が高まれば、語尾が上がる事象も解消すると思われますが、2021年3月時点ではまだまだです。
1文単位の音声読み上げのアプリなどを作る場合は、この仕様に注意して、文章をうまく書き換えるなどの対応しましょう。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?