音声合成を使うには

SpeechSynthesizer

WindowsRuntimeで音声合成を使うにはSpeechSynthesizerを使います。

 

まずはどの声に喋ってもらうかを決めます。

SpeechSynthesizerのAllVoicesプロパティ内にシステムでしゃべることのできる合成音声の一覧が入っています。

ここから今回は英語、女性の声を選択してみます。

選択した合成音声はVoiceInformationクラスとして提供されます。

VoiceInformation voice = SpeechSynthesizer.AllVoices.Where(q=>q.Language=="en-US"&&q.Gender==VoiceGender.Female).First();

 

次にSpeechSynthesizerをnewします。

Voiceプロパティに先ほど取得したVoiceInformationを入れます。

SpeechSynthesizer synthesizer = new SpeechSynthesizer();
synthesizer.Voice = voice;

 

それでは音声合成を再生してみましょう。

SynthesizeTextToStreamAsyncメソッドを使ってStreamを取得、MediaElementのSourceにSetします。

あらかじめMediaElementをnewしておきましょう。

SpeechSynthesisStream stream = await synthesizer.SynthesizeTextToStreamAsync("Hello");
                
_mediaElement.SetSource(stream,stream.ContentType);

 

これで音声合成をすることができます。 So the british system is based on public advertising and personal references, unlike other countries where academic posts are awarded on the basis of competitive exams and testimonial letters writing academic essays

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください