Compartir por


SpeechRecognitionEngine Constructores

Definición

Inicializa una nueva instancia de la clase SpeechRecognitionEngine.

Sobrecargas

Nombre Description
SpeechRecognitionEngine()

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

SpeechRecognitionEngine(CultureInfo)

Inicializa una nueva instancia de la SpeechRecognitionEngine clase 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 RecognizerInfo objeto para especificar el reconocedor que se va a usar.

SpeechRecognitionEngine(String)

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

Comentarios

Puede construir 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

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

  • Motor de reconocimiento específico que cumple los criterios especificados en un RecognizerInfo objeto.

Para 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 método o LoadGrammarAsync .

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

SpeechRecognitionEngine()

Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs

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

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

Comentarios

Para 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 método o LoadGrammarAsync .

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

Se aplica a

SpeechRecognitionEngine(CultureInfo)

Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs

Inicializa una nueva instancia de la SpeechRecognitionEngine clase 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 debe admitir el reconocedor de voz.

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 de 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 mediante el idioma especificado en el CultureInfo argumento , se debe instalar un motor de reconocimiento de voz que admita ese código de país de idioma. 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. Inglés (Estados Unidos)

  • 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".

Para 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 método o LoadGrammarAsync .

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

Se aplica a

SpeechRecognitionEngine(RecognizerInfo)

Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs

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

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

Información del reconocedor de voz específico.

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 sobre qué reconocedores están instalados, use el InstalledRecognizers método .

Para 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 método o LoadGrammarAsync .

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

Se aplica a

SpeechRecognitionEngine(String)

Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs
Source:
SpeechRecognitionEngine.cs

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

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

Nombre del token del reconocedor de voz que se va a usar.

Excepciones

No hay ningún reconocedor de voz con ese nombre de token instalado o recognizerId es la 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 se crea una instancia de Speech Recognizer 8.0 para Windows (inglés - EE. UU.).

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 del 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 método estático InstalledRecognizers .

Para 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 método o LoadGrammarAsync .

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

Se aplica a