SpeechSynthesizer.SpeakSsmlAsync(String) メソッド


非同期的に SSML マークアップを含む String を指示します。Asynchronously speaks a String that contains SSML markup.

 System::Speech::Synthesis::Prompt ^ SpeakSsmlAsync(System::String ^ textToSpeak);
public System.Speech.Synthesis.Prompt SpeakSsmlAsync (string textToSpeak);
member this.SpeakSsmlAsync : string -> System.Speech.Synthesis.Prompt
Public Function SpeakSsmlAsync (textToSpeak As String) As Prompt



読み上げるための SMML のマークアップ。The SMML markup to speak.


using System;  
using System.Speech.Synthesis;  
namespace SampleSynthesis  
  class Program  
    static void Main(string[] args)  
      // Initialize a new instance of the SpeechSynthesizer.  
      SpeechSynthesizer synth = new SpeechSynthesizer();  
      // Configure the audio output.   
      // Build an SSML prompt in a string.  
      string str = "<speak version=\"1.0\"";  
      str += " xmlns=\"http://www.w3.org/2001/10/synthesis\"";  
      str += " xml:lang=\"en-US\">";  
      str += "<say-as type=\"date:mdy\"> 1/29/2009 </say-as>";  
      str += "</speak>";  
      // Speak the contents of the prompt asynchronously.  
      Console.WriteLine("Press any key to exit...");  


textToSpeakパラメーターの内容にはspeak要素が含まれている必要があり、 Speech 合成マークアップ言語 (SSML) バージョン 1.0に準拠している必要があります。The contents of the textToSpeak parameter must include a speak element and must conform to the Speech Synthesis Markup Language (SSML) Version 1.0. 詳細については、「 Speech 合成マークアップ言語のリファレンス」を参照してください。For more information, see Speech Synthesis Markup Language Reference.

SSML マークアップを含む文字列を同期的に読み上げるにSpeakSsmlは、メソッドを使用します。To synchronously speak a string that contains SSML markup, use the SpeakSsml method. を使用SpeakAsyncすると、SSML マークアップを含まない文字列の非同期の読み上げを開始できます。You can use SpeakAsync to initiate the asynchronous speaking of a string that does not contain SSML markup.

このメソッドの呼び出し中に、はSpeechSynthesizer次のイベントを発生させることができます。During a call to this method, the SpeechSynthesizer can raise the following events:

  • StateChangedStateChanged. シンセサイザーの読み上げの状態が変化したときに発生します。Raised when the speaking state of the synthesizer changes.

  • SpeakStartedSpeakStarted. シンセサイザーが音声の生成を開始するときに発生します。Raised when the synthesizer begins generating speech.

  • PhonemeReachedPhonemeReached. シンセサイザーが1つの文字または文字の組み合わせに到達するたびに発生し、言語の音声を個別に発音します。Raised each time the synthesizer reaches a letter or combination of letters that constitute a discreet sound of speech in a language.

  • SpeakProgressSpeakProgress. シンセサイザーが単語の読み上げを完了するたびに発生します。Raised each time the synthesizer completes speaking a word.

  • VisemeReachedVisemeReached. 音声の生成に使用される口の位置または顔の筋肉を変更する必要があるたびに発生します。Raised each time spoken output requires a change in the position of the mouth or the facial muscles used to produce speech.

  • BookmarkReachedBookmarkReached. シンセサイザーがプロンプトでブックマークを検出したときに発生します。Raised when the synthesizer encounters a bookmark in a prompt.

  • VoiceChangeVoiceChange. シンセサイザーの読み上げ音声が変化したときに発生します。Raised when the speaking voice for the synthesizer changes.

  • SpeakCompletedSpeakCompleted. シンセサイザーが操作の処理をSpeakSsmlAsync終了したときに発生します。Raised when the synthesizer finishes processing a SpeakSsmlAsync operation.

アプリケーションが対話中にタスクを実行する必要がない場合Speak SpeakSsmlは、メソッドまたはメソッドを使用して同期的に音声を生成することができます。If your application dos not need to perform tasks while speaking, you can use the Speak or the SpeakSsml method to generate speech synchronously.