SpeechSynthesizer.SpeakAsync Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Genererar talutdata asynkront från en sträng, ett Prompt objekt eller ett PromptBuilder objekt.
Överlagringar
| Name | Description |
|---|---|
| SpeakAsync(Prompt) |
Asynkront talar innehållet i ett Prompt objekt. |
| SpeakAsync(PromptBuilder) |
Asynkront talar innehållet i ett PromptBuilder objekt. |
| SpeakAsync(String) |
Asynkront talar innehållet i en sträng. |
Kommentarer
Metoderna SpeakAsync genererar tal asynkront. Metoderna returnerar omedelbart utan att vänta på att innehållet i SpeakAsync objektet ska slutföras. Använd SpeakAsync om ditt program behöver utföra uppgifter medan du talar, till exempel markera text, måla animering, övervaka kontroller eller andra uppgifter.
Under ett anrop till den här metoden SpeechSynthesizer kan du skapa följande händelser:
StateChanged. Upphöjt när taltillståndet för synteten ändras.
SpeakStarted. Upphöjt när synteten börjar generera tal.
PhonemeReached. Höjs varje gång synteten når en bokstav eller kombination av bokstäver som utgör ett diskret talljud på ett språk.
SpeakProgress. Upphöjt varje gång synteten är klar med att tala ett ord.
VisemeReached. Upphöjt varje gång talade utdata kräver en förändring i munnens position eller ansiktsmusklerna som används för att producera tal.
BookmarkReached. Utlöses när syntetiseraren stöter på ett bokmärke i en prompt.
VoiceChange. Upphöjt när talrösten för synteten ändras.
SpeakCompleted. Utlöses när synteten har slutfört en SpeakAsync åtgärd.
Om programmet inte behöver utföra uppgifter när du talar kan du använda Speak metoderna eller SpeakSsml metoden för att generera tal synkront.
SpeakAsync(Prompt)
- Källa:
- SpeechSynthesizer.cs
- Källa:
- SpeechSynthesizer.cs
- Källa:
- SpeechSynthesizer.cs
- Källa:
- SpeechSynthesizer.cs
Asynkront talar innehållet i ett Prompt objekt.
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)
Parametrar
- prompt
- Prompt
Innehållet att tala.
Exempel
I följande exempel skapas ett Prompt objekt från en sträng och objektet skickas som ett argument till SpeakAsync metoden.
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();
}
}
}
Kommentarer
Du kan avbryta asynkront tal om en fråga med SpeakAsyncCancel metoden eller SpeakAsyncCancelAll .
Om du vill tala synkront om innehållet i ett Prompt objekt använder du Speak.
Den här metoden lagrar i aktiviteten som returnerar alla undantag som inte används som metodens synkrona motsvarighet kan utlösa. Om ett undantag lagras i den returnerade aktiviteten utlöses undantaget när aktiviteten väntar. Användningsfel, till exempel ArgumentException, genereras fortfarande synkront. De lagrade undantagen finns i undantagen som genereras av Speak(Prompt).
Gäller för
SpeakAsync(PromptBuilder)
- Källa:
- SpeechSynthesizer.cs
- Källa:
- SpeechSynthesizer.cs
- Källa:
- SpeechSynthesizer.cs
- Källa:
- SpeechSynthesizer.cs
Asynkront talar innehållet i ett PromptBuilder objekt.
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
Parametrar
- promptBuilder
- PromptBuilder
Innehållet att tala.
Returer
Objektet som innehåller innehållet som ska visas.
Exempel
I följande exempel skapas ett PromptBuilder objekt från en sträng och objektet skickas som ett argument till SpeakAsync metoden.
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();
}
}
}
Den här metoden lagrar i aktiviteten som returnerar alla undantag som inte används som metodens synkrona motsvarighet kan utlösa. Om ett undantag lagras i den returnerade aktiviteten utlöses undantaget när aktiviteten väntar. Användningsfel, till exempel ArgumentException, genereras fortfarande synkront. De lagrade undantagen finns i undantagen som genereras av Speak(PromptBuilder).
Kommentarer
Om du vill tala synkront om innehållet i ett PromptBuilder objekt använder du Speak.
Gäller för
SpeakAsync(String)
- Källa:
- SpeechSynthesizer.cs
- Källa:
- SpeechSynthesizer.cs
- Källa:
- SpeechSynthesizer.cs
- Källa:
- SpeechSynthesizer.cs
Asynkront talar innehållet i en sträng.
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
Parametrar
- textToSpeak
- String
Texten att tala.
Returer
Objektet som innehåller innehållet som ska visas.
Exempel
Som du ser i följande exempel SpeakAsync ger metoden det enklaste sättet att generera talutdata asynkront.
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();
}
}
}
Kommentarer
Använd metoden för att asynkront tala om en sträng som innehåller SSML-markering SpeakSsmlAsync . Använd metoden för att synkront tala om innehållet i en sträng Speak . Du kan avbryta asynkront tal om en fråga med SpeakAsyncCancel metoden eller SpeakAsyncCancelAll .
Den här metoden lagrar i aktiviteten som returnerar alla undantag som inte används som metodens synkrona motsvarighet kan utlösa. Om ett undantag lagras i den returnerade aktiviteten utlöses undantaget när aktiviteten väntar. Användningsfel, till exempel ArgumentException, genereras fortfarande synkront. De lagrade undantagen finns i undantagen som genereras av Speak(String).