AI音声のAmazon Pollyを使ってみた!

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

最初

最近AI音声が流行っている気がしますね。ネットでよく広告を見て、AI音声の質がそれぞれで、どれを使えばよくわかりません。AWSでもAI音声サービスが存在していることを気づいて、(2022年9月時点)最初12月100万文字が無料で使えるので、試してみたいと思います。

始めるのが簡単

AWSのマネコンからAmazon Pollyに入ります。

 

デフォルトではサンプル文章が入ってるのでListenを押せばAI音声を話させます。
そして、Languageの欄をクリックすれば、日本をも含まれ、多くの言語を選択できます。

 

NeuralStandard二つエンジンを選択できます。Neuralの方が感情を持つ人間に近い音声で話してくれます。

 

Voice欄は他の声も選べられますが、残念ですが、(2022年9月時点)日本語の場合は、二つしかないし、そしてNeuralエンジンでTakumi, Maleしか使えません。

音声を確認できたら、Save to S3にするか、Downloadボタンでローカルにダウロードできます。

その他の設定

前のセクションに紹介したもの以外:

  • Sample rate(音声のサンプリングレート)
  • File format(セーブ・ダウンロードするファイルのフォーマット)
  • Customize pronunciation / Apply lexicon(発音カスタマイズ / レキシコン使用) ができます。このブログでは上記機能についてのテストを省略させていただきます。

レキシコンは何?と思って、ググったら:

レキシコンは言語学でいうところの「語彙目録」を意味しており、Amazon Pollyでは「発音レキシコン」として単語の言い換えや独特の発音を登録・表現することができます。 例えるとパソコンのユーザー辞書に単語を登録し、文章変換時にその単語を表示させるようなものです。

音声マークアップ言語(SSML)

エンジンに勝手に文章を読んでもらう以外、音声マークアップ言語(SSML)を使って(SSMLをオンにし、SSML文法のタグを使う)、文章各所の読み方を変えることができます。

よかったら下記のサンプルを使って読ませてみてください:

<speak>
    普通の読み方で一,二,三,四,五で読むと: <say-as interpret-as="digits">12345</say-as>.
    そして一万二千三百四十五で読むと: <say-as interpret-as="cardinal">12345</say-as>.

    ハローをそのまま読むと:hello.
    ハローをスペリングしたら:<say-as interpret-as="spell-out">hello</say-as>.

    3秒を待ちます <break time="3s"/> 終わった
</speak>

エンジン、声によって全てのタグを使える訳ではないので(日本語にはかなり制限があります)、使い方などは公式Docに確認してください:Speech Synthesis Markup Language (SSML) Reference

最後

録画に自分の声を使いたくない、自動音声やゲーム開発などに比較的に自然なAI音声を使い方は是非試してみてください。

以上です。