SpeechSynthesizer.SpeakSsmlAsync(String) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fala de forma assíncrona 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 a ser falada.
Retornos
O objeto que contém o conteúdo a ser falado.
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();
}
}
}
Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por SpeakSsml(String).
Comentários
O conteúdo do textToSpeak parâmetro deve incluir um speak elemento e deve estar em conformidade com o SSML (Speech Synthesis Markup Language) versão 1.0.
Para falar de forma síncrona uma cadeia de caracteres que contém marcação SSML, use o SpeakSsml método. Você pode usar SpeakAsync para iniciar a fala assíncrona de uma cadeia de caracteres que não contém marcação SSML.
Durante uma chamada para esse método, é SpeechSynthesizer possível gerar os seguintes eventos:
StateChanged. Gerado quando o estado de fala do sintetizador é alterado.
SpeakStarted. Gerado quando o sintetizador começa a gerar fala.
PhonemeReached. Gerado sempre que o sintetizador atinge uma letra ou combinação de letras que constituem um som discreto de fala em uma linguagem.
SpeakProgress. Gerado sempre que o sintetizador conclui a fala de uma palavra.
VisemeReached. Gerado cada vez que a saída falada requer uma mudança na posição da boca ou nos músculos faciais usados para produzir fala.
BookmarkReached. Gerado quando o sintetizador encontra um indicador em um prompt.
VoiceChange. Gerado quando a voz de fala do sintetizador é alterada.
SpeakCompleted. Gerado quando o sintetizador termina de processar uma SpeakSsmlAsync operação.
Se o aplicativo não precisar executar tarefas durante a fala, você poderá usar o Speak método ou SpeakSsml o método para gerar a fala de forma síncrona.