Udostępnij za pośrednictwem


SpeechRecognizer Klasa

Definicja

Zapewnia dostęp do usługi rozpoznawania mowy udostępnionej dostępnej na pulpicie systemu Windows.

public ref class SpeechRecognizer : IDisposable
public class SpeechRecognizer : IDisposable
type SpeechRecognizer = class
    interface IDisposable
Public Class SpeechRecognizer
Implements IDisposable
Dziedziczenie
SpeechRecognizer
Implementuje

Przykłady

Poniższy przykład jest częścią aplikacji konsolowej, która ładuje gramatykę rozpoznawania mowy i demonstruje asynchroniczne emulowane dane wejściowe, skojarzone wyniki rozpoznawania i skojarzone zdarzenia wywoływane przez rozpoznawanie mowy. Jeśli funkcja rozpoznawania mowy systemu Windows nie jest uruchomiona, uruchomienie tej aplikacji spowoduje również uruchomienie funkcji rozpoznawania mowy systemu Windows. Jeśli funkcja rozpoznawania mowy systemu Windows jest w stanie uśpienia , EmulateRecognizeAsync zawsze zwraca wartość null.

using System;  
using System.Speech.Recognition;  
using System.Threading;  

namespace SharedRecognizer  
{  
  class Program  
  {  

    // Indicate whether the asynchronous emulate recognition  
    // operation has completed.  
    static bool completed;  

    static void Main(string[] args)  
    {  

      // Initialize an instance of the shared recognizer.  
      using (SpeechRecognizer recognizer = new SpeechRecognizer())  
      {  

        // Create and load a sample grammar.  
        Grammar testGrammar =  
          new Grammar(new GrammarBuilder("testing testing"));  
        testGrammar.Name = "Test Grammar";  
        recognizer.LoadGrammar(testGrammar);  

        // Attach event handlers for recognition events.  
        recognizer.SpeechRecognized +=  
          new EventHandler<SpeechRecognizedEventArgs>(  
            SpeechRecognizedHandler);  
        recognizer.EmulateRecognizeCompleted +=  
          new EventHandler<EmulateRecognizeCompletedEventArgs>(  
            EmulateRecognizeCompletedHandler);  

        completed = false;  

        // Start asynchronous emulated recognition.   
        // This matches the grammar and generates a SpeechRecognized event.  
        recognizer.EmulateRecognizeAsync("testing testing");  

        // Wait for the asynchronous operation to complete.  
        while (!completed)  
        {  
          Thread.Sleep(333);  
        }  

        completed = false;  

        // Start asynchronous emulated recognition.  
        // This does not match the grammar or generate a SpeechRecognized event.  
        recognizer.EmulateRecognizeAsync("testing one two three");  

        // Wait for the asynchronous operation to complete.  
        while (!completed)  
        {  
          Thread.Sleep(333);  
        }  
      }  

      Console.WriteLine();  
      Console.WriteLine("Press any key to exit...");  
      Console.ReadKey();  
    }  

    // Handle the SpeechRecognized event.  
    static void SpeechRecognizedHandler(  
      object sender, SpeechRecognizedEventArgs e)  
    {  
      if (e.Result != null)  
      {  
        Console.WriteLine("Recognition result = {0}",  
          e.Result.Text ?? "<no text>");  
      }  
      else  
      {  
        Console.WriteLine("No recognition result");  
      }  
    }  

    // Handle the SpeechRecognizeCompleted event.  
    static void EmulateRecognizeCompletedHandler(  
      object sender, EmulateRecognizeCompletedEventArgs e)  
    {  
      if (e.Result == null)  
      {  
        Console.WriteLine("No result generated.");  
      }  

      // Indicate the asynchronous operation is complete.  
      completed = true;  
    }  
  }  
}  

Uwagi

Aplikacje używają współużytkowanego aparatu rozpoznawania mowy do uzyskiwania dostępu do funkcji rozpoznawania mowy systemu Windows. Użyj obiektu , SpeechRecognizer aby dodać element do środowiska użytkownika mowy systemu Windows.

Ta klasa zapewnia kontrolę nad różnymi aspektami procesu rozpoznawania mowy:

Konfiguracja rozpoznawania mowy systemu Windows jest zarządzana za pomocą okna dialogowego Właściwości mowy w Panel sterowania. Ten interfejs służy do wybierania domyślnego aparatu rozpoznawania mowy pulpitu i języka, urządzenia wejściowego audio i zachowania uśpienia rozpoznawania mowy. Jeśli konfiguracja funkcji rozpoznawania mowy systemu Windows zostanie zmieniona podczas działania aplikacji (na przykład jeśli rozpoznawanie mowy jest wyłączone lub język wejściowy zostanie zmieniony), zmiana wpłynie na wszystkie SpeechRecognizer obiekty.

Aby utworzyć aparat rozpoznawania mowy w procesie, który jest niezależny od rozpoznawania mowy systemu Windows, użyj SpeechRecognitionEngine klasy .

Uwaga

Przed wydaniem ostatniego odwołania do aparatu rozpoznawania mowy zawsze należy wywołać Dispose metodę . W przeciwnym razie zasoby, których używasz, nie zostaną zwolnione, dopóki moduł odśmiecowania pamięci nie wywoła metody obiektu rozpoznawania Finalize .

Konstruktory

SpeechRecognizer()

Inicjuje nowe wystąpienie klasy SpeechRecognizer.

Właściwości

AudioFormat

Pobiera format dźwięku odbieranego przez rozpoznawanie mowy.

AudioLevel

Pobiera poziom dźwięku odbieranego przez rozpoznawanie mowy.

AudioPosition

Pobiera bieżącą lokalizację w strumieniu audio generowanym przez urządzenie, które dostarcza dane wejściowe do rozpoznawania mowy.

AudioState

Pobiera stan dźwięku odbieranego przez rozpoznawanie mowy.

Enabled

Pobiera lub ustawia wartość wskazującą, czy ten SpeechRecognizer obiekt jest gotowy do przetwarzania mowy.

Grammars

Pobiera kolekcję Grammar obiektów, które są ładowane w tym SpeechRecognizer wystąpieniu.

MaxAlternates

Pobiera lub ustawia maksymalną liczbę wyników rozpoznawania alternatywnego zwracanych przez współużytkowany aparat rozpoznawania dla każdej operacji rozpoznawania.

PauseRecognizerOnRecognition

Pobiera lub ustawia wartość wskazującą, czy współużytkowany aparat rozpoznawania wstrzymuje operacje rozpoznawania, gdy aplikacja obsługuje SpeechRecognized zdarzenie.

RecognizerAudioPosition

Pobiera bieżącą lokalizację aparatu rozpoznawania w danych wejściowych audio, które jest przetwarzane.

RecognizerInfo

Pobiera informacje o rozpoznawaniu mowy udostępnionej.

State

Pobiera stan SpeechRecognizer obiektu.

Metody

Dispose()

SpeechRecognizer Usuwa obiekt.

Dispose(Boolean)

SpeechRecognizer Usuwa obiekt i zwalnia zasoby używane podczas sesji.

EmulateRecognize(RecognizedWordUnit[], CompareOptions)

Emuluje dane wejściowe określonych wyrazów do aparatu rozpoznawania mowy udostępnionej, używając tekstu zamiast dźwięku do synchronicznego rozpoznawania mowy i określa sposób, w jaki aparat rozpoznawania obsługuje porównanie Unicode między wyrazami a załadowaną gramatyką rozpoznawania mowy.

EmulateRecognize(String)

Emuluje dane wejściowe frazy do rozpoznawania mowy udostępnionej przy użyciu tekstu zamiast dźwięku do synchronicznego rozpoznawania mowy.

EmulateRecognize(String, CompareOptions)

Emuluje dane wejściowe frazy do rozpoznawania mowy współużytkowanej, używając tekstu zamiast dźwięku do synchronicznego rozpoznawania mowy i określa sposób, w jaki aparat rozpoznawania obsługuje porównanie Unicode między frazą a załadowaną gramatyką rozpoznawania mowy.

EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions)

Emuluje dane wejściowe określonych wyrazów do aparatu rozpoznawania mowy udostępnionej przy użyciu tekstu zamiast dźwięku w celu asynchronicznego rozpoznawania mowy i określa sposób, w jaki aparat rozpoznawania obsługuje porównanie Unicode między wyrazami a załadowaną gramatyką rozpoznawania mowy.

EmulateRecognizeAsync(String)

Emuluje dane wejściowe frazy do rozpoznawania mowy udostępnionej przy użyciu tekstu zamiast dźwięku w celu asynchronicznego rozpoznawania mowy.

EmulateRecognizeAsync(String, CompareOptions)

Emuluje dane wejściowe frazy do aparatu rozpoznawania mowy udostępnionej przy użyciu tekstu zamiast dźwięku w celu asynchronicznego rozpoznawania mowy i określa sposób obsługi porównania Unicode przez rozpoznawanie mowy między frazą a załadowaną gramatyką rozpoznawania mowy.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
LoadGrammar(Grammar)

Ładuje gramatykę rozpoznawania mowy.

LoadGrammarAsync(Grammar)

Asynchronicznie ładuje gramatykę rozpoznawania mowy.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
RequestRecognizerUpdate()

Żąda wstrzymania współużytkowanego rozpoznawania i zaktualizowania jego stanu.

RequestRecognizerUpdate(Object)

Żąda wstrzymania i zaktualizowania stanu współużytkowanego rozpoznawania oraz udostępnienia tokenu użytkownika dla skojarzonego zdarzenia.

RequestRecognizerUpdate(Object, TimeSpan)

Żąda, aby współużytkowany aparat rozpoznawania wstrzymał i zaktualizował jego stan oraz zapewnia przesunięcie i token użytkownika dla skojarzonego zdarzenia.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
UnloadAllGrammars()

Zwalnia wszystkie gramatyki rozpoznawania mowy z udostępnionego aparatu rozpoznawania.

UnloadGrammar(Grammar)

Zwalnia określoną gramatykę rozpoznawania mowy z udostępnionego aparatu rozpoznawania.

Zdarzenia

AudioLevelUpdated

Występuje, gdy współużytkowany aparat rozpoznawania zgłasza poziom danych wejściowych dźwięku.

AudioSignalProblemOccurred

Występuje, gdy aparat rozpoznawania napotka problem w sygnałie dźwiękowym.

AudioStateChanged

Występuje, gdy stan zmienia się w dźwięku odbieranym przez rozpoznawanie.

EmulateRecognizeCompleted

Występuje, gdy współużytkowany aparat rozpoznawania finalizuje operację rozpoznawania asynchronicznego dla emulowanych danych wejściowych.

LoadGrammarCompleted

Występuje, gdy rozpoznawanie kończy asynchroniczne ładowanie gramatyki rozpoznawania mowy.

RecognizerUpdateReached

Występuje, gdy aparat rozpoznawania wstrzymuje się w celu zsynchronizowania rozpoznawania i innych operacji.

SpeechDetected

Występuje, gdy rozpoznawanie wykrywa dane wejściowe, które może zidentyfikować jako mowę.

SpeechHypothesized

Występuje, gdy rozpoznawanie rozpoznało wyraz lub wyrazy, które mogą być składnikiem wielu kompletnych fraz w gramatyce.

SpeechRecognitionRejected

Występuje, gdy aparat rozpoznawania odbiera dane wejściowe, które nie są zgodne z żadną gramatyką rozpoznawania mowy, którą załadował.

SpeechRecognized

Występuje, gdy rozpoznawanie odbiera dane wejściowe zgodne z jedną z gramatyk rozpoznawania mowy.

StateChanged

Występuje, gdy zmienia się stan działania aparatu rozpoznawania mowy klasycznej systemu Windows.

Dotyczy

Zobacz też