SpeechSynthesizer.SpeakSsmlAsync(String) Método

Definição

Assíncronamente fala um String que contém marcação SSML.

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

Parâmetros

textToSpeak
String

A marcação SMML, para falar.

Devoluções

O objeto que contém o conteúdo para falar.

Exceções

textToSpeaké null.

Exemplos

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();
    }
  }
}

Este método armazena na tarefa que devolve todas as exceções de não-utilização que o equivalente síncrono do método pode lançar. Se uma exceção for armazenada na tarefa devolvida, essa exceção será lançada quando a tarefa for aguardada. As exceções de uso, como ArgumentException, ainda são lançadas de forma síncrona. Para as exceções armazenadas, veja as exceções lançadas por SpeakSsml(String).

Observações

O conteúdo do textToSpeak parâmetro deve incluir um speak elemento e deve estar em conformidade com a Speech Synthesis Markup Language (SSML) Versão 1.0. Para mais informações, consulte Reference de Linguagem de Marcação de Síntese de Voz.

Para falar síncronamente uma cadeia que contenha marcação SSML, use o SpeakSsml método. Podes usar SpeakAsync para iniciar a fala assíncrona de uma string que não contenha marcação SSML.

Durante uma chamada para este método, podem SpeechSynthesizer levantar os seguintes eventos:

  • StateChanged. Levanta-se quando o estado de fala do sintetizador muda.

  • SpeakStarted. Eleva-se quando o sintetizador começa a gerar fala.

  • PhonemeReached. Eleva-se cada vez que o sintetizador alcança uma letra ou combinação de letras que constituem um som discreto de fala numa língua.

  • SpeakProgress. Eleva-se cada vez que o sintetizador termina de pronunciar uma palavra.

  • VisemeReached. Elevado cada vez que a saída falada exige uma alteração na posição da boca ou dos músculos faciais usados para produzir a fala.

  • BookmarkReached. Aumenta quando o sintetizador encontra um marcador num prompt.

  • VoiceChange. Eleva-se quando a voz falada do sintetizador muda.

  • SpeakCompleted. Levanta-se quando o sintetizador termina de processar uma SpeakSsmlAsync operação.

Se a sua aplicação não precisar de realizar tarefas enquanto fala, pode usar o Speak método OR SpeakSsml para gerar fala de forma síncrona.

Aplica-se a