SpeechRecognitionEngine.LoadGrammar(Grammar) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
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
読み込む文法オブジェクト。
例外
Grammar
が null
です。
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読み込むことはできません。 代わりに、インスタンスごとにSpeechRecognitionEngine新Grammarしいオブジェクトを作成します。
認識エンジンが実行されている場合、アプリケーションでは、 を使用 RequestRecognizerUpdate して音声認識エンジンを一時停止してから、文法の読み込み、アンロード、有効化、または無効化を行う必要があります。
文法を読み込むと、既定で有効になります。 読み込まれた文法を無効にするには、 プロパティを使用します Enabled 。
オブジェクトを Grammar 非同期に読み込むには、 メソッドを使用します LoadGrammarAsync 。
適用対象
こちらもご覧ください
.NET