Especificar o idioma do reconhecedor de fala

Aprenda a selecionar uma língua instalada para reconhecimento de voz na sua aplicação SDK de Aplicações Windows.

Importante

O reconhecimento de voz requer a identidade do pacote MSIX. As APIs Windows.Media.SpeechRecognition estão disponíveis apenas quando a sua aplicação é executada com identidade de pacote (empacotada ou empacotada com localização externa). As aplicações não embaladas não podem usar estas APIs.

APIs principais

Descrição geral

Por defeito, o reconhecedor de voz utiliza a linguagem do sistema instalada para o reconhecimento de voz. Passe um Windows.Globalization.Language objeto ao SpeechRecognizer construtor para selecionar uma linguagem diferente.

A sua aplicação deve usar uma linguagem suportada no dispositivo do utilizador. Use a SpeechRecognizer.SupportedTopicLanguages propriedade ou SpeechRecognizer.SupportedGrammarLanguages para determinar quais as línguas disponíveis.

Definir a linguagem de reconhecimento

Especifique a linguagem passando um Language objeto ao SpeechRecognizer construtor:

var language = new Windows.Globalization.Language("en-US");
var speechRecognizer = new Windows.Media.SpeechRecognition.SpeechRecognizer(language);

Determinar as línguas suportadas

O exemplo seguinte mostra como verificar quais as linguagens de tópicos suportadas e exibi-las:

var topicLanguages = Windows.Media.SpeechRecognition.SpeechRecognizer.SupportedTopicLanguages;

foreach (var lang in topicLanguages)
{
    var languageTag = lang.LanguageTag;
    var displayName = lang.DisplayName;
    // Present these to the user for selection.
}

O exemplo seguinte verifica quais as linguagens gramaticais disponíveis:

var grammarLanguages = Windows.Media.SpeechRecognition.SpeechRecognizer.SupportedGrammarLanguages;

foreach (var lang in grammarLanguages)
{
    var languageTag = lang.LanguageTag;
    var displayName = lang.DisplayName;
}

Note

As línguas temáticas (ditado e pesquisa na web) são processadas por um serviço online e não estão limitadas pela instalação local dos pacotes de linguagem de fala. As linguagens gramaticais (restrições de listas e SRGS) são processadas no dispositivo e requerem a instalação do correspondente pacote de linguagem de fala.