Sdílet prostřednictvím


RecognizeCompletedEventArgs Třída

Definice

Poskytuje data pro RecognizeCompleted událost vyvolanou objektem SpeechRecognitionEngine nebo objektem SpeechRecognizer .

public ref class RecognizeCompletedEventArgs : System::ComponentModel::AsyncCompletedEventArgs
public class RecognizeCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
type RecognizeCompletedEventArgs = class
    inherit AsyncCompletedEventArgs
Public Class RecognizeCompletedEventArgs
Inherits AsyncCompletedEventArgs
Dědičnost
RecognizeCompletedEventArgs

Příklady

Následující příklad provádí asynchronní rozpoznávání řeči u gramatiky rozpoznávání řeči pomocí SpeechRecognitionEngine.RecognizeAsync metody s rozpoznáváním v procesu. Příklad používá Choices objekty a GrammarBuilder k vytvoření gramatiky rozpoznávání řeči před jeho sestavením do objektu Grammar . Obslužná rutina události SpeechRecognitionEngine.RecognizeCompleted vypíše informace o operaci rozpoznávání do konzoly.

using System;  
using System.Speech.Recognition;  

namespace SampleRecognition  
{  
  class Program  
  {  
    private static SpeechRecognitionEngine recognizer;  
    public static void Main(string[] args)  
    {  

      // Initialize a SpeechRecognitionEngine object and set its input.  
      recognizer = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"));  
      recognizer.SetInputToDefaultAudioDevice();  

      // Configure recognition parameters.  
      recognizer.InitialSilenceTimeout = TimeSpan.FromSeconds(5.0);  
      recognizer.BabbleTimeout = TimeSpan.FromSeconds(3.0);  
      recognizer.EndSilenceTimeout = TimeSpan.FromSeconds(1.0);  
      recognizer.EndSilenceTimeoutAmbiguous = TimeSpan.FromSeconds(1.0);  

      // Add a handler for the LoadGrammarCompleted event.  
      recognizer.LoadGrammarCompleted +=  
        new EventHandler<LoadGrammarCompletedEventArgs>(recognizer_LoadGrammarCompleted);  

      // Add a handler for the RecognizeCompleted event.  
      recognizer.RecognizeCompleted +=   
        new EventHandler<RecognizeCompletedEventArgs>(recognizer_RecognizeCompleted);  

      // Create a speech recognition grammar and build it into a Grammar object.  
      Choices bankingMenu = new Choices(new string[]   
      { "Access accounts", "Transfer funds", "Pay bills", "Get loan balance" });  
      GrammarBuilder banking = new GrammarBuilder(bankingMenu);  
      Grammar bankGrammar = new Grammar(banking);  
      bankGrammar.Name = "Banking Menu";  

      // Load the Grammar objects to the recognizer.  
      recognizer.LoadGrammarAsync(bankGrammar);  

      // Start asynchronous, continuous recognition.  
      recognizer.RecognizeAsync();  

      // Keep the console window open.  
      Console.ReadLine();  
    }  

    // Handle the RecognizeCompleted event.  
    static void recognizer_RecognizeCompleted(object sender, RecognizeCompletedEventArgs e)  
    {  
      if (e.Error != null)  
      {  
        Console.WriteLine(  
          "RecognizeCompleted, error occurred during recognition: {0}", e.Error);  
        return;  
      }  

      if (e.InitialSilenceTimeout || e.BabbleTimeout)  
      {  
        Console.WriteLine(  
          "RecognizeCompleted: BabbleTimeout({0}), InitialSilenceTimeout({1}).",  
          e.BabbleTimeout, e.InitialSilenceTimeout);  
        return;  
      }  

      if (e.InputStreamEnded)  
      {  
        Console.WriteLine(  
          "RecognizeCompleted: AudioPosition({0}), InputStreamEnded({1}).",  
          e.AudioPosition, e.InputStreamEnded);  
      }  

      if (e.Result != null)  
      {  
        Console.WriteLine(  
          "RecognizeCompleted: Grammar ({0}), Text ({1}), Confidence ({2}), AudioPosition ({3}).",  
          e.Result.Grammar.Name, e.Result.Text, e.Result.Confidence, e.AudioPosition);  
      }  

      else  
      {  
        Console.WriteLine("RecognizeCompleted: No result.");  
      }   

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

    // Handle the LoadGrammarCompleted event.   
    static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e)  
    {  
      string grammarName = e.Grammar.Name;  
      bool grammarLoaded = e.Grammar.Loaded;  
      bool grammarEnabled = e.Grammar.Enabled;  

      if (e.Error != null)  
      {  
        Console.WriteLine("LoadGrammar for {0} failed with a {1}.",  
        grammarName, e.Error.GetType().Name);  

        // Add exception handling code here.  
      }  

      Console.WriteLine("Grammar {0} {1} loaded and {2} enabled.", grammarName,   
        (grammarLoaded) ? "is" : "is not", (grammarEnabled) ? "is" : "is not");  
    }  
  }            
}  

Poznámky

Instance je RecognizeCompleted vytvořena, když SpeechRecognitionEngine objekt nebo SpeechRecognizer vyvolá svou SpeechRecognized událost po dokončení RecognizeAsync operace. Další informace o událostech rozpoznávání řeči najdete v tématu Použití událostí rozpoznávání řeči.

Vlastnosti

AudioPosition

Získá umístění ve zvukovém streamu vstupního zařízení přidruženého k RecognizeCompleted události.

BabbleTimeout

Získá hodnotu, která označuje, zda časový limit blábolu RecognizeCompleted vygeneroval událost.

Cancelled

Získá hodnotu označující, zda asynchronní operace byla zrušena.

(Zděděno od AsyncCompletedEventArgs)
Error

Získá hodnotu označující, ke které chybě došlo během asynchronní operace.

(Zděděno od AsyncCompletedEventArgs)
InitialSilenceTimeout

Získá hodnotu, která označuje, zda počáteční časový limit ticha vygeneroval RecognizeCompleted událost.

InputStreamEnded

Získá hodnotu označující, zda vstupní datový proud skončil.

Result

Získá výsledek rozpoznávání.

UserState

Získá jedinečný identifikátor asynchronní úlohy.

(Zděděno od AsyncCompletedEventArgs)

Metody

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
RaiseExceptionIfNecessary()

Vyvolá výjimku zadanou uživatelem, pokud asynchronní operace selhala.

(Zděděno od AsyncCompletedEventArgs)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také