次の方法で共有


SpeechRecognitionEngine.LoadGrammar(Grammar) メソッド

定義

Grammar オブジェクトを同期的に読み込みます。

public:
 void LoadGrammar(System::Speech::Recognition::Grammar ^ grammar);
public void LoadGrammar(System.Speech.Recognition.Grammar grammar);
member this.LoadGrammar : System.Speech.Recognition.Grammar -> unit
Public Sub LoadGrammar (grammar As Grammar)

パラメーター

grammar
Grammar

読み込む文法オブジェクト。

例外

Grammarnullです。

Grammar が有効な状態ではありません。

次の例は、基本的な音声認識を示すコンソール アプリケーションの一部を示しています。 この例では、 を DictationGrammar 作成し、音声認識エンジンに読み込みます。

using System;
using System.Speech.Recognition;

namespace SpeechRecognitionApp
{
  class Program
  {
    static void Main(string[] args)
    {

      // Create an in-process speech recognizer for the en-US locale.
      using (
      SpeechRecognitionEngine recognizer =
        new SpeechRecognitionEngine(
          new System.Globalization.CultureInfo("en-US")))
      {

        // Create and load a dictation grammar.
        recognizer.LoadGrammar(new DictationGrammar());

        // Add a handler for the speech recognized event.
        recognizer.SpeechRecognized +=
          new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);

        // Configure input to the speech recognizer.
        recognizer.SetInputToDefaultAudioDevice();

        // Start asynchronous, continuous speech recognition.
        recognizer.RecognizeAsync(RecognizeMode.Multiple);

        // Keep the console window open.
        while (true)
        {
          Console.ReadLine();
        }
      }
    }

    // Handle the SpeechRecognized event.
    static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
    {
      Console.WriteLine("Recognized text: " + e.Result.Text);
    }
  }
}

注釈

オブジェクトが既に読み込まれている場合、非同期に読み込まれている場合、または認識エンジンへの読み込みに失敗した場合 Grammar 、認識エンジンは例外をスローします。 の複数のインスタンスに同じ Grammar オブジェクトを SpeechRecognitionEngine読み込むことはできません。 代わりに、インスタンスごとにSpeechRecognitionEngineGrammarしいオブジェクトを作成します。

認識エンジンが実行されている場合、アプリケーションでは、 を使用 RequestRecognizerUpdate して音声認識エンジンを一時停止してから、文法の読み込み、アンロード、有効化、または無効化を行う必要があります。

文法を読み込むと、既定で有効になります。 読み込まれた文法を無効にするには、 プロパティを使用します Enabled

オブジェクトを Grammar 非同期に読み込むには、 メソッドを使用します LoadGrammarAsync

適用対象

こちらもご覧ください