SpeechSynthesizer.GetInstalledVoices 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.
Retorna a coleção de vozes de síntese de fala (conversão de texto em fala) que estão atualmente instaladas no sistema.
Sobrecargas
GetInstalledVoices() |
Retorna todas as vozes de síntese (conversão de texto em fala) de fala instalados. |
GetInstalledVoices(CultureInfo) |
Retorna todas as vozes de sintetização de fala (conversão de texto em fala) instaladas que dão suporte a uma localidade específica. |
Comentários
Quando um aplicativo chama GetInstalledVoices , o método verifica se cada uma das vozes (mecanismos de conversão de texto em fala) que ele encontra no registro atende a certos critérios mínimos. Para qualquer voz que falha na verificação, GetInstalledVoices define sua Enabled propriedade como False
. Um aplicativo não pode selecionar uma voz cuja Enabled propriedade é False
. Normalmente, os aplicativos não definirão a propriedade de uma voz Enabled .
GetInstalledVoices()
Retorna todas as vozes de síntese (conversão de texto em fala) de fala instalados.
public:
System::Collections::ObjectModel::ReadOnlyCollection<System::Speech::Synthesis::InstalledVoice ^> ^ GetInstalledVoices();
public System.Collections.ObjectModel.ReadOnlyCollection<System.Speech.Synthesis.InstalledVoice> GetInstalledVoices ();
member this.GetInstalledVoices : unit -> System.Collections.ObjectModel.ReadOnlyCollection<System.Speech.Synthesis.InstalledVoice>
Public Function GetInstalledVoices () As ReadOnlyCollection(Of InstalledVoice)
Retornos
Retorna uma coleção somente leitura das vozes atualmente instaladas no sistema.
Exemplos
O exemplo a seguir faz parte de um aplicativo de console que inicializa um SpeechSynthesizer objeto e saídas para o console uma lista das vozes instaladas (mecanismos para síntese de fala) e demonstra as informações disponíveis para cada voz.
using System;
using System.Speech.Synthesis;
using System.Speech.AudioFormat;
namespace SampleSynthesis
{
class Program
{
static void Main(string[] args)
{
// Initialize a new instance of the SpeechSynthesizer.
using (SpeechSynthesizer synth = new SpeechSynthesizer())
{
// Output information about all of the installed voices.
Console.WriteLine("Installed voices -");
foreach (InstalledVoice voice in synth.GetInstalledVoices())
{
VoiceInfo info = voice.VoiceInfo;
string AudioFormats = "";
foreach (SpeechAudioFormatInfo fmt in info.SupportedAudioFormats)
{
AudioFormats += String.Format("{0}\n",
fmt.EncodingFormat.ToString());
}
Console.WriteLine(" Name: " + info.Name);
Console.WriteLine(" Culture: " + info.Culture);
Console.WriteLine(" Age: " + info.Age);
Console.WriteLine(" Gender: " + info.Gender);
Console.WriteLine(" Description: " + info.Description);
Console.WriteLine(" ID: " + info.Id);
Console.WriteLine(" Enabled: " + voice.Enabled);
if (info.SupportedAudioFormats.Count != 0)
{
Console.WriteLine( " Audio formats: " + AudioFormats);
}
else
{
Console.WriteLine(" No supported audio formats found");
}
string AdditionalInfo = "";
foreach (string key in info.AdditionalInfo.Keys)
{
AdditionalInfo += String.Format(" {0}: {1}\n", key, info.AdditionalInfo[key]);
}
Console.WriteLine(" Additional Info - " + AdditionalInfo);
Console.WriteLine();
}
}
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
}
}
Comentários
Uma voz é um mecanismo para síntese de fala (conversão de texto em fala ou TTS) que está instalado no sistema.
Confira também
Aplica-se a
GetInstalledVoices(CultureInfo)
Retorna todas as vozes de sintetização de fala (conversão de texto em fala) instaladas que dão suporte a uma localidade específica.
public:
System::Collections::ObjectModel::ReadOnlyCollection<System::Speech::Synthesis::InstalledVoice ^> ^ GetInstalledVoices(System::Globalization::CultureInfo ^ culture);
public System.Collections.ObjectModel.ReadOnlyCollection<System.Speech.Synthesis.InstalledVoice> GetInstalledVoices (System.Globalization.CultureInfo culture);
member this.GetInstalledVoices : System.Globalization.CultureInfo -> System.Collections.ObjectModel.ReadOnlyCollection<System.Speech.Synthesis.InstalledVoice>
Public Function GetInstalledVoices (culture As CultureInfo) As ReadOnlyCollection(Of InstalledVoice)
Parâmetros
- culture
- CultureInfo
A localidade a que a voz deve dar suporte.
Retornos
Retorna uma coleção somente leitura das vozes instaladas atualmente no sistema que dão suporte a uma localidade específica.
Exemplos
O exemplo a seguir faz parte de um aplicativo de console que inicializa um SpeechSynthesizer objeto e saídas para o console uma lista das vozes instaladas que dão suporte à localidade en-US.
using System;
using System.Globalization;
using System.Speech.Synthesis;
namespace SampleSynthesis
{
class Program
{
static void Main(string[] args)
{
// Initialize a new instance of the speech synthesizer.
using (SpeechSynthesizer synthesizer = new SpeechSynthesizer())
{
// Output information about all of the installed voices that
// support the en-US locale.
Console.WriteLine("Installed voices for the en-US locale:");
foreach (InstalledVoice voice in
synthesizer.GetInstalledVoices(new CultureInfo("en-US")))
{
VoiceInfo info = voice.VoiceInfo;
OutputVoiceInfo(info);
}
// Output information about the current voice.
Console.WriteLine();
Console.WriteLine("Current voice:");
OutputVoiceInfo(synthesizer.Voice);
}
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
// Display information about a synthesizer voice.
private static void OutputVoiceInfo(VoiceInfo info)
{
Console.WriteLine(" Name: {0}, culture: {1}, gender: {2}, age: {3}.",
info.Name, info.Culture, info.Gender, info.Age);
Console.WriteLine(" Description: {0}", info.Description);
}
}
}
Comentários
Se nenhuma das vozes instaladas der suporte à localidade especificada, esse método retornará uma coleção vazia.
Microsoft Windows e System. Speech API aceitam todos os códigos de país-idioma válidos. Para executar a conversão de texto em fala usando o idioma especificado na propriedade Culture, um mecanismo de síntese de fala que dá suporte a esse código de país de idioma deve ser instalado. Os mecanismos de síntese de fala fornecidos com o Microsoft Windows 7 funcionam com os seguintes códigos de país de idioma:
en-US. Inglês (Estados Unidos)
ZH-CN. Chinês (China)
zh-TW. Chinês (Taiwan)
Códigos de idioma de duas letras, como "en", também são permitidos.