RecognizeCompletedEventArgs クラス

定義

SpeechRecognitionEngine または SpeechRecognizer オブジェクトによって発生する RecognizeCompleted イベントにデータを提供します。Provides data for the RecognizeCompleted event raised by a SpeechRecognitionEngine or a SpeechRecognizer object.

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インプロセスレコグナイザーを使用して、音声認識の文法で非同期音声認識を実行します。The following example performs asynchronous speech recognition on a speech recognition grammar, using the SpeechRecognitionEngine.RecognizeAsync method with the in-process recognizer. この例でChoicesGrammarBuilderGrammarオブジェクトとオブジェクトを使用して、オブジェクトにビルドする前に音声認識文法を作成します。The example uses Choices and GrammarBuilder objects to create the speech recognition grammar before building it into a Grammar object. SpeechRecognitionEngine.RecognizeCompletedイベントのハンドラーは、認識操作に関する情報をコンソールに出力します。A handler for the SpeechRecognitionEngine.RecognizeCompleted event outputs information about the recognition operation to the console.

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 操作RecognizeAsyncの完了後にSpeechRecognizer SpeechRecognizedまたはオブジェクトがイベントを発生させたときに作成されます。An instance of RecognizeCompleted is created when the SpeechRecognitionEngine or the SpeechRecognizer object raises its SpeechRecognized event after completing a RecognizeAsync operation. 音声認識イベントの詳細については、「音声認識イベントの使用」を参照してください。For more information about speech recognition events, see Using Speech Recognition Events.

プロパティ

AudioPosition

RecognizeCompleted イベントに関連付けられた入力デバイスのオーディオ ストリームの場所を取得します。Gets the location in the input device's audio stream associated with the RecognizeCompleted event.

BabbleTimeout

バブル タイムアウトで RecognizeCompleted イベントが生成されたかどうかを示す値を取得します。Gets a value that indicates whether a babble timeout generated the RecognizeCompleted event.

Cancelled

非同期操作がキャンセルされたかどうかを示す値を取得します。Gets a value indicating whether an asynchronous operation has been canceled.

(継承元 AsyncCompletedEventArgs)
Error

非同期操作中に発生したエラーを示す値を取得します。Gets a value indicating which error occurred during an asynchronous operation.

(継承元 AsyncCompletedEventArgs)
InitialSilenceTimeout

初期サイレント タイムアウトで RecognizeCompleted イベントが生成されたかどうかを示す値を取得します。Gets a value that indicates whether an initial silence timeout generated the RecognizeCompleted event.

InputStreamEnded

入力ストリームが終了しているかどうかを示す値を取得します。Gets a value indicating whether the input stream ended.

Result

認識結果を取得します。Gets the recognition result.

UserState

非同期タスクの一意の識別子を取得します。Gets the unique identifier for the asynchronous task.

(継承元 AsyncCompletedEventArgs)

メソッド

Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
RaiseExceptionIfNecessary()

非同期操作が失敗した場合は、ユーザー指定の例外を発生させます。Raises a user-supplied exception if an asynchronous operation failed.

(継承元 AsyncCompletedEventArgs)
ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(継承元 Object)

適用対象

こちらもご覧ください