RecognizerUpdateReachedEventArgs Classe

Definizione

Restituisce dati da un evento RecognizerUpdateReached o RecognizerUpdateReached.Returns data from a RecognizerUpdateReached or a RecognizerUpdateReached event.

public ref class RecognizerUpdateReachedEventArgs : EventArgs
public class RecognizerUpdateReachedEventArgs : EventArgs
type RecognizerUpdateReachedEventArgs = class
    inherit EventArgs
Public Class RecognizerUpdateReachedEventArgs
Inherits EventArgs
Ereditarietà
RecognizerUpdateReachedEventArgs

Esempio

Nell'esempio seguente viene illustrata un'applicazione console che carica e Scarica Grammar oggetti.The following example shows a console application that loads and unloads Grammar objects. L'applicazione usa il RequestRecognizerUpdate metodo per richiedere la sospensione del motore di riconoscimento vocale in modo che possa ricevere un aggiornamento.The application uses the RequestRecognizerUpdate method to request the speech recognition engine to pause so it can receive an update. L'applicazione carica quindi o Scarica un Grammar oggetto.The application then loads or unloads a Grammar object.

A ogni aggiornamento, un gestore per SpeechRecognitionEngine.RecognizerUpdateReached l'evento scrive il nome e lo stato degli oggetti Grammar attualmente caricati nella console.At each update, a handler for SpeechRecognitionEngine.RecognizerUpdateReached event writes the name and status of the currently loaded Grammar objects to the console. Quando le grammatiche vengono caricate e scaricate, l'applicazione riconosce prima di tutto i nomi degli animali della farm, quindi i nomi degli animali della farm e i nomi dei frutti, quindi solo i nomi di frutti.As grammars are loaded and unloaded, the application first recognizes the names of farm animals, then the names of farm animals and the names of fruits, then only the names of fruits.

using System;  
using System.Speech.Recognition;  
using System.Collections.Generic;  
using System.Threading;  
  
namespace SampleRecognition  
{  
  class Program  
  {  
    private static SpeechRecognitionEngine recognizer;  
    public static void Main(string[] args)  
    {  
  
      // Initialize an in-process speech recognition engine and configure its input.  
      using (recognizer = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US")))  
      {  
        recognizer.SetInputToDefaultAudioDevice();  
  
        // Create the first grammar - Farm.  
        Choices animals = new Choices(new string[] { "cow", "pig", "goat" });  
        GrammarBuilder farm = new GrammarBuilder(animals);  
        Grammar farmAnimals = new Grammar(farm);  
        farmAnimals.Name = "Farm";  
  
        // Create the second grammar - Fruit.  
        Choices fruit = new Choices(new string[] { "apples", "peaches", "oranges" });  
        GrammarBuilder favorite = new GrammarBuilder(fruit);  
        Grammar favoriteFruit = new Grammar(favorite);  
        favoriteFruit.Name = "Fruit";  
  
        // Attach event handlers.  
        recognizer.SpeechRecognized +=  
          new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);  
        recognizer.RecognizerUpdateReached +=  
          new EventHandler<RecognizerUpdateReachedEventArgs>(recognizer_RecognizerUpdateReached);  
        recognizer.SpeechRecognitionRejected +=  
          new EventHandler<SpeechRecognitionRejectedEventArgs>(recognizer_SpeechRecognitionRejected);  
  
        // Load the Farm grammar.  
        recognizer.LoadGrammar(farmAnimals);  
  
        // Start asynchronous, continuous recognition.  
        recognizer.RecognizeAsync(RecognizeMode.Multiple);  
        Console.WriteLine("Starting asynchronous, continuous recognition");  
        Console.WriteLine("  Farm grammar is loaded and enabled.");  
  
        // Pause to recognize farm animals.  
        Thread.Sleep(7000);  
        Console.WriteLine();  
  
        // Request an update and load the Fruit grammar.  
        recognizer.RequestRecognizerUpdate();  
        recognizer.LoadGrammarAsync(favoriteFruit);  
        Thread.Sleep(7000);  
  
        // Request an update and unload the Farm grammar.  
        recognizer.RequestRecognizerUpdate();  
        recognizer.UnloadGrammar(farmAnimals);  
        Thread.Sleep(7000);  
      }  
  
      // Keep the console window open.  
      Console.WriteLine();  
      Console.WriteLine("Press any key to exit...");  
      Console.ReadKey();  
    }  
  
    // At the update, get the names and enabled status of the currently loaded grammars.  
    public static void recognizer_RecognizerUpdateReached(  
      object sender, RecognizerUpdateReachedEventArgs e)  
    {  
      Console.WriteLine();  
      Console.WriteLine("Update reached:");  
      Thread.Sleep(1000);  
  
      string qualifier;  
      List<Grammar> grammars = new List<Grammar>(recognizer.Grammars);  
      foreach (Grammar g in grammars)  
      {  
        qualifier = (g.Enabled) ? "enabled" : "disabled";  
        Console.WriteLine("  {0} grammar is loaded and {1}.",  
        g.Name, qualifier);  
      }  
    }  
  
    // Write the text of the recognized phrase to the console.  
    static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)  
    {  
      Console.WriteLine("    Speech recognized: " + e.Result.Text);  
    }  
  
    // Write a message to the console when recognition fails.  
    static void recognizer_SpeechRecognitionRejected(object sender, SpeechRecognitionRejectedEventArgs e)  
    {  
      Console.WriteLine("    Recognition attempt failed");  
    }  
  }  
}  
  

Commenti

RecognizerUpdateReachedgli eventi forniscono un meccanismo per sospendere un motore di riconoscimento vocale per applicare modifiche atomiche e sincrone, ad esempio il caricamento e lo scaricamento di grammatiche.RecognizerUpdateReached events provide a mechanism for pausing a speech recognition engine to apply atomic and synchronous modifications, such as loading and unloading grammars.

Se l'applicazione usa un' SpeechRecognitionEngine istanza per gestire il riconoscimento, può usare uno SpeechRecognitionEngine.RequestRecognizerUpdate dei metodi per richiedere che il motore si sospenda per ricevere un aggiornamento.If your application is using a SpeechRecognitionEngine instance to manage recognition, it can use one of the SpeechRecognitionEngine.RequestRecognizerUpdate methods to request that the engine pauses to receive an update. L' SpeechRecognitionEngine istanza genera un SpeechRecognitionEngine.RecognizerUpdateReached evento quando è pronto per l'aggiornamento.The SpeechRecognitionEngine instance raises a SpeechRecognitionEngine.RecognizerUpdateReached event when it is ready for the update.

Quando un' SpeechRecognitionEngine istanza viene sospesa, è possibile caricare, scaricare, abilitare e disabilitare Grammar oggetti e modificare i valori per le BabbleTimeoutproprietà, InitialSilenceTimeoute EndSilenceTimeout .While a SpeechRecognitionEngine instance is paused, you can load, unload, enable, and disable Grammar objects, and modify values for the BabbleTimeout, InitialSilenceTimeout, and EndSilenceTimeout properties.

Se l'applicazione usa un' SpeechRecognizer istanza per gestire il riconoscimento, può usare uno SpeechRecognizer.RequestRecognizerUpdate dei metodi per richiedere che il motore si sospenda per ricevere un aggiornamento.If your application is using a SpeechRecognizer instance to manage recognition, it can use one of the SpeechRecognizer.RequestRecognizerUpdate methods to request that the engine pauses to receive an update. L' SpeechRecognizer istanza genera un SpeechRecognizer.RecognizerUpdateReached evento quando è pronto per l'aggiornamento.The SpeechRecognizer instance raises a SpeechRecognizer.RecognizerUpdateReached event when it is ready for the update.

Quando un' SpeechRecognizer istanza viene sospesa, è possibile caricare, scaricare, abilitare e disabilitare Grammar oggetti.While a SpeechRecognizer instance is paused, you can load, unload, enable, and disable Grammar objects.

Quando si SpeechRecognitionEngine.RecognizerUpdateReached gestiscono gli eventi e SpeechRecognizer.RecognizerUpdateReached , un motore di riconoscimento viene sospeso fino a quando il gestore dell'evento non restituisce.When handling SpeechRecognitionEngine.RecognizerUpdateReached and SpeechRecognizer.RecognizerUpdateReached events, a recognition engine pauses until the event handler returns.

RecognizerUpdateReachedEventArgs deriva da EventArgs.RecognizerUpdateReachedEventArgs derives from EventArgs.

Proprietà

AudioPosition

Ottiene la posizione dell'audio associata all'evento.Gets the audio position associated with the event.

UserToken

Ottiene l'oggetto UserToken passato al sistema quando un'applicazione chiama RequestRecognizerUpdate o RequestRecognizerUpdate.Gets the UserToken passed to the system when an application calls RequestRecognizerUpdate or RequestRecognizerUpdate.

Metodi

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)
MemberwiseClone()

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

(Ereditato da Object)
ToString()

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

(Ereditato da Object)

Si applica a

Vedi anche