SpeechRecognitionEngine Classe
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.
Fornece os meios de acessar e gerenciar um mecanismo de reconhecimento de fala no processo.
public ref class SpeechRecognitionEngine : IDisposable
public class SpeechRecognitionEngine : IDisposable
type SpeechRecognitionEngine = class
interface IDisposable
Public Class SpeechRecognitionEngine
Implements IDisposable
- Herança
-
SpeechRecognitionEngine
- Implementações
Exemplos
O exemplo a seguir mostra parte de um aplicativo de console que demonstra o reconhecimento de fala básico. Como este exemplo usa o Multiple
modo do RecognizeAsync método, ele executa o reconhecimento até que você feche a janela do console ou interrompa a depuração.
using System;
using System.Speech.Recognition;
namespace SpeechRecognitionApp
{
class Program
{
static void Main(string[] args)
{
// Create an in-process speech recognizer for the en-US locale.
using (
SpeechRecognitionEngine recognizer =
new SpeechRecognitionEngine(
new System.Globalization.CultureInfo("en-US")))
{
// Create and load a dictation grammar.
recognizer.LoadGrammar(new DictationGrammar());
// Add a handler for the speech recognized event.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
// Configure input to the speech recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Start asynchronous, continuous speech recognition.
recognizer.RecognizeAsync(RecognizeMode.Multiple);
// Keep the console window open.
while (true)
{
Console.ReadLine();
}
}
}
// Handle the SpeechRecognized event.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine("Recognized text: " + e.Result.Text);
}
}
}
Comentários
Você pode criar uma instância dessa classe para qualquer um dos reconhecedores de fala instalados. Para obter informações sobre quais reconhecedores estão instalados, use o InstalledRecognizers método estático.
Essa classe é para executar mecanismos de reconhecimento de fala em processo e fornece controle sobre vários aspectos do reconhecimento de fala, da seguinte maneira:
Para criar um reconhecedor de fala em processo, use um dos SpeechRecognitionEngine construtores.
Para gerenciar as gramáticas de reconhecimento de fala, use os LoadGrammar métodos,, e e LoadGrammarAsync UnloadGrammar UnloadAllGrammars a Grammars propriedade.
Para configurar a entrada para o reconhecedor, use SetInputToAudioStream o SetInputToDefaultAudioDevice método,, SetInputToNull , SetInputToWaveFile ou SetInputToWaveStream .
Para executar o reconhecimento de fala, use o Recognize RecognizeAsync método ou.
Para modificar como o reconhecimento manipula a latência ou a entrada inesperada, use as BabbleTimeout InitialSilenceTimeout Propriedades,, e EndSilenceTimeout EndSilenceTimeoutAmbiguous .
Para alterar o número de alternativas que o reconhecedor retorna, use a MaxAlternates propriedade. O reconhecedor retorna resultados de reconhecimento em um RecognitionResult objeto.
Para sincronizar as alterações para o reconhecedor, use o RequestRecognizerUpdate método. O reconhecedor usa mais de um thread para executar tarefas.
Para emular a entrada para o reconhecedor, use os EmulateRecognize EmulateRecognizeAsync métodos e.
O SpeechRecognitionEngine objeto é para o uso único do processo que instanciou o objeto. Por outro lado, o SpeechRecognizer compartilha um único reconhecedor com qualquer aplicativo que queira usá-lo.
Observação
Sempre chame Dispose antes de liberar sua última referência para o reconhecedor de fala. Caso contrário, os recursos que ele está usando não serão liberados até que o coletor de lixo chame o método do objeto Recognizer Finalize
.
Construtores
SpeechRecognitionEngine() |
Inicializa uma nova instância da classe SpeechRecognitionEngine usando o reconhecedor de fala padrão do sistema. |
SpeechRecognitionEngine(CultureInfo) |
Inicializa uma nova instância da classe SpeechRecognitionEngine usando o reconhecedor de fala padrão de uma localidade específica. |
SpeechRecognitionEngine(RecognizerInfo) |
Inicializa uma nova instância do SpeechRecognitionEngine usando as informações em um objeto RecognizerInfo para especificar o reconhecedor a ser usado. |
SpeechRecognitionEngine(String) |
Inicializa uma nova instância da classe SpeechRecognitionEngine com um parâmetro de cadeia de caracteres que especifica o nome do reconhecedor a ser usado. |
Propriedades
AudioFormat |
Obtém o formato de áudio sendo recebido pelo SpeechRecognitionEngine. |
AudioLevel |
Obtém o nível do áudio sendo recebido pelo SpeechRecognitionEngine. |
AudioPosition |
Obtém o local atual no fluxo de áudio que está sendo gerado pelo dispositivo que está fornecendo a entrada para o SpeechRecognitionEngine. |
AudioState |
Obtém o nível do áudio sendo recebido pelo SpeechRecognitionEngine. |
BabbleTimeout |
Obtém ou define o intervalo de tempo durante o qual um SpeechRecognitionEngine aceita entrada contendo apenas ruídos de fundo, antes de finalizar o reconhecimento. |
EndSilenceTimeout |
Obtém ou define o intervalo de silêncio que o SpeechRecognitionEngine aceitará ao final de uma entrada não ambígua antes de finalizar uma operação de reconhecimento. |
EndSilenceTimeoutAmbiguous |
Obtém ou define o intervalo de silêncio que o SpeechRecognitionEngine aceitará ao final de uma entrada ambígua antes de finalizar uma operação de reconhecimento. |
Grammars |
Obtém uma coleção de objetos Grammar carregados nessa instância SpeechRecognitionEngine. |
InitialSilenceTimeout |
Obtém ou define o intervalo de tempo durante o qual um SpeechRecognitionEngine aceita entradas contendo apenas silêncio antes de finalizar o reconhecimento. |
MaxAlternates |
Obtém ou define o número máximo de resultados alternativos de reconhecimento que o SpeechRecognitionEngine retorna para cada operação de reconhecimento. |
RecognizerAudioPosition |
Obtém o local atual do SpeechRecognitionEngine na entrada de áudio que está sendo processada. |
RecognizerInfo |
Obtém informações sobre a instância atual de SpeechRecognitionEngine. |
Métodos
Dispose() |
Descarta o objeto SpeechRecognitionEngine. |
Dispose(Boolean) |
Descarta o objeto SpeechRecognitionEngine e libera os recursos usados durante a sessão. |
EmulateRecognize(RecognizedWordUnit[], CompareOptions) |
Emula a entrada de palavras específicas no reconhecedor de fala usando texto em vez de áudio para o reconhecimento de fala síncrono e especifica como o reconhecedor trata a comparação Unicode entre as palavras e as gramáticas do reconhecimento de fala carregado. |
EmulateRecognize(String) |
Emula a entrada de uma fase para o reconhecedor de fala usando o texto no lugar do áudio para o reconhecimento de fala síncrono. |
EmulateRecognize(String, CompareOptions) |
Emula a entrada de uma frase no reconhecedor de fala usando texto em vez de áudio para o reconhecimento de fala síncrono e especifica como o reconhecedor trata a comparação Unicode entre a frase e as gramáticas do reconhecimento de fala carregado. |
EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions) |
Emula a entrada de palavras específicas no reconhecedor de fala usando uma matriz de objetos RecognizedWordUnit em vez de áudio para o reconhecimento de fala assíncrono e especifica como o reconhecedor trata a comparação Unicode entre as palavras e as gramáticas do reconhecimento de fala carregado. |
EmulateRecognizeAsync(String) |
Emula a entrada de uma fase para o reconhecedor de fala usando o texto no lugar do áudio para o reconhecimento de fala assíncrono. |
EmulateRecognizeAsync(String, CompareOptions) |
Emula a entrada de uma frase no reconhecedor de fala usando texto em vez de áudio para o reconhecimento de fala assíncrono e especifica como o reconhecedor trata a comparação Unicode entre a frase e as gramáticas do reconhecimento de fala carregado. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
InstalledRecognizers() |
Retorna as informações de todos os identificadores de fala instalados no sistema atual. |
LoadGrammar(Grammar) |
Carrega de forma síncrona um objeto Grammar. |
LoadGrammarAsync(Grammar) |
Carrega de forma assíncrona uma gramática de reconhecimento de fala. |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
QueryRecognizerSetting(String) |
Retorna os valores das configurações do reconhecedor. |
Recognize() |
Executa uma operação de reconhecimento de fala síncrona. |
Recognize(TimeSpan) |
Executa uma operação síncrona de reconhecimento de fala com um período de tempo limite de silêncio inicial especificado. |
RecognizeAsync() |
Executa uma única operação de reconhecimento de fala síncrona. |
RecognizeAsync(RecognizeMode) |
Executa uma ou mais operações de reconhecimento de fala assíncronas. |
RecognizeAsyncCancel() |
Encerra o reconhecimento assíncrono sem esperar que a operação de reconhecimento atual seja concluída. |
RecognizeAsyncStop() |
Interrompe o reconhecimento assíncrono após a conclusão da operação de reconhecimento atual. |
RequestRecognizerUpdate() |
Solicita que o reconhecedor pause para atualizar seu estado. |
RequestRecognizerUpdate(Object) |
Solicita que o reconhecedor pause para atualizar seu estado e forneça um token de usuário para o evento associado. |
RequestRecognizerUpdate(Object, TimeSpan) |
Solicita que o reconhecedor pause para atualizar seu estado e forneça deslocamento e um token de usuário para o evento associado. |
SetInputToAudioStream(Stream, SpeechAudioFormatInfo) |
Configura o objeto SpeechRecognitionEngine para receber entrada de um fluxo de áudio. |
SetInputToDefaultAudioDevice() |
Configura o objeto SpeechRecognitionEngine para receber a entrada do dispositivo de áudio padrão. |
SetInputToNull() |
Desabilita a entrada para o reconhecedor de fala. |
SetInputToWaveFile(String) |
Configura o objeto SpeechRecognitionEngine para receber entrada de um arquivo de formato de áudio Waveform (.wav). |
SetInputToWaveStream(Stream) |
Configura o objeto SpeechRecognitionEngine para receber a entrada de um fluxo que contém dados de formato de áudio Waveform (.wav). |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
UnloadAllGrammars() |
Descarrega todos os objetos Grammar do reconhecedor. |
UnloadGrammar(Grammar) |
Descarrega um objeto Grammar especificado da instância SpeechRecognitionEngine. |
UpdateRecognizerSetting(String, Int32) |
Atualiza a configuração especificada para o SpeechRecognitionEngine com o valor inteiro especificado. |
UpdateRecognizerSetting(String, String) |
Atualiza a configuração de mecanismo de reconhecimento de fala especificado com o valor de cadeia de caracteres especificada. |
Eventos
AudioLevelUpdated |
Gerado quando o SpeechRecognitionEngine relata o nível de sua entrada de áudio. |
AudioSignalProblemOccurred |
Gerado quando o SpeechRecognitionEngine detecta um problema no sinal de áudio. |
AudioStateChanged |
Gerado quando o estado é alterado no áudio que está sendo recebido pelo SpeechRecognitionEngine. |
EmulateRecognizeCompleted |
Gerado quando o SpeechRecognitionEngine finaliza uma operação de reconhecimento assíncrono da entrada emulada. |
LoadGrammarCompleted |
Gerado quando o SpeechRecognitionEngine termina o carregamento assíncrono de um Grammar objeto. |
RecognizeCompleted |
Acionado quando o SpeechRecognitionEngine finaliza uma operação assíncrona de reconhecimento. |
RecognizerUpdateReached |
Gerado quando um SpeechRecognitionEngine em execução pausa para aceitar modificações. |
SpeechDetected |
Gerado quando o SpeechRecognitionEngine detecta a entradas que podem ser identificadas como fala. |
SpeechHypothesized |
Gerada quando o SpeechRecognitionEngine tiver reconhecido uma palavra ou palavras que podem ser um componente de várias frases completas em uma gramática. |
SpeechRecognitionRejected |
Gerado quando o SpeechRecognitionEngine recebe uma entrada que não corresponde a nenhum de seus objetos Grammar carregados e habilitados. |
SpeechRecognized |
Gerado quando o SpeechRecognitionEngine recebe uma entrada que corresponde a um de seus objetos Grammar carregados e habilitados. |