SpeechSynthesizer.SpeakSsmlAsync(String) 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.
Asynkront talar en String som innehåller SSML-markering.
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
Parametrar
- textToSpeak
- String
SMML-markering för att tala.
Returer
Objektet som innehåller innehållet som ska visas.
Undantag
textToSpeakär null.
Exempel
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();
}
}
}
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 SpeakSsml(String).
Kommentarer
Innehållet i parametern textToSpeak måste innehålla ett speak element och måste överensstämma med SSML-version 1.0 (Speech Synthesis Markup Language). Mer information finns i Språkreferens för talsyntesmarkering.
Använd metoden för att synkront tala en sträng som innehåller SSML-markering SpeakSsml . Du kan använda SpeakAsync för att initiera asynkront tal om en sträng som inte innehåller SSML-markering.
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 bearbetningen av en SpeakSsmlAsync åtgärd.
Om ditt program inte behöver utföra uppgifter när du talar kan du använda Speak metoden eller SpeakSsml för att generera tal synkront.