SpeechRecognitionEngine Konstruktoren

Definition

Initialisiert eine neue Instanz der SpeechRecognitionEngine-Klasse.

Überlädt

SpeechRecognitionEngine()

Initialisiert eine neue Instanz der SpeechRecognitionEngine-Klasse mithilfe des angegebenen Standardspracherkennungsmoduls für das System.

SpeechRecognitionEngine(CultureInfo)

Initialisiert mithilfe des angegebenen Standardspracherkennungsmoduls für ein angegebenes Gebietsschema eine neue Instanz der SpeechRecognitionEngine-Klasse.

SpeechRecognitionEngine(RecognizerInfo)

Initialisiert eine neue Instanz SpeechRecognitionEngine mithilfe der Informationen in einem RecognizerInfo-Objekt, um die zu verwendende Erkennung anzugeben.

SpeechRecognitionEngine(String)

Initialisiert eine neue Instanz der SpeechRecognitionEngine-Klasse mit einem Zeichenfolgenparameter, der den Namen der zu verwendenden Erkennung angibt.

Hinweise

Sie können eine- SpeechRecognitionEngine Instanz aus einer der folgenden Methoden erstellen:

  • Die standardmäßige Spracherkennungs-Engine für das System

  • Eine bestimmte Spracherkennungs-Engine, die Sie nach Namen angeben

  • Die standardmäßige Spracherkennungs-Engine für ein Gebiets Schema, das Sie angeben.

  • Eine bestimmte Erkennungs-Engine, die die Kriterien erfüllt, die Sie in einem- RecognizerInfo Objekt angeben.

Bevor die Spracherkennung mit der Erkennung beginnen kann, müssen Sie mindestens eine sprach Erkennungs Grammatik laden und die Eingabe für die Erkennung konfigurieren.

Um eine Grammatik zu laden, müssen Sie die- LoadGrammar Methode oder die- LoadGrammarAsync Methode

Um die Audioeingabe zu konfigurieren, verwenden Sie eine der folgenden Methoden:

SpeechRecognitionEngine()

Initialisiert eine neue Instanz der SpeechRecognitionEngine-Klasse mithilfe des angegebenen Standardspracherkennungsmoduls für das System.

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

Hinweise

Bevor die Spracherkennung die Spracherkennung beginnen kann, müssen Sie mindestens eine Erkennungs Grammatik laden und die Eingabe für die Erkennung konfigurieren.

Um eine Grammatik zu laden, müssen Sie die- LoadGrammar Methode oder die- LoadGrammarAsync Methode

Um die Audioeingabe zu konfigurieren, verwenden Sie eine der folgenden Methoden:

Gilt für

SpeechRecognitionEngine(CultureInfo)

Initialisiert mithilfe des angegebenen Standardspracherkennungsmoduls für ein angegebenes Gebietsschema eine neue Instanz der SpeechRecognitionEngine-Klasse.

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)

Parameter

culture
CultureInfo

Das Gebietsschema, das die Spracherkennung unterstützen muss.

Ausnahmen

Keine der installierten Spracherkennungen unterstützen das angegebene Gebietsschema, oder culture ist die invariante Kultur.

Culture ist null.

Beispiele

Das folgende Beispiel zeigt einen Teil einer Konsolenanwendung, die die grundlegende Spracherkennung veranschaulicht und eine Spracherkennung für das Gebiets Schema "en-US" initialisiert.

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

Hinweise

Microsoft Windows und die System. Speech-API akzeptieren alle gültigen sprach Ländercodes. Um die Spracherkennung mithilfe der im-Argument angegebenen Sprache durchzuführen CultureInfo , muss eine sprach Erkennungs-Engine installiert werden, die diesen Sprachen-Ländercode unterstützt. Die Spracherkennungs-Engines, die mit Microsoft Windows 7 ausgeliefert wurden, funktionieren mit den folgenden Programmiersprachen.

  • en-GB. Walisisch (Großbritannien)

  • en-US. Englisch (USA)

  • de-de. Deutsch (Deutschland)

  • es-es. Spanisch (Spanien)

  • fr-fr. Französisch (Frankreich)

  • ja-JP. Japanisch (Japan)

  • zh-cn. Chinesisch (China)

  • zh-tw. Chinesisch (Taiwan)

Sprachcodes mit zwei Buchstaben, z. b. "en", "fr" oder "es", sind ebenfalls zulässig.

Bevor die Spracherkennung mit der Erkennung beginnen kann, müssen Sie mindestens eine sprach Erkennungs Grammatik laden und die Eingabe für die Erkennung konfigurieren.

Um eine Grammatik zu laden, müssen Sie die- LoadGrammar Methode oder die- LoadGrammarAsync Methode

Um die Audioeingabe zu konfigurieren, verwenden Sie eine der folgenden Methoden:

Gilt für

SpeechRecognitionEngine(RecognizerInfo)

Initialisiert eine neue Instanz SpeechRecognitionEngine mithilfe der Informationen in einem RecognizerInfo-Objekt, um die zu verwendende Erkennung anzugeben.

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)

Parameter

recognizerInfo
RecognizerInfo

Die Informationen für die angegebene Spracherkennung.

Beispiele

Das folgende Beispiel zeigt einen Teil einer Konsolenanwendung, die die grundlegende Spracherkennung veranschaulicht und eine Spracherkennung initialisiert, die die englische Sprache unterstützt.

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

Hinweise

Sie können eine Instanz dieser Klasse für alle installierten Sprach Erkennungsmethoden erstellen. Verwenden Sie die-Methode, um Informationen darüber zu erhalten, welche erkenatoren installiert sind InstalledRecognizers .

Bevor die Spracherkennung mit der Erkennung beginnen kann, müssen Sie mindestens eine sprach Erkennungs Grammatik laden und die Eingabe für die Erkennung konfigurieren.

Um eine Grammatik zu laden, müssen Sie die- LoadGrammar Methode oder die- LoadGrammarAsync Methode

Um die Audioeingabe zu konfigurieren, verwenden Sie eine der folgenden Methoden:

Gilt für

SpeechRecognitionEngine(String)

Initialisiert eine neue Instanz der SpeechRecognitionEngine-Klasse mit einem Zeichenfolgenparameter, der den Namen der zu verwendenden Erkennung angibt.

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)

Parameter

recognizerId
String

Der Tokenname, den die Spracherkennung verwenden soll.

Ausnahmen

Keine Spracherkennung mit diesem Tokennamen ist installiert, oder recognizerId ist die leere Zeichenfolge ("").

recognizerId ist null.

Beispiele

Das folgende Beispiel zeigt einen Teil einer Konsolenanwendung, die die grundlegende Spracherkennung veranschaulicht und eine Instanz der Spracherkennung 8,0 für Windows (Englisch-US) erstellt.

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

Hinweise

Der Tokenname der Erkennung ist der Wert der- Id Eigenschaft des-Objekts, das RecognizerInfo von der- RecognizerInfo Eigenschaft der Erkennung zurückgegeben wird. Verwenden Sie die statische-Methode, um eine Sammlung aller installierten erkenungen zu erhalten InstalledRecognizers .

Bevor die Spracherkennung mit der Erkennung beginnen kann, müssen Sie mindestens eine sprach Erkennungs Grammatik laden und die Eingabe für die Erkennung konfigurieren.

Um eine Grammatik zu laden, müssen Sie die- LoadGrammar Methode oder die- LoadGrammarAsync Methode

Um die Audioeingabe zu konfigurieren, verwenden Sie eine der folgenden Methoden:

Gilt für