SpeechRecognizer SpeechRecognizer SpeechRecognizer SpeechRecognizer Class

定義

Windows デスクトップで使用できる共有音声認識サービスへのアクセスを提供します。Provides access to the shared speech recognition service available on the Windows desktop.

public ref class SpeechRecognizer : IDisposable
public class SpeechRecognizer : IDisposable
type SpeechRecognizer = class
    interface IDisposable
Public Class SpeechRecognizer
Implements IDisposable
継承
SpeechRecognizerSpeechRecognizerSpeechRecognizerSpeechRecognizer
実装

次の例は、音声認識文法を読み込みますを非同期のエミュレートされた入力、関連付けられている認識結果、および音声認識エンジンによって生成される、関連するイベントを示すコンソール アプリケーションの一部です。The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. Windows 音声認識が実行されていない場合、このアプリケーションの開始と Windows 音声認識が開始もします。If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. Windows 音声認識がある場合、スリープし、状態EmulateRecognizeAsync常に null を返します。If Windows Speech Recognition is in the Sleeping state, then EmulateRecognizeAsync always returns null.

using System;  
using System.Speech.Recognition;  
using System.Threading;  

namespace SharedRecognizer  
{  
  class Program  
  {  

    // Indicate whether the asynchronous emulate recognition  
    // operation has completed.  
    static bool completed;  

    static void Main(string[] args)  
    {  

      // Initialize an instance of the shared recognizer.  
      using (SpeechRecognizer recognizer = new SpeechRecognizer())  
      {  

        // Create and load a sample grammar.  
        Grammar testGrammar =  
          new Grammar(new GrammarBuilder("testing testing"));  
        testGrammar.Name = "Test Grammar";  
        recognizer.LoadGrammar(testGrammar);  

        // Attach event handlers for recognition events.  
        recognizer.SpeechRecognized +=  
          new EventHandler<SpeechRecognizedEventArgs>(  
            SpeechRecognizedHandler);  
        recognizer.EmulateRecognizeCompleted +=  
          new EventHandler<EmulateRecognizeCompletedEventArgs>(  
            EmulateRecognizeCompletedHandler);  

        completed = false;  

        // Start asynchronous emulated recognition.   
        // This matches the grammar and generates a SpeechRecognized event.  
        recognizer.EmulateRecognizeAsync("testing testing");  

        // Wait for the asynchronous operation to complete.  
        while (!completed)  
        {  
          Thread.Sleep(333);  
        }  

        completed = false;  

        // Start asynchronous emulated recognition.  
        // This does not match the grammar or generate a SpeechRecognized event.  
        recognizer.EmulateRecognizeAsync("testing one two three");  

        // Wait for the asynchronous operation to complete.  
        while (!completed)  
        {  
          Thread.Sleep(333);  
        }  
      }  

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

    // Handle the SpeechRecognized event.  
    static void SpeechRecognizedHandler(  
      object sender, SpeechRecognizedEventArgs e)  
    {  
      if (e.Result != null)  
      {  
        Console.WriteLine("Recognition result = {0}",  
          e.Result.Text ?? "<no text>");  
      }  
      else  
      {  
        Console.WriteLine("No recognition result");  
      }  
    }  

    // Handle the SpeechRecognizeCompleted event.  
    static void EmulateRecognizeCompletedHandler(  
      object sender, EmulateRecognizeCompletedEventArgs e)  
    {  
      if (e.Result == null)  
      {  
        Console.WriteLine("No result generated.");  
      }  

      // Indicate the asynchronous operation is complete.  
      completed = true;  
    }  
  }  
}  

注釈

アプリケーションでは、Windows 音声認識にアクセスするのに共有認識エンジンを使用します。Applications use the shared recognizer to access Windows Speech Recognition. 使用して、 SpeechRecognizer Windows 音声認識のユーザー エクスペリエンスに追加するオブジェクト。Use the SpeechRecognizer object to add to the Windows speech user experience.

このクラスには、音声認識のプロセスのさまざまな角度から制御が用意されています。This class provides control over various aspects of the speech recognition process:

Windows 音声認識の構成を使用して管理、音声プロパティダイアログで、コントロール パネルの します。The configuration of Windows Speech Recognition is managed by the use of the Speech Properties dialog in the Control Panel. このインターフェイスは、既定のデスクトップの音声認識エンジンと言語、オーディオ入力デバイス、および音声認識のスリープ状態の動作の選択に使用されます。This interface is used to select the default desktop speech recognition engine and language, the audio input device, and the sleep behavior of speech recognition. アプリケーションの実行中に、(たとえば、音声認識が無効であるか、入力言語が変更された) Windows 音声認識の構成が変更された場合、変更はすべてに影響SpeechRecognizerオブジェクト。If the configuration of Windows Speech Recognition is changed while the application is running, (for instance, if speech recognition is disabled or the input language is changed), the change affects all SpeechRecognizer objects.

Windows 音声認識から独立したインプロセス音声認識エンジンを作成するには、使用、SpeechRecognitionEngineクラス。To create an in-process speech recognizer that is independent of Windows Speech Recognition, use the SpeechRecognitionEngine class.

注意

常に呼び出すDispose音声レコグナイザーへの最後の参照を解放する前にします。Always call Dispose before you release your last reference to the speech recognizer. それ以外の場合、使用されているリソースは解放されませんガベージ コレクターは、認識エンジン オブジェクトのまでFinalizeメソッド。Otherwise, the resources it is using will not be freed until the garbage collector calls the recognizer object's Finalize method.

コンストラクター

SpeechRecognizer() SpeechRecognizer() SpeechRecognizer() SpeechRecognizer()

SpeechRecognizer クラスの新しいインスタンスを初期化します。Initializes a new instance of the SpeechRecognizer class.

プロパティ

AudioFormat AudioFormat AudioFormat AudioFormat

音声認識エンジンによって受け取られるオーディオの形式を取得します。Gets the format of the audio being received by the speech recognizer.

AudioLevel AudioLevel AudioLevel AudioLevel

音声認識エンジンによって受け取られるオーディオのレベルを取得します。Gets the level of the audio being received by the speech recognizer.

AudioPosition AudioPosition AudioPosition AudioPosition

音声認識エンジンに入力を提供しているデバイスによって生成されているオーディオ ストリーム内の現在の位置を取得します。Gets the current location in the audio stream being generated by the device that is providing input to the speech recognizer.

AudioState AudioState AudioState AudioState

音声認識エンジンによって受け取られるオーディオの状態を取得します。Gets the state of the audio being received by the speech recognizer.

Enabled Enabled Enabled Enabled

この SpeechRecognizer オブジェクトが音声を処理する準備ができたかどうかを示す値を取得または設定します。Gets or sets a value that indicates whether this SpeechRecognizer object is ready to process speech.

Grammars Grammars Grammars Grammars

この Grammar インスタンスに読み込まれる SpeechRecognizer オブジェクトのコレクションを取得します。Gets a collection of the Grammar objects that are loaded in this SpeechRecognizer instance.

MaxAlternates MaxAlternates MaxAlternates MaxAlternates

共有認識エンジンが各認識操作に対して返す代替認識結果の最大数を取得または設定します。Gets or sets the maximum number of alternate recognition results that the shared recognizer returns for each recognition operation.

PauseRecognizerOnRecognition PauseRecognizerOnRecognition PauseRecognizerOnRecognition PauseRecognizerOnRecognition

アプリケーションが SpeechRecognized イベントを処理している間、共有認識エンジンが認識操作を一時停止するかどうかを示す値を取得または設定します。Gets or sets a value that indicates whether the shared recognizer pauses recognition operations while an application is handling a SpeechRecognized event.

RecognizerAudioPosition RecognizerAudioPosition RecognizerAudioPosition RecognizerAudioPosition

処理中のオーディオ入力内の認識エンジンの現在の位置を取得します。Gets the current location of the recognizer in the audio input that it is processing.

RecognizerInfo RecognizerInfo RecognizerInfo RecognizerInfo

共有音声認識エンジンに関する情報を取得します。Gets information about the shared speech recognizer.

State State State State

SpeechRecognizer オブジェクトの状態を取得します。Gets the state of a SpeechRecognizer object.

メソッド

Dispose() Dispose() Dispose() Dispose()

SpeechRecognizer オブジェクトを破棄します。Disposes the SpeechRecognizer object.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

SpeechRecognizer オブジェクトを破棄し、セッション中に使用するリソースを解放します。Disposes the SpeechRecognizer object and releases resources used during the session.

EmulateRecognize(RecognizedWordUnit[], CompareOptions) EmulateRecognize(RecognizedWordUnit[], CompareOptions) EmulateRecognize(RecognizedWordUnit[], CompareOptions) EmulateRecognize(RecognizedWordUnit[], CompareOptions)

同期音声認識にオーディオではなくテキストを使用して、共有された音声認識エンジンに対する特定の語の入力をエミュレートし、語と読み込まれている音声認識文法との間で認識エンジンが Unicode 比較をどのように行うかを指定します。Emulates input of specific words to the shared speech recognizer, using text instead of audio for synchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the words and the loaded speech recognition grammars.

EmulateRecognize(String) EmulateRecognize(String) EmulateRecognize(String) EmulateRecognize(String)

同期音声認識に音声ではなくテキストを使用して、共有音声認識エンジンに対する語句の入力をエミュレートします。Emulates input of a phrase to the shared speech recognizer, using text instead of audio for synchronous speech recognition.

EmulateRecognize(String, CompareOptions) EmulateRecognize(String, CompareOptions) EmulateRecognize(String, CompareOptions) EmulateRecognize(String, CompareOptions)

同期音声認識にオーディオではなくテキストを使用して、共有された音声認識エンジンに対するフレーズの入力をエミュレートし、フレーズと読み込まれている音声認識文法との間で認識エンジンが Unicode 比較をどのように行うかを指定します。Emulates input of a phrase to the shared speech recognizer, using text instead of audio for synchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the phrase and the loaded speech recognition grammars.

EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions) EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions) EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions) EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions)

非同期音声認識にオーディオではなくテキストを使用して、共有された音声認識エンジンに対する特定の語の入力をエミュレートし、語と読み込まれている音声認識文法との間で認識エンジンが Unicode 比較をどのように行うかを指定します。Emulates input of specific words to the shared speech recognizer, using text instead of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the words and the loaded speech recognition grammars.

EmulateRecognizeAsync(String) EmulateRecognizeAsync(String) EmulateRecognizeAsync(String) EmulateRecognizeAsync(String)

非同期音声認識に音声ではなくテキストを使用して、共有音声認識エンジンに対する語句の入力をエミュレートします。Emulates input of a phrase to the shared speech recognizer, using text instead of audio for asynchronous speech recognition.

EmulateRecognizeAsync(String, CompareOptions) EmulateRecognizeAsync(String, CompareOptions) EmulateRecognizeAsync(String, CompareOptions) EmulateRecognizeAsync(String, CompareOptions)

非同期音声認識にオーディオではなくテキストを使用して、共有された音声認識エンジンに対するフレーズの入力をエミュレートし、フレーズと読み込まれている音声認識文法との間で認識エンジンが Unicode 比較をどのように行うかを指定します。Emulates input of a phrase to the shared speech recognizer, using text instead of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the phrase and the loaded speech recognition grammars.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

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

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

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

(Inherited from Object)
GetType() GetType() GetType() GetType()

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

(Inherited from Object)
LoadGrammar(Grammar) LoadGrammar(Grammar) LoadGrammar(Grammar) LoadGrammar(Grammar)

音声認識文法を読み込みます。Loads a speech recognition grammar.

LoadGrammarAsync(Grammar) LoadGrammarAsync(Grammar) LoadGrammarAsync(Grammar) LoadGrammarAsync(Grammar)

非同期的に音声認識文法を読み込みます。Asynchronously loads a speech recognition grammar.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

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

(Inherited from Object)
RequestRecognizerUpdate() RequestRecognizerUpdate() RequestRecognizerUpdate() RequestRecognizerUpdate()

共有認識エンジンがその状態を更新および停止するように要求します。Requests that the shared recognizer pause and update its state.

RequestRecognizerUpdate(Object) RequestRecognizerUpdate(Object) RequestRecognizerUpdate(Object) RequestRecognizerUpdate(Object)

共有認識エンジンがその状態を停止および更新し、関連イベントのユーザー トークンを提供するように要求します。Requests that the shared recognizer pause and update its state and provides a user token for the associated event.

RequestRecognizerUpdate(Object, TimeSpan) RequestRecognizerUpdate(Object, TimeSpan) RequestRecognizerUpdate(Object, TimeSpan) RequestRecognizerUpdate(Object, TimeSpan)

共有認識エンジンがその状態を停止および更新し、関連イベントのオフセットとユーザー トークンを提供するように要求します。Requests that the shared recognizer pause and update its state and provides an offset and a user token for the associated event.

ToString() ToString() ToString() ToString()

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

(Inherited from Object)
UnloadAllGrammars() UnloadAllGrammars() UnloadAllGrammars() UnloadAllGrammars()

共有認識エンジンから、すべての音声認識文法をアンロードします。Unloads all speech recognition grammars from the shared recognizer.

UnloadGrammar(Grammar) UnloadGrammar(Grammar) UnloadGrammar(Grammar) UnloadGrammar(Grammar)

共有認識エンジンから、指定された音声認識文法をアンロードします。Unloads a specified speech recognition grammar from the shared recognizer.

イベント

AudioLevelUpdated AudioLevelUpdated AudioLevelUpdated AudioLevelUpdated

共有認識機能がオーディオ入力のレベルを報告すると発生します。Occurs when the shared recognizer reports the level of its audio input.

AudioSignalProblemOccurred AudioSignalProblemOccurred AudioSignalProblemOccurred AudioSignalProblemOccurred

認識機能がオーディオ信号で問題を検出したときに発生します。Occurs when the recognizer encounters a problem in the audio signal.

AudioStateChanged AudioStateChanged AudioStateChanged AudioStateChanged

オーディオの状態変化が認識機能によって受け取られると発生します。Occurs when the state changes in the audio being received by the recognizer.

EmulateRecognizeCompleted EmulateRecognizeCompleted EmulateRecognizeCompleted EmulateRecognizeCompleted

共有認識機能がエミュレートされた入力の非同期認識操作を終了すると発生します。Occurs when the shared recognizer finalizes an asynchronous recognition operation for emulated input.

LoadGrammarCompleted LoadGrammarCompleted LoadGrammarCompleted LoadGrammarCompleted

認識機能が音声認識文法の非同期読み込みを終了すると発生します。Occurs when the recognizer finishes the asynchronous loading of a speech recognition grammar.

RecognizerUpdateReached RecognizerUpdateReached RecognizerUpdateReached RecognizerUpdateReached

認識機能が認識と他の操作を同期するために一時停止すると発生します。Occurs when the recognizer pauses to synchronize recognition and other operations.

SpeechDetected SpeechDetected SpeechDetected SpeechDetected

認識機能が音声として識別できる入力を検出すると発生します。Occurs when the recognizer detects input that it can identify as speech.

SpeechHypothesized SpeechHypothesized SpeechHypothesized SpeechHypothesized

認識機能が文法の複数の完全な語句のコンポーネントである可能性がある単語を認識した場合に発生します。Occurs when the recognizer has recognized a word or words that may be a component of multiple complete phrases in a grammar.

SpeechRecognitionRejected SpeechRecognitionRejected SpeechRecognitionRejected SpeechRecognitionRejected

認識機能が読み込んだ音声認識文法のいずれにも一致しない入力を受け取ると発生します。Occurs when the recognizer receives input that does not match any of the speech recognition grammars it has loaded.

SpeechRecognized SpeechRecognized SpeechRecognized SpeechRecognized

認識機能が読み込んだ音声認識文法のいずれかに一致する入力を受け取ると発生します。Occurs when the recognizer receives input that matches one of its speech recognition grammars.

StateChanged StateChanged StateChanged StateChanged

Windows Desktop Speech テクノロジ音声認識エンジンの実行状態が変更されると発生します。Occurs when the running state of the Windows Desktop Speech Technology recognition engine changes.

適用対象

こちらもご覧ください