SpeechRecognitionEngine Clase

Definición

Proporciona los medios para obtener acceso y administrar un motor de reconocimiento de voz en curso.

public ref class SpeechRecognitionEngine : IDisposable
public class SpeechRecognitionEngine : IDisposable
type SpeechRecognitionEngine = class
    interface IDisposable
Public Class SpeechRecognitionEngine
Implements IDisposable
Herencia
SpeechRecognitionEngine
Implementaciones

Ejemplos

En el ejemplo siguiente se muestra parte de una aplicación de consola que muestra el reconocimiento de voz básico. Dado que en este ejemplo se usa el Multiple modo del RecognizeAsync método, realiza el reconocimiento hasta que cierre la ventana de la consola o detenga la depuración.

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);  
    }  
  }  
}  

Comentarios

Puede crear una instancia de esta clase para cualquiera de los reconocedores de voz instalados. Para obtener información acerca de los reconocedores instalados, use el InstalledRecognizers método estático.

Esta clase se usa para ejecutar motores de reconocimiento de voz en proceso y proporciona control sobre diversos aspectos del reconocimiento de voz, como se indica a continuación:

El SpeechRecognitionEngine objeto es para el uso exclusivo del proceso que creó la instancia del objeto. Por el contrario, el SpeechRecognizer comparte un único reconocedor con cualquier aplicación que desee usarlo.

Nota

Llame siempre Dispose antes de liberar la última referencia al reconocedor de voz. De lo contrario, los recursos que utiliza no se liberarán hasta que el recolector de elementos no utilizados llame al método del objeto del reconocedor Finalize .

Constructores

SpeechRecognitionEngine()

Inicializa una nueva instancia de la clase SpeechRecognitionEngine utilizando el reconocedor de voz predeterminado para el sistema.

SpeechRecognitionEngine(CultureInfo)

Inicializa una nueva instancia de la clase SpeechRecognitionEngine utilizando el reconocedor de voz predeterminado para una configuración regional especificada.

SpeechRecognitionEngine(RecognizerInfo)

Inicializa una nueva instancia de SpeechRecognitionEngine utilizando la información de un objeto RecognizerInfo para especificar el reconocedor que de va a utilizar.

SpeechRecognitionEngine(String)

Inicializa una nueva instancia de la clase SpeechRecognitionEngine con un parámetro de cadena que especifica el nombre del reconocedor que se va a utilizar.

Propiedades

AudioFormat

Obtiene el formato del sonido que es recibido por SpeechRecognitionEngine.

AudioLevel

Obtiene el nivel del sonido que es recibido por SpeechRecognitionEngine.

AudioPosition

Obtiene la ubicación actual en la secuencia audio generada por el dispositivo que está proporcionando entradas al módulo de SpeechRecognitionEngine.

AudioState

Obtiene el estado del sonido que es recibido por SpeechRecognitionEngine.

BabbleTimeout

Obtiene o establece el intervalo de tiempo durante el que SpeechRecognitionEngine acepta la entrada que contiene solo ruido de fondo, antes de finalizar el reconocimiento.

EndSilenceTimeout

Obtiene o establece el intervalo de silencio que SpeechRecognitionEngine aceptará al final de la entrada no ambigua antes de finalizar una operación de reconocimiento.

EndSilenceTimeoutAmbiguous

Obtiene o establece el intervalo de silencio que SpeechRecognitionEngine aceptará al final de la entrada ambigua antes de finalizar una operación de reconocimiento.

Grammars

Obtiene una colección de los objetos Grammar cargados en esta instancia SpeechRecognitionEngine.

InitialSilenceTimeout

Obtiene o establece el intervalo de tiempo durante el que SpeechRecognitionEngine acepta la entrada que contiene solo silencio, antes de finalizar el reconocimiento.

MaxAlternates

Obtiene o establece el número máximo de resultados alternativos de reconocimiento que el SpeechRecognitionEngine devuelve para cada operación de reconocimiento.

RecognizerAudioPosition

Obtiene la ubicación actual de SpeechRecognitionEngine en la entrada de audio que está procesando.

RecognizerInfo

Obtiene información acerca de la instancia actual de SpeechRecognitionEngine.

Métodos

Dispose()

Desecha el objeto SpeechRecognitionEngine.

Dispose(Boolean)

Desecha el objeto SpeechRecognitionEngine y libera los recursos utilizados durante la sesión.

EmulateRecognize(RecognizedWordUnit[], CompareOptions)

Emula la entrada de palabras específicas al módulo de reconocimiento de voz, usando texto en lugar de audio para el reconocimiento de voz sincrónico, y especifica cómo el reconocedor controla la comparación Unicode entre las palabras y las gramáticas reconocimiento de voz cargadas.

EmulateRecognize(String)

Emula la entrada de una frase al módulo de reconocimiento de voz, usando el texto en lugar de audio para el reconocimiento de voz sincrónico.

EmulateRecognize(String, CompareOptions)

Emula la entrada de una frase al módulo de reconocimiento de voz, usando texto en lugar de audio para el reconocimiento de voz sincrónico, y especifica cómo el reconocedor controla la comparación Unicode entre la frase y las gramáticas reconocimiento de voz cargadas.

EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions)

Emula la entrada de palabras específicas al módulo de reconocimiento de voz, usando una matriz de objetos RecognizedWordUnit en lugar de audio para el reconocimiento de voz asincrónico, y especifica cómo el reconocedor controla la comparación Unicode entre las palabras y las gramáticas reconocimiento de voz cargadas.

EmulateRecognizeAsync(String)

Emula la entrada de una frase al módulo de reconocimiento de voz, usando el texto en lugar de audio para el reconocimiento de voz asincrónico.

EmulateRecognizeAsync(String, CompareOptions)

Emula la entrada de una frase al módulo de reconocimiento de voz, usando texto en lugar de audio para el reconocimiento de voz asincrónico, y especifica cómo el reconocedor controla la comparación Unicode entre la frase y las gramáticas reconocimiento de voz cargadas.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
InstalledRecognizers()

Devuelve información para todos los reconocedores de voz instalados en el sistema actual.

LoadGrammar(Grammar)

De forma sincrónica carga un objeto Grammar.

LoadGrammarAsync(Grammar)

De forma asincrónica carga una gramática de reconocimiento de voz.

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
QueryRecognizerSetting(String)

Devuelve los valores de configuración para el reconocedor.

Recognize()

Realiza una operación de reconocimiento de voz sincrónica.

Recognize(TimeSpan)

Realiza una operación de reconocimiento de voz sincrónica con un tiempo de espera de silencio inicial especificado.

RecognizeAsync()

Realiza una operación de reconocimiento de voz asincrónica única.

RecognizeAsync(RecognizeMode)

Realiza una o más operaciones de reconocimiento de voz asincrónicas.

RecognizeAsyncCancel()

Finaliza el reconocimiento asincrónico sin esperar a que la operación actual de reconocimiento se complete.

RecognizeAsyncStop()

Detiene el reconocimiento asincrónico después de que se complete la operación actual de reconocimiento.

RequestRecognizerUpdate()

Solicita que el reconocedor pause para actualizar su estado.

RequestRecognizerUpdate(Object)

Solicita que el reconocedor pause para actualizar su estado y proporcione un token de usuario para el evento asociado.

RequestRecognizerUpdate(Object, TimeSpan)

Solicita que el reconocedor pause para actualizar su estado y proporcione un desplazamiento y un token de usuario para el evento asociado.

SetInputToAudioStream(Stream, SpeechAudioFormatInfo)

Configura el objeto SpeechRecognitionEngine para recibir entradas de una secuencia de audio.

SetInputToDefaultAudioDevice()

Configura el objeto SpeechRecognitionEngine para recibir entradas del dispositivo de audio predeterminado.

SetInputToNull()

Deshabilita la entrada al módulo de reconocimiento de voz.

SetInputToWaveFile(String)

Configura el objeto SpeechRecognitionEngine para recibir entradas de un archivo de formato de audio de forma de onda (.wav).

SetInputToWaveStream(Stream)

Configura el objeto SpeechRecognitionEngine para recibir entradas de un flujo que contiene datos de formato de audio de forma de onda (.wav).

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
UnloadAllGrammars()

Descarga todos los objetos Grammar del reconocedor.

UnloadGrammar(Grammar)

Descarga un objeto Grammar especificado de la instancia de SpeechRecognitionEngine.

UpdateRecognizerSetting(String, Int32)

Actualiza el valor especificado para SpeechRecognitionEngine con el valor entero especificado.

UpdateRecognizerSetting(String, String)

Actualiza el valor especificado del motor de reconocimiento de voz con el valor de cadena especificado.

Eventos

AudioLevelUpdated

Se genera cuando SpeechRecognitionEngine indica el nivel de su entrada de audio.

AudioSignalProblemOccurred

Se genera cuando SpeechRecognitionEngine detecta un problema en la señal de audio.

AudioStateChanged

Se genera cuando cambia el estado en el sonido que recibe el SpeechRecognitionEngine.

EmulateRecognizeCompleted

Se genera cuando SpeechRecognitionEngine concluye una operación de reconocimiento asincrónica de entrada emulada.

LoadGrammarCompleted

Se genera cuando SpeechRecognitionEngine finaliza la carga asincrónica de un objeto Grammar.

RecognizeCompleted

Se genera cuando SpeechRecognitionEngine concluye una operación de reconocimiento asincrónica.

RecognizerUpdateReached

Se genera cuando un objeto SpeechRecognitionEngine en ejecución hace una pausa para aceptar modificaciones.

SpeechDetected

Se genera cuando SpeechRecognitionEngine detecta una entrada que puede identificar como voz.

SpeechHypothesized

Se genera cuando SpeechRecognitionEngine ha reconocido una palabra o palabras que pueden ser un componente de varias frases completas en una gramática.

SpeechRecognitionRejected

Se genera cuando SpeechRecognitionEngine recibe una entrada que no coincide con ninguno de los objetos Grammar cargados y habilitados.

SpeechRecognized

Se genera cuando SpeechRecognitionEngine recibe una entrada que coincide con cualquiera de los objetos Grammar cargados y habilitados.

Se aplica a

Consulte también