SpeechRecognizer.AudioStateChanged イベント
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーディオの状態変化が認識機能によって受け取られると発生します。
public:
event EventHandler<System::Speech::Recognition::AudioStateChangedEventArgs ^> ^ AudioStateChanged;
public event EventHandler<System.Speech.Recognition.AudioStateChangedEventArgs> AudioStateChanged;
member this.AudioStateChanged : EventHandler<System.Speech.Recognition.AudioStateChangedEventArgs>
Public Custom Event AudioStateChanged As EventHandler(Of AudioStateChangedEventArgs)
イベントの種類
例
次の例では、イベントのハンドラーを使用して、 AudioStateChanged
AudioState 列挙体のメンバーを使用して変更するたびに、レコグナイザーの新しいをコンソールに書き込み AudioState ます。
using System;
using System.Speech.Recognition;
namespace SampleRecognition
{
class Program
{
private static SpeechRecognizer recognizer;
public static void Main(string[] args)
{
// Initialize a shared speech recognition engine.
recognizer = new SpeechRecognizer();
// Create and load a grammar.
Grammar dictation = new DictationGrammar();
dictation.Name = "Dictation Grammar";
recognizer.LoadGrammar(dictation);
// Attach event handlers.
recognizer.AudioStateChanged +=
new EventHandler<AudioStateChangedEventArgs>(recognizer_AudioStateChanged);
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
recognizer.StateChanged +=
new EventHandler<StateChangedEventArgs>(recognizer_StateChanged);
// Keep the console window open.
Console.ReadLine();
}
// Handle the AudioStateChanged event.
static void recognizer_AudioStateChanged(object sender, AudioStateChangedEventArgs e)
{
Console.WriteLine("The new audio state is: " + e.AudioState);
}
// Handle the SpeechRecognized event.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
if (e.Result != null && e.Result.Text != null)
{
Console.WriteLine();
Console.WriteLine(" Recognized text = {0}", e.Result.Text);
Console.WriteLine();
}
else
{
Console.WriteLine(" Recognized text not available.");
}
Console.WriteLine();
Console.WriteLine("Done.");
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
// Put the recognizer into Listening mode.
static void recognizer_StateChanged(object sender, StateChangedEventArgs e)
{
if (e.RecognizerState != RecognizerState.Stopped)
{
Console.WriteLine();
recognizer.EmulateRecognizeAsync("Start listening");
}
}
}
}
注釈
イベント時にオーディオの状態を取得するには、 AudioState 関連付けられているのプロパティを使用し AudioStateChangedEventArgs ます。 認識エンジンへの入力の現在のオーディオの状態を取得するには、レコグナイザーのプロパティを使用し AudioState ます。 オーディオ状態の詳細については、「列挙体」を参照してください AudioState 。
イベントのデリゲートを作成する場合は、 AudioStateChanged
イベントを処理するメソッドを指定します。 イベント ハンドラーにイベントを関連付けるには、イベントにデリゲートのインスタンスを追加します。 イベント ハンドラーは、デリゲートを削除しない限り、イベントが発生するたびに呼び出されます。 イベントハンドラーデリゲートの詳細については、「 イベントとデリゲート」を参照してください。