3
2

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.

【Azure Cognitive Services】Speech Serviceのニューラル音声を使って、日本語テキスト読み上げをしてみた

Last updated at Posted at 2021-04-30

ニューラル音声とは

ディープニューラルネットワークを使用して、話し言葉のアクセントとイントネーションに関する従来の音声合成の限界を克服します。韻律予測と音声合成が同時に行われるため、より滑らかで自然な音声出力が得られます。ニューラル音声を使用すると、チャットボットや音声アシスタントとの対話をより自然で魅力的なものにすることができます。

[ 引用 ] https://docs.microsoft.com/ja-jp/azure/cognitive-services/speech-service/text-to-speech#core-features

はじめに

この記事では、日本語で女性のニューラル音声であるNanamiがテキストを読み上げてくれます。
以下のMicrosoftドキュメントを参考に作成してみました。

Cognitive Servicesのリソースを作成する際に、リージョン選択に注意してください。
かなり重要なことですが、ニューラル音声を使用できるリージョンが限られています。この記事を日本人が見る場合が多いと思うので、おそらく東日本もしくは西日本のリージョンを選択すると思いますが、なんとニューラル音声がサポートされていません!!!
ニューラル音声がサポートされているリージョンに関してはMSドキュメントで確認してください。
私は米国東部のリージョンを選択して、リソースを作成しています。

前提・環境

  • Windows 10 home
  • visual studio 2019
  • Azure portal上でCognitive Servicesのリソース作成済み
    • キーを取得できる。
    • 場所を取得できる。
  • NuGetパッケージ
    • Microsoft.CognitiveServices.Speech v1.16.0

ソースコード

using Microsoft.CognitiveServices.Speech;
using System.Threading.Tasks;

namespace AzureCognitiveServicesAPI
{
    class Program
    {
        static string subscriptionKey = "YourSubscriptionKey";
        static string serviceRegion = "YourServiceRegion";

        static async Task Main(string[] args)
        {
            var config = SpeechConfig.FromSubscription(subscriptionKey, serviceRegion);
            var synthesizer = new SpeechSynthesizer(config);
            var text = "こんにちは";
            await synthesizer.SpeakSsmlAsync(CreateTextReadOut(text));
        }

        static string CreateTextReadOut(string text)
        {
            return $"<speak version='1.0' xmlns='https://www.w3.org/2001/10/synthesis' xml:lang='ja-JP'><voice name='ja-JP-NanamiNeural'>{text}</voice></speak>";
        }
    }
}

フィールド変数のsubscriptionKeyとserviceRegionに前提で取得しておいたキーと場所に書き換えてください。
実行すると、”こんにちは”とNanamiが話してくれるかと思います。

以上です。ありがとうございました。

3
2
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
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?