SpeechRecognitionEngine Klasse

Definition

Stellt die Möglichkeit bereit, auf eine prozessinterne Spracherkennungs-Engine zuzugreifen und dieses zu verwalten.

public ref class SpeechRecognitionEngine : IDisposable
public class SpeechRecognitionEngine : IDisposable
type SpeechRecognitionEngine = class
    interface IDisposable
Public Class SpeechRecognitionEngine
Implements IDisposable
Vererbung
SpeechRecognitionEngine
Implementiert

Beispiele

Das folgende Beispiel zeigt einen Teil einer Konsolenanwendung, die die grundlegende Spracherkennung veranschaulicht. Da in diesem Beispiel der Multiple Modus der- RecognizeAsync Methode verwendet wird, wird die Erkennung ausgeführt, bis Sie das Konsolenfenster schließen oder das Debuggen beenden.

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

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

Diese Klasse dient zum Prozess internen Ausführen von sprach Erkennungs Modulen und bietet folgende Kontrolle über verschiedene Aspekte der Spracherkennung:

Das- SpeechRecognitionEngine Objekt dient der alleinigen Verwendung des-Prozesses, der das-Objekt instanziiert hat. Im Gegensatz dazu wird von SpeechRecognizer eine einzelne Erkennungsfunktion mit jeder Anwendung gemeinsam genutzt, die Sie verwenden möchten.

Hinweis

Wird immer aufgerufen Dispose , bevor Sie den letzten Verweis auf die Spracherkennung freigeben. Andernfalls werden die verwendeten Ressourcen nicht freigegeben, bis die Garbage Collector die-Methode des Erkennungs Moduls aufruft Finalize .

Konstruktoren

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.

Eigenschaften

AudioFormat

Ruft das Audioformat ab, das von SpeechRecognitionEngine empfangen wird.

AudioLevel

Ruft den Level des Audiosignals ab, die von der SpeechRecognitionEngine empfangen wird.

AudioPosition

Ruft die aktuelle Position im Audiostream ab, die durch das Gerät generiert wird, das die SpeechRecognitionEngine mit Eingaben versorgt.

AudioState

Ruft den Status des von SpeechRecognitionEngine empfangenen Audiosignals ab.

BabbleTimeout

Ruft das Zeitintervall ab oder legt dieses fest, während dessen eine SpeechRecognitionEngine Eingaben akzeptiert, welche nur Hintergrundgeräusche enthalten, bevor die Erkennung abgeschlossen wird.

EndSilenceTimeout

Ruft das Ruheintervall auf oder legt dieses fest, welches die SpeechRecognitionEngine am Ende von eindeutiger Eingabe akzeptieren wird, bevor ein Erkennungsvorgang finalisiert wird.

EndSilenceTimeoutAmbiguous

Ruft das Ruheintervall auf oder legt dieses fest, welches die SpeechRecognitionEngine am Ende von mehrdeutiger Eingabe akzeptieren wird, bevor ein Erkennungsvorgang finalisiert wird.

Grammars

Ruft eine Auflistung der Grammar-Objekte ab, die in diese SpeechRecognitionEngine-Instanz geladen werden.

InitialSilenceTimeout

Ruft das Zeitintervall ab oder legt dieses fest, während eine SpeechRecognitionEngine Eingaben akzeptiert, welche keine Geräusche enthalten, bevor die Erkennung abgeschlossen wird.

MaxAlternates

Ruft die Höchstzahl alternativer Erkennungsergebnisse ab oder legt diese fest, welche die SpeechRecognitionEngine für jeden Erkennungsvorgang zurückgibt.

RecognizerAudioPosition

Ruft die aktuelle Position von SpeechRecognitionEngine in der Audioeingabe ab, die verarbeitet wird.

RecognizerInfo

Ruft Informationen über die aktuelle Instanz von SpeechRecognitionEngine ab.

Methoden

Dispose()

Gibt das SpeechRecognitionEngine-Objekt frei.

Dispose(Boolean)

Verwirft das SpeechRecognitionEngine-Objekt und gibt Ressourcen frei, die während der Sitzung verwendet werden.

EmulateRecognize(RecognizedWordUnit[], CompareOptions)

Emuliert die Eingabe bestimmter Wörter für die Spracherkennung. Dabei wird Text statt Audio für die synchrone Spracherkennung verwendet und festgelegt, wie die Erkennung Unicode-Vergleich zwischen den Wörtern und den geladenen Spracherkennungsgrammatiken behandelt.

EmulateRecognize(String)

Emuliert die Eingabe eines Ausdrucks für die Spracherkennung. Dabei wird Text statt Audio für die synchrone Spracherkennung verwendet.

EmulateRecognize(String, CompareOptions)

Emuliert die Eingabe eines Ausdrucks für die Spracherkennung. Dabei wird Text statt Audio für die synchrone Spracherkennung verwendet und festgelegt, wie die Erkennung Unicode-Vergleich zwischen dem Ausdruck und den geladenen Spracherkennungsgrammatiken behandelt.

EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions)

Emuliert die Eingabe bestimmter Wörter für die freigegebene Spracherkennung. Dabei wird ein Array von RecognizedWordUnit-Objekten statt Audio für die asynchrone Spracherkennung verwendet und festgelegt, wie die Erkennung Unicode-Vergleich zwischen den Wörtern und den geladenen Spracherkennungsgrammatiken behandelt.

EmulateRecognizeAsync(String)

Emuliert die Eingabe eines Ausdrucks für die Spracherkennung. Dabei wird Text statt Audio für die asynchrone Spracherkennung verwendet.

EmulateRecognizeAsync(String, CompareOptions)

Emuliert die Eingabe eines Ausdrucks für die Spracherkennung. Dabei wird Text statt Audio für die asynchrone Spracherkennung verwendet und festgelegt, wie die Erkennung Unicode-Vergleich zwischen dem Ausdruck und den geladenen Spracherkennungsgrammatiken behandelt.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
InstalledRecognizers()

Gibt Informationen für alle installierten Spracherkennungen auf dem aktuellen System zurück.

LoadGrammar(Grammar)

Lädt synchron ein Grammar-Objekt.

LoadGrammarAsync(Grammar)

Lädt asynchron eine Spracherkennungsgrammatik.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
QueryRecognizerSetting(String)

Gibt die Werte von Einstellungen für das Erkennungsmodul zurück.

Recognize()

Führt einen synchronen Spracherkennungsvorgang aus.

Recognize(TimeSpan)

Führt einen synchronen Spracherkennungsvorgang mit einem angegebenen ursprünglichen Ruhetimeout aus.

RecognizeAsync()

Führt einen einzelnen, asynchronen Spracherkennungsvorgang aus.

RecognizeAsync(RecognizeMode)

Führt eine oder mehrere asynchrone Spracherkennungsvorgänge aus.

RecognizeAsyncCancel()

Beendet die asynchrone Erkennung, ohne auf den Abschluss des aktuellen Erkennungsvorgangs zu warten.

RecognizeAsyncStop()

Deaktiviert die asynchrone Erkennung, nachdem der aktuelle Erkennungsvorgang abgeschlossen ist.

RequestRecognizerUpdate()

Fordert an, dass die Erkennung anhält, um den Zustand zu aktualisieren.

RequestRecognizerUpdate(Object)

Fordert an, dass die Erkennung anhält, um den Zustand zu aktualisieren und stellt ein Benutzertoken für das zugeordnete Ereignis bereit.

RequestRecognizerUpdate(Object, TimeSpan)

Fordert an, dass die Erkennung anhält, um den Zustand zu aktualisieren und stellt ein Offset für das zugeordnete Ereignis bereit.

SetInputToAudioStream(Stream, SpeechAudioFormatInfo)

Konfiguriert das SpeechRecognitionEngine-Objekt, um Eingaben von einem Audiostream zu empfangen.

SetInputToDefaultAudioDevice()

Konfiguriert das SpeechRecognitionEngine-Objekt, um Eingaben vom StandardAudiogerät zu empfangen.

SetInputToNull()

Deaktiviert die Eingabe zur Spracherkennung.

SetInputToWaveFile(String)

Konfiguriert das SpeechRecognitionEngine-Objekt, um Eingaben von einer Datei im Waveform-Audioformat (.wav) zu erhalten.

SetInputToWaveStream(Stream)

Konfiguriert das SpeechRecognitionEngine-Objekt, um Eingaben von einem Stream zu erhalten, der Daten im Waveform-Audioformat (.wav) enthält.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
UnloadAllGrammars()

Entlädt alle Grammar-Objekte aus des Erkennungsmodul.

UnloadGrammar(Grammar)

Entlädt ein angegebenes Grammar-Objekt aus der SpeechRecognitionEngine-Instanz.

UpdateRecognizerSetting(String, Int32)

Aktualisiert die angegebene Einstellung für die SpeechRecognitionEngine mit dem angegebenen ganzzahligen Wert.

UpdateRecognizerSetting(String, String)

Aktualisiert die angegebene Spracherkennungs-Engine-Einstellung mit dem angegebenen Zeichenfolgenwert.

Ereignisse

AudioLevelUpdated

Wird ausgelöst, wenn das SpeechRecognitionEngine die Ebene seiner Audioeingabe meldet.

AudioSignalProblemOccurred

Wird ausgelöst, wenn das SpeechRecognitionEngine ein Problem im Audiosignal erkennt.

AudioStateChanged

Wird ausgelöst, wenn sich der Zustand im Audio, das von SpeechRecognitionEngine empfangen wird, ändert.

EmulateRecognizeCompleted

Wird ausgelöst, wenn das SpeechRecognitionEngine einen asynchronen Erkennungsvorgang einer emulierten Eingabe abschließt.

LoadGrammarCompleted

Wird ausgelöst, wenn das SpeechRecognitionEngine das asynchrone Laden eines Grammar-Objekts beendet.

RecognizeCompleted

Wird ausgelöst, wenn das SpeechRecognitionEngine einen asynchronen Erkennungsvorgang abschließt.

RecognizerUpdateReached

Wird ausgelöst, wenn ein aktives SpeechRecognitionEngine angehalten wird, um Änderungen zu übernehmen.

SpeechDetected

Wird ausgelöst, wenn das SpeechRecognitionEngine eine Eingabe erkennt, die es als Sprache identifizieren kann.

SpeechHypothesized

Wird ausgelöst, wenn das SpeechRecognitionEngine ein Wort oder Wörter erkannt hat, die möglicherweise eine Komponente von mehreren vollständigen Ausdrücken in einer Grammatik sind.

SpeechRecognitionRejected

Wird ausgelöst, wenn das SpeechRecognitionEngine eine Eingabe empfängt, die mit keinem seiner geladenen und aktivierten Grammar-Objekte übereinstimmt.

SpeechRecognized

Wird ausgelöst, wenn das SpeechRecognitionEngine eine Eingabe empfängt, die mit einem seiner geladenen und aktivierten Grammar-Objekte übereinstimmt.

Gilt für

Siehe auch