SpeechSynthesizer.SpeakSsmlAsync(String) Yöntem

Tanım

Zaman uyumsuz olarak SSML işaretlemesi içeren bir String konuşur.

public:
 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

Parametreler

textToSpeak
String

Konuşmak için SMML işaretlemesi.

Döndürülenler

Konuşma içeriğini içeren nesne.

Özel durumlar

textToSpeakşeklindedir null.

Örnekler

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.
      synth.SetOutputToDefaultAudioDevice();

      // 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.
      synth.SpeakSsmlAsync(str);

      Console.WriteLine("Press any key to exit...");
      Console.ReadKey();
    }
  }
}

Bu yöntem, görevin içinde depolar ve yöntemin zaman uyumlu karşılık geleninin atabileceği tüm kullanım dışı özel durumları döndürür. Döndürülen görevde bir özel durum depolanırsa, görev beklenirken bu özel durum oluşturulur. gibi ArgumentExceptionkullanım özel durumları yine zaman uyumlu olarak oluşturulur. Depolanan özel durumlar için tarafından oluşan SpeakSsml(String)özel durumlara bakın.

Açıklamalar

parametresinin textToSpeak içeriği bir speak öğe içermelidir ve Konuşma Sentezi Biçimlendirme Dili (SSML) Sürüm 1.0 ile uyumlu olmalıdır. Daha fazla bilgi için bkz . Konuşma Sentezi Biçimlendirme Dili Başvurusu.

SSML işaretlemesi içeren bir dizeyi zaman uyumlu bir şekilde konuşmak için yöntemini kullanın SpeakSsml . SSML işaretlemesi içermeyen bir dizeden zaman uyumsuz konuşma başlatmak için kullanabilirsiniz SpeakAsync .

Bu yönteme yapılan bir çağrı sırasında, SpeechSynthesizer aşağıdaki olayları tetikleyebilir:

  • StateChanged. Sentezleyicinin konuşma durumu değiştiğinde tetiklenen.

  • SpeakStarted. Sentezleyici konuşma oluşturmaya başladığında yükseltildi.

  • PhonemeReached. Synthesizer bir dilde gizli bir konuşma sesi oluşturan bir harfe veya harf bileşimine her ulaştığında yükseltildi.

  • SpeakProgress. Sentezleyici bir kelime konuşmayı her tamamladığınızda yükseltilir.

  • VisemeReached. Her konuşulan çıkışın yükseltilmesi için ağız veya konuşma üretmek için kullanılan yüz kaslarının konumunda bir değişiklik yapılması gerekir.

  • BookmarkReached. Birleştirici bir istemde yer işaretiyle karşılaştığında oluşturulur.

  • VoiceChange. Sentezleyicinin konuşma sesi değiştiğinde yükseltildi.

  • SpeakCompleted. Birleştirici bir SpeakSsmlAsync işlemi işlemeyi bitirdiğinde tetiklenir.

Uygulamanızın konuşma sırasında görev gerçekleştirmesi gerekmiyorsa, veya SpeakSsml yöntemini kullanarak Speak zaman uyumlu bir şekilde konuşma oluşturabilirsiniz.

Şunlara uygulanır