SpeechRecognizer Classe

Definizione

Fornisce l'accesso al servizio condiviso di riconoscimento vocale disponibile sul desktop di Windows.Provides access to the shared speech recognition service available on the Windows desktop.

public ref class SpeechRecognizer : IDisposable
public class SpeechRecognizer : IDisposable
type SpeechRecognizer = class
    interface IDisposable
Public Class SpeechRecognizer
Implements IDisposable
Ereditarietà
SpeechRecognizer
Implementazioni

Esempi

L'esempio seguente fa parte di un'applicazione console che carica una grammatica di riconoscimento vocale e illustra l'input emulato asincrono, i risultati del riconoscimento associati e gli eventi associati generati dal riconoscimento vocale.The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. Se il riconoscimento vocale di Windows non è in esecuzione, l'avvio dell'applicazione avvierà anche il riconoscimento vocale di Windows.If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. Se il riconoscimento vocale di Windows è **** in stato di sospensione EmulateRecognizeAsync , restituisce sempre null.If Windows Speech Recognition is in the Sleeping state, then EmulateRecognizeAsync always returns 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;  
    }  
  }  
}  
  

Commenti

Le applicazioni utilizzano il riconoscimento condiviso per accedere al riconoscimento vocale di Windows.Applications use the shared recognizer to access Windows Speech Recognition. Utilizzare l' SpeechRecognizer oggetto per aggiungere l'esperienza utente vocale di Windows.Use the SpeechRecognizer object to add to the Windows speech user experience.

Questa classe fornisce il controllo su diversi aspetti del processo di riconoscimento vocale:This class provides control over various aspects of the speech recognition process:

La configurazione di riconoscimento vocale Windows viene gestita tramite l'utilizzo della finestra di dialogo delle Proprietà vocali nel Pannello di controllo.The configuration of Windows Speech Recognition is managed by the use of the Speech Properties dialog in the Control Panel. Questa interfaccia viene utilizzata per selezionare il motore di riconoscimento vocale desktop predefinito e la lingua, il dispositivo di input audio e il comportamento di sospensione del riconoscimento vocale.This interface is used to select the default desktop speech recognition engine and language, the audio input device, and the sleep behavior of speech recognition. Se la configurazione di riconoscimento vocale Windows viene modificata mentre l'applicazione è in esecuzione, ad esempio se il riconoscimento vocale è disabilitato o se la lingua di input viene modificata, la modifica SpeechRecognizer influirà su tutti gli oggetti.If the configuration of Windows Speech Recognition is changed while the application is running, (for instance, if speech recognition is disabled or the input language is changed), the change affects all SpeechRecognizer objects.

Per creare un riconoscimento vocale in-process indipendente dal riconoscimento vocale di Windows, usare la SpeechRecognitionEngine classe.To create an in-process speech recognizer that is independent of Windows Speech Recognition, use the SpeechRecognitionEngine class.

Nota

Chiamare Dispose sempre prima di rilasciare l'ultimo riferimento al riconoscimento vocale.Always call Dispose before you release your last reference to the speech recognizer. In caso contrario, le risorse utilizzate non verranno liberate finché il Garbage Collector non chiamerà il Finalize metodo dell'oggetto Recognizer.Otherwise, the resources it is using will not be freed until the garbage collector calls the recognizer object's Finalize method.

Costruttori

SpeechRecognizer()

Inizializza una nuova istanza della classe SpeechRecognizer.Initializes a new instance of the SpeechRecognizer class.

Proprietà

AudioFormat

Ottiene il formato dell'audio ricevuto dal riconoscimento vocale.Gets the format of the audio being received by the speech recognizer.

AudioLevel

Ottiene il livello dell'audio ricevuto dal riconoscimento vocale.Gets the level of the audio being received by the speech recognizer.

AudioPosition

Ottiene la posizione corrente nel flusso audio generato dal dispositivo che fornisce l'input al riconoscimento vocale.Gets the current location in the audio stream being generated by the device that is providing input to the speech recognizer.

AudioState

Ottiene lo stato dell'audio ricevuto dal riconoscimento vocale.Gets the state of the audio being received by the speech recognizer.

Enabled

Ottiene o imposta un valore che indica se l'oggetto SpeechRecognizer è pronto per l'elaborazione vocale.Gets or sets a value that indicates whether this SpeechRecognizer object is ready to process speech.

Grammars

Ottiene una raccolta di oggetti Grammar caricati in questa istanza di SpeechRecognizer.Gets a collection of the Grammar objects that are loaded in this SpeechRecognizer instance.

MaxAlternates

Ottiene o imposta il numero massimo di risultati del riconoscimento alternativi che il riconoscimento condiviso restituisce per ogni operazione di riconoscimento.Gets or sets the maximum number of alternate recognition results that the shared recognizer returns for each recognition operation.

PauseRecognizerOnRecognition

Ottiene o imposta un valore che indica se il riconoscimento condiviso sospende le operazioni di riconoscimento quando un'applicazione gestisce un evento SpeechRecognized.Gets or sets a value that indicates whether the shared recognizer pauses recognition operations while an application is handling a SpeechRecognized event.

RecognizerAudioPosition

Ottiene la posizione corrente del riconoscimento nell'input audio in fase di elaborazione.Gets the current location of the recognizer in the audio input that it is processing.

RecognizerInfo

Ottiene informazioni sul riconoscimento vocale condiviso.Gets information about the shared speech recognizer.

State

Ottiene lo stato di un oggetto SpeechRecognizer.Gets the state of a SpeechRecognizer object.

Metodi

Dispose()

Elimina l'oggetto SpeechRecognizer.Disposes the SpeechRecognizer object.

Dispose(Boolean)

Elimina l'oggetto SpeechRecognizer e rilascia le risorse usate durante la sessione.Disposes the SpeechRecognizer object and releases resources used during the session.

EmulateRecognize(RecognizedWordUnit[], CompareOptions)

Emula l'input di parole specifiche al riconoscimento vocale condiviso, utilizzando il testo anziché l'audio per il riconoscimento vocale sincrono, e specifica come il riconoscimento gestisce il confronto Unicode tra le parole e le grammatiche di riconoscimento vocale caricate.Emulates input of specific words to the shared speech recognizer, using text instead of audio for synchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the words and the loaded speech recognition grammars.

EmulateRecognize(String)

Emula l'input di una frase al riconoscimento vocale condiviso, utilizzando il testo anziché l'audio per il riconoscimento vocale sincrono.Emulates input of a phrase to the shared speech recognizer, using text instead of audio for synchronous speech recognition.

EmulateRecognize(String, CompareOptions)

Emula l'input di una frase al riconoscimento vocale condiviso, utilizzando il testo anziché l'audio per il riconoscimento vocale sincrono, e specifica come il riconoscimento gestisce il confronto Unicode tra la frase e le grammatiche di riconoscimento vocale caricate.Emulates input of a phrase to the shared speech recognizer, using text instead of audio for synchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the phrase and the loaded speech recognition grammars.

EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions)

Emula l'input di parole specifiche al riconoscimento vocale condiviso, utilizzando il testo anziché l'audio per il riconoscimento vocale asincrono, e specifica come il riconoscimento gestisce il confronto Unicode tra le parole e le grammatiche di riconoscimento vocale caricate.Emulates input of specific words to the shared speech recognizer, using text instead of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the words and the loaded speech recognition grammars.

EmulateRecognizeAsync(String)

Emula l'input di una frase al riconoscimento vocale condiviso, utilizzando il testo anziché l'audio per il riconoscimento vocale asincrono.Emulates input of a phrase to the shared speech recognizer, using text instead of audio for asynchronous speech recognition.

EmulateRecognizeAsync(String, CompareOptions)

Emula l'input di una frase al riconoscimento vocale condiviso, utilizzando il testo anziché l'audio per il riconoscimento vocale asincrono, e specifica come il riconoscimento gestisce il confronto Unicode tra la frase e le grammatiche di riconoscimento vocale caricate.Emulates input of a phrase to the shared speech recognizer, using text instead of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the phrase and the loaded speech recognition grammars.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Ereditato da Object)
LoadGrammar(Grammar)

Carica una grammatica di riconoscimento vocale.Loads a speech recognition grammar.

LoadGrammarAsync(Grammar)

Carica in modo asincrono una grammatica di riconoscimento vocale.Asynchronously loads a speech recognition grammar.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Ereditato da Object)
RequestRecognizerUpdate()

Richiede la sospensione del riconoscimento condiviso e l'aggiornamento dello stato.Requests that the shared recognizer pause and update its state.

RequestRecognizerUpdate(Object)

Richiede la sospensione del riconoscimento condiviso, l'aggiornamento dello stato e la fornitura di un token utente per l'evento associato.Requests that the shared recognizer pause and update its state and provides a user token for the associated event.

RequestRecognizerUpdate(Object, TimeSpan)

Richiede la sospensione del riconoscimento condiviso, l'aggiornamento dello stato e la fornitura di un offset e un token utente per l'evento associato.Requests that the shared recognizer pause and update its state and provides an offset and a user token for the associated event.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Ereditato da Object)
UnloadAllGrammars()

Scarica tutte le grammatiche di riconoscimento vocale dal riconoscimento condiviso.Unloads all speech recognition grammars from the shared recognizer.

UnloadGrammar(Grammar)

Scarica una grammatica di riconoscimento vocale specificata dal riconoscimento condiviso.Unloads a specified speech recognition grammar from the shared recognizer.

Eventi

AudioLevelUpdated

Viene generato quando il riconoscimento condiviso segnala il livello del relativo input audio.Occurs when the shared recognizer reports the level of its audio input.

AudioSignalProblemOccurred

Viene generato quando il riconoscimento rileva un problema nel segnale audio.Occurs when the recognizer encounters a problem in the audio signal.

AudioStateChanged

Viene generato in seguito alla modifica dello stato nell'audio ricevuto dal riconoscimento.Occurs when the state changes in the audio being received by the recognizer.

EmulateRecognizeCompleted

Viene generato quando il riconoscimento condiviso completa un'operazione di riconoscimento asincrona per l'input emulato.Occurs when the shared recognizer finalizes an asynchronous recognition operation for emulated input.

LoadGrammarCompleted

Viene generato quando il riconoscimento termina il caricamento asincrono di una grammatica del riconoscimento vocale.Occurs when the recognizer finishes the asynchronous loading of a speech recognition grammar.

RecognizerUpdateReached

Viene generato quando il riconoscimento viene sospeso per sincronizzare il riconoscimento e altre operazioni.Occurs when the recognizer pauses to synchronize recognition and other operations.

SpeechDetected

Viene generato quando il riconoscimento rileva un input identificabile come funzione vocale.Occurs when the recognizer detects input that it can identify as speech.

SpeechHypothesized

Viene generato quando il riconoscimento ha riconosciuto le parole che possono essere componenti di più frasi complete in una grammatica.Occurs when the recognizer has recognized a word or words that may be a component of multiple complete phrases in a grammar.

SpeechRecognitionRejected

Viene generato quando il riconoscimento riceve un input che non corrisponde ad alcuna grammatica di riconoscimento vocale caricata.Occurs when the recognizer receives input that does not match any of the speech recognition grammars it has loaded.

SpeechRecognized

Viene generato quando il riconoscimento riceve un input che corrisponde a una delle relative grammatiche di riconoscimento vocale.Occurs when the recognizer receives input that matches one of its speech recognition grammars.

StateChanged

Viene generato quando lo stato di esecuzione del motore di riconoscimento della tecnologia Windows Desktop Speech viene modificato.Occurs when the running state of the Windows Desktop Speech Technology recognition engine changes.

Si applica a

Vedi anche