Compartir vía


SpeechRecognitionEngine Constructores

Definición

Inicializa una nueva instancia de la clase SpeechRecognitionEngine.

Sobrecargas

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.

Comentarios

Puede crear una SpeechRecognitionEngine instancia de a partir de cualquiera de las siguientes opciones:

  • Motor de reconocimiento de voz predeterminado para el sistema

  • Un motor de reconocimiento de voz específico que especifique por nombre

  • El motor de reconocimiento de voz predeterminado para una configuración regional que especifique

  • Un motor de reconocimiento específico que cumpla los criterios especificados en un RecognizerInfo objeto.

Antes de que el reconocedor de voz pueda comenzar el reconocimiento, debe cargar al menos una gramática de reconocimiento de voz y configurar la entrada para el reconocedor.

Para cargar una gramática, llame al LoadGrammar LoadGrammarAsync método o.

Para configurar la entrada de audio, use uno de los métodos siguientes:

SpeechRecognitionEngine()

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

public:
 SpeechRecognitionEngine();
public SpeechRecognitionEngine ();
Public Sub New ()

Comentarios

Antes de que el reconocedor de voz pueda comenzar el reconocimiento de voz, debe cargar al menos una gramática de reconocimiento y configurar la entrada para el reconocedor.

Para cargar una gramática, llame al LoadGrammar LoadGrammarAsync método o.

Para configurar la entrada de audio, use uno de los métodos siguientes:

Se aplica a

SpeechRecognitionEngine(CultureInfo)

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

public:
 SpeechRecognitionEngine(System::Globalization::CultureInfo ^ culture);
public SpeechRecognitionEngine (System.Globalization.CultureInfo culture);
new System.Speech.Recognition.SpeechRecognitionEngine : System.Globalization.CultureInfo -> System.Speech.Recognition.SpeechRecognitionEngine
Public Sub New (culture As CultureInfo)

Parámetros

culture
CultureInfo

Configuración regional que el módulo de reconocimiento de voz debe admitir.

Excepciones

Ninguno de los reconocedores de voz instalados admite la configuración regional especificada, o culture es la referencia cultural invariable.

Culture es null.

Ejemplos

En el ejemplo siguiente se muestra parte de una aplicación de consola que muestra el reconocimiento de voz básico e inicializa un reconocedor de voz para la configuración regional en-US.

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

Microsoft Windows y System. Speech API aceptan todos los códigos de país de idioma válidos. Para realizar el reconocimiento de voz con el idioma especificado en el CultureInfo argumento, se debe instalar un motor de reconocimiento de voz que admita ese código de país. Los motores de reconocimiento de voz que se incluyen con Microsoft Windows 7 funcionan con los siguientes códigos de país de idioma.

  • en-GB. Inglés (Reino Unido)

  • en-US. Spanish (Traditional Sort) - Spain

  • de-DE. Alemán (Alemania)

  • es-ES. Español (España)

  • fr-FR. Francés (Francia)

  • ja-JP. Japonés (Japón)

  • zh-CN. Chino (China)

  • zh-TW. Chino (Taiwán)

También se permiten códigos de idioma de dos letras, como "en", "fr" o "es".

Antes de que el reconocedor de voz pueda comenzar el reconocimiento, debe cargar al menos una gramática de reconocimiento de voz y configurar la entrada para el reconocedor.

Para cargar una gramática, llame al LoadGrammar LoadGrammarAsync método o.

Para configurar la entrada de audio, use uno de los métodos siguientes:

Se aplica a

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.

public:
 SpeechRecognitionEngine(System::Speech::Recognition::RecognizerInfo ^ recognizerInfo);
public SpeechRecognitionEngine (System.Speech.Recognition.RecognizerInfo recognizerInfo);
new System.Speech.Recognition.SpeechRecognitionEngine : System.Speech.Recognition.RecognizerInfo -> System.Speech.Recognition.SpeechRecognitionEngine
Public Sub New (recognizerInfo As RecognizerInfo)

Parámetros

recognizerInfo
RecognizerInfo

La información del módulo de reconocimiento de voz concreto.

Ejemplos

En el ejemplo siguiente se muestra parte de una aplicación de consola que muestra el reconocimiento de voz básico e inicializa un reconocedor de voz que admite el idioma inglés.

 using System;  
using System.Speech.Recognition;  

namespace SpeechRecognitionApp  
{  
  class Program  
  {  
    static void Main(string[] args)  
    {  

      // Select a speech recognizer that supports English.  
      RecognizerInfo info = null;  
      foreach (RecognizerInfo ri in SpeechRecognitionEngine.InstalledRecognizers())  
      {  
        if (ri.Culture.TwoLetterISOLanguageName.Equals("en"))  
        {  
          info = ri;  
          break;  
        }  
      }  
      if (info == null) return;  

      // Create the selected recognizer.  
      using (SpeechRecognitionEngine recognizer =  
        new SpeechRecognitionEngine(info))  
      {  

        // 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.

Antes de que el reconocedor de voz pueda comenzar el reconocimiento, debe cargar al menos una gramática de reconocimiento de voz y configurar la entrada para el reconocedor.

Para cargar una gramática, llame al LoadGrammar LoadGrammarAsync método o.

Para configurar la entrada de audio, use uno de los métodos siguientes:

Se aplica a

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.

public:
 SpeechRecognitionEngine(System::String ^ recognizerId);
public SpeechRecognitionEngine (string recognizerId);
new System.Speech.Recognition.SpeechRecognitionEngine : string -> System.Speech.Recognition.SpeechRecognitionEngine
Public Sub New (recognizerId As String)

Parámetros

recognizerId
String

El nombre de token de módulo de reconocimiento de voz para usar.

Excepciones

No se instala ningún reconocedor de voz con ese nombre de token o recognizerId es una cadena vacía ("").

recognizerId es null.

Ejemplos

En el ejemplo siguiente se muestra parte de una aplicación de consola que muestra el reconocimiento de voz básico y crea una instancia del reconocedor de voz 8,0 para Windows (Inglés-Estados Unidos).

using System;  
using System.Speech.Recognition;  

namespace SpeechRecognitionApp  
{  
  class Program  
  {  
    static void Main(string[] args)  
    {  

      // Create an instance of the Microsoft Speech Recognizer 8.0 for  
      // Windows (English - US).  
      using (SpeechRecognitionEngine recognizer =  
        new SpeechRecognitionEngine("MS-1033-80-DESK"))  
      {  

        // Create and load a dictation grammar.  
        recognizer.LoadGrammar(new DictationGrammar());  

        // Add a handler for the speech recognized event.  
        recognizer.SpeechRecognized += new EventHandler(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

El nombre de token del reconocedor es el valor de la Id propiedad del RecognizerInfo objeto devuelto por la RecognizerInfo propiedad del reconocedor. Para obtener una colección de todos los reconocedores instalados, use el InstalledRecognizers método estático.

Antes de que el reconocedor de voz pueda comenzar el reconocimiento, debe cargar al menos una gramática de reconocimiento de voz y configurar la entrada para el reconocedor.

Para cargar una gramática, llame al LoadGrammar LoadGrammarAsync método o.

Para configurar la entrada de audio, use uno de los métodos siguientes:

Se aplica a