RecognizeCompletedEventArgs Classe

Definição

Fornece dados para o RecognizeCompleted evento gerado por um SpeechRecognitionEngine ou um SpeechRecognizer objeto.

public ref class RecognizeCompletedEventArgs : System::ComponentModel::AsyncCompletedEventArgs
public class RecognizeCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
type RecognizeCompletedEventArgs = class
    inherit AsyncCompletedEventArgs
Public Class RecognizeCompletedEventArgs
Inherits AsyncCompletedEventArgs
Herança
RecognizeCompletedEventArgs

Exemplos

O exemplo seguinte realiza reconhecimento de fala assíncrono numa gramática de reconhecimento de voz, usando o SpeechRecognitionEngine.RecognizeAsync método com o reconhecedor em processo. O exemplo utiliza Choices e GrammarBuilder objetos para criar a gramática de reconhecimento de fala antes de a construir num Grammar objeto. Um handler para o SpeechRecognitionEngine.RecognizeCompleted evento envia informação sobre a operação de reconhecimento para a consola.

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

Observações

Uma instância de RecognizeCompleted é criada quando o SpeechRecognitionEngine ou o SpeechRecognizer objeto levanta o seu SpeechRecognized evento após completar uma RecognizeAsync operação. Para mais informações sobre eventos de reconhecimento de voz, consulte Utilização de Eventos de Reconhecimento de Fala.

Propriedades

Name Description
AudioPosition

Obtém a localização no fluxo de áudio do dispositivo de entrada associado ao RecognizeCompleted evento.

BabbleTimeout

Obtém um valor que indica se um tempo de espera do balbucle gerou o RecognizeCompleted evento.

Cancelled

Recebe um valor que indica se uma operação assíncrona foi cancelada.

(Herdado de AsyncCompletedEventArgs)
Error

Recebe um valor que indica qual erro ocorreu durante uma operação assíncrona.

(Herdado de AsyncCompletedEventArgs)
InitialSilenceTimeout

Recebe um valor que indica se um tempo de espera inicial de silêncio gerou o RecognizeCompleted evento.

InputStreamEnded

Recebe um valor que indica se o fluxo de entrada terminou.

Result

Obtém o resultado de reconhecimento.

UserState

Obtém o identificador único para a tarefa assíncrona.

(Herdado de AsyncCompletedEventArgs)

Métodos

Name Description
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
RaiseExceptionIfNecessary()

Levanta uma exceção fornecida pelo utilizador se uma operação assíncrona falhou.

(Herdado de AsyncCompletedEventArgs)
ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Ver também