Поделиться через


RecognizeCompletedEventArgs Класс

Определение

Предоставляет данные для события RecognizeCompleted, вызываемого объектом SpeechRecognitionEngine или SpeechRecognizer.

public ref class RecognizeCompletedEventArgs : System::ComponentModel::AsyncCompletedEventArgs
public class RecognizeCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
type RecognizeCompletedEventArgs = class
    inherit AsyncCompletedEventArgs
Public Class RecognizeCompletedEventArgs
Inherits AsyncCompletedEventArgs
Наследование
RecognizeCompletedEventArgs

Примеры

В следующем примере выполняется асинхронное распознавание речи в грамматике SpeechRecognitionEngine.RecognizeAsync распознавания речи, используя метод с внутрипроцессным распознавателем. В примере используются Choices объекты и GrammarBuilder для создания грамматики распознавания речи перед ее построением Grammar в объекте . Обработчик события SpeechRecognitionEngine.RecognizeCompleted выводит сведения об операции распознавания в консоль.

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");  
    }  
  }            
}  

Комментарии

Экземпляр RecognizeCompleted создается, когда SpeechRecognitionEngine объект или SpeechRecognizer вызывает свое SpeechRecognized событие после завершения RecognizeAsync операции. Дополнительные сведения о событиях распознавания речи см. в разделе Использование событий распознавания речи.

Свойства

AudioPosition

Получает расположение в потоке звука на устройстве ввода, связанном с событием RecognizeCompleted.

BabbleTimeout

Получает значение, указывающее, было ли событие RecognizeCompleted создано в связи с истечением времени ожидания окончания помех.

Cancelled

Возвращает значение, показывающее, была ли отменена асинхронная операция.

(Унаследовано от AsyncCompletedEventArgs)
Error

Возвращает значение, показывающее, какая ошибка произошла в течение асинхронной операции.

(Унаследовано от AsyncCompletedEventArgs)
InitialSilenceTimeout

Получает значение, указывающее, было ли событие RecognizeCompleted создано в связи с истечением времени ожидания окончания начального молчания.

InputStreamEnded

Получает значение, указывающее, завершен ли входной поток.

Result

Получает результат распознавания.

UserState

Возвращает уникальный идентификатор для асинхронной задачи.

(Унаследовано от AsyncCompletedEventArgs)

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
RaiseExceptionIfNecessary()

Вызывает предоставленное пользователем исключение в случае неудачного выполнения асинхронной операции.

(Унаследовано от AsyncCompletedEventArgs)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Применяется к

См. также раздел