-api-id | -api-type |
---|---|
P:Windows.Media.SpeechSynthesis.SpeechSynthesizer.DefaultVoice |
winrt property |
Gets the default speech synthesis engine (voice).
The default voice.
Only Microsoft-signed voices installed on the system can be used to generate speech with a SpeechSynthesizer. Each voice generates synthesized speech in a single language, as spoken in a specific country/region.
By default, a new SpeechSynthesizer object uses the current system voice (call DefaultVoice to find out what the default voice is).
To specify any of the other speech synthesis (text-to-speech) voices installed on the user's system, use the Voice method (to find out which voices are installed on the system, call AllVoices).
If you don't specify a language, the voice that most closely corresponds to the language selected in the Language control panel is loaded.
Here, we show how to select a gender for the voice (VoiceInformation.Gender) by using either the first female voice (VoiceGender) found, or just the default system voice (SpeechSynthesizer.DefaultVoice), if no female voice is found.
using (SpeechSynthesizer synthesizer = new SpeechSynthesizer())
{
VoiceInformation voiceInfo =
(
from voice in SpeechSynthesizer.AllVoices
where voice.Gender == VoiceGender.Female
select voice
).FirstOrDefault() ?? SpeechSynthesizer.DefaultVoice;
synthesizer.Voice = voiceInfo;
// Windows.Media.SpeechSynthesis.SpeechSynthesisStream
stream = await synthesizer.SynthesizeTextToStreamAsync(text);
}
Voice, TrySetDefaultVoiceAsync, Speech interactions, Speech recognition and speech synthesis sample