SpeechSynthesizer.SpeakAsync 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.
Gera a saída de fala de forma assíncrona de uma cadeia de caracteres, um objeto Prompt ou um objeto PromptBuilder.
Sobrecargas
SpeakAsync(Prompt) |
Fala o conteúdo de um objeto Prompt de forma assíncrona. |
SpeakAsync(PromptBuilder) |
Fala o conteúdo de um objeto PromptBuilder de forma assíncrona. |
SpeakAsync(String) |
Fala assincronamente o conteúdo de uma cadeia de caracteres. |
Comentários
Os SpeakAsync métodos geram fala de forma assíncrona. Os métodos retornam imediatamente sem esperar que o conteúdo do objeto termine de SpeakAsync falar. Use SpeakAsync se o aplicativo precisar executar tarefas durante a fala, por exemplo, realçar texto, animação de pintura, monitorar controles ou outras tarefas.
Durante uma chamada para esse método, o SpeechSynthesizer pode 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 falando uma palavra.
VisemeReached. Gerado sempre 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 para o sintetizador é alterada.
SpeakCompleted. Gerado quando o sintetizador conclui uma SpeakAsync operação.
Se o aplicativo não precisar executar tarefas durante a fala, você poderá usar os Speak métodos ou o SpeakSsml método para gerar fala de forma síncrona.
SpeakAsync(Prompt)
- Origem:
- SpeechSynthesizer.cs
- Origem:
- SpeechSynthesizer.cs
Fala o conteúdo de um objeto Prompt de forma assíncrona.
public:
void SpeakAsync(System::Speech::Synthesis::Prompt ^ prompt);
public void SpeakAsync (System.Speech.Synthesis.Prompt prompt);
member this.SpeakAsync : System.Speech.Synthesis.Prompt -> unit
Public Sub SpeakAsync (prompt As Prompt)
Parâmetros
- prompt
- Prompt
O conteúdo a ser falado.
Exemplos
O exemplo a seguir cria um Prompt objeto de uma cadeia de caracteres e passa o objeto como um argumento para o SpeakAsync método .
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();
// Create a prompt from a string.
Prompt color = new Prompt("What is your favorite color?");
// Speak the contents of the prompt asynchronously.
synth.SpeakAsync(color);
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
}
}
Comentários
Você pode cancelar a fala assíncrona de um prompt com o SpeakAsyncCancel método ou SpeakAsyncCancelAll .
Para falar de forma síncrona o conteúdo de um Prompt objeto, use Speak.
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 Speak(Prompt).
Aplica-se a
SpeakAsync(PromptBuilder)
- Origem:
- SpeechSynthesizer.cs
- Origem:
- SpeechSynthesizer.cs
Fala o conteúdo de um objeto PromptBuilder de forma assíncrona.
public:
System::Speech::Synthesis::Prompt ^ SpeakAsync(System::Speech::Synthesis::PromptBuilder ^ promptBuilder);
public System.Speech.Synthesis.Prompt SpeakAsync (System.Speech.Synthesis.PromptBuilder promptBuilder);
member this.SpeakAsync : System.Speech.Synthesis.PromptBuilder -> System.Speech.Synthesis.Prompt
Public Function SpeakAsync (promptBuilder As PromptBuilder) As Prompt
Parâmetros
- promptBuilder
- PromptBuilder
O conteúdo a ser falado.
Retornos
O objeto que contém o conteúdo a ser falado.
Exemplos
O exemplo a seguir cria um PromptBuilder objeto de uma cadeia de caracteres e passa o objeto como um argumento para o SpeakAsync método .
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();
// Create a PromptBuilder object and append a text string.
PromptBuilder song = new PromptBuilder();
song.AppendText("Say the name of the song you want to hear");
// Speak the contents of the prompt asynchronously.
synth.SpeakAsync(song);
Console.WriteLine();
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 Speak(PromptBuilder).
Comentários
Para falar de forma síncrona o conteúdo de um PromptBuilder objeto, use Speak.
Aplica-se a
SpeakAsync(String)
- Origem:
- SpeechSynthesizer.cs
- Origem:
- SpeechSynthesizer.cs
Fala assincronamente o conteúdo de uma cadeia de caracteres.
public:
System::Speech::Synthesis::Prompt ^ SpeakAsync(System::String ^ textToSpeak);
public System.Speech.Synthesis.Prompt SpeakAsync (string textToSpeak);
member this.SpeakAsync : string -> System.Speech.Synthesis.Prompt
Public Function SpeakAsync (textToSpeak As String) As Prompt
Parâmetros
- textToSpeak
- String
O texto para fala.
Retornos
O objeto que contém o conteúdo a ser falado.
Exemplos
Conforme mostrado no exemplo a seguir, o SpeakAsync método fornece os meios mais simples para gerar saída de fala de forma assíncrona.
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();
// Speak a string asynchronously.
synth.SpeakAsync("What is your favorite color?");
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
}
}
Comentários
Para falar de forma assíncrona uma cadeia de caracteres que contém marcação SSML, use o SpeakSsmlAsync método . Para falar de forma síncrona o conteúdo de uma cadeia de caracteres, use o Speak método . Você pode cancelar a fala assíncrona de um prompt com o SpeakAsyncCancel método ou SpeakAsyncCancelAll .
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 Speak(String).