Grammar.Priority プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
Grammar オブジェクトの優先度値を取得または設定します。
public:
property int Priority { int get(); void set(int value); };
public int Priority { get; set; }
member this.Priority : int with get, set
Public Property Priority As Integer
プロパティ値
Priority プロパティは、特定のGrammarの相対的な優先度を表す整数値を返します。 範囲は、-128 から 127 までです。 既定値は 0 です。
例
次の例では、2 つの Grammar オブジェクトを作成します。1 つは数字用、1 つは分数用です。
Grammar オブジェクトには、名前と相対的な重みと優先順位が割り当てられ、インプロセス音声認識エンジンによって読み込まれます。
CreateDigitsGrammar、CreateFractionsGrammar、およびrecognizer_SpeechRecognizedのメソッドはここには示されていません。
// Create a Grammar for recognizing numeric digits.
Grammar digitsGrammar = CreateDigitsGrammar();
digitsGrammar.Name = "Digits Grammar";
digitsGrammar.Priority = 2;
digitsGrammar.Weight = 0.6f;
// Create a Grammar for recognizing fractions.
Grammar fractionsGrammar = CreateFractionsGrammar();
fractionsGrammar.Name = "Fractions Grammar";
fractionsGrammar.Priority = 1;
fractionsGrammar.Weight = 1f;
// Create an in-process speech recognizer.
SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine();
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(
recognizer_SpeechRecognized);
// Load the digits and fractions Grammar objects.
recognizer.LoadGrammar(digitsGrammar);
recognizer.LoadGrammar(fractionsGrammar);
// Start recognition.
recognizer.SetInputToDefaultAudioDevice();
recognizer.RecognizeAsync(RecognizeMode.Multiple);
注釈
Priority プロパティは、複数の文法で同じ認識結果が生成される場合に、文法を選択するために使用されます。 音声認識エンジンに、入力に一致する複数の音声認識文法が読み込まれ、有効になっている場合、一致が認識エンジンからの最良の結果である場合、認識エンジンは最も高い Priorityを持つ文法を使用します。 同じ認識結果を生成する文法も同じ Priority 値を持つ場合、認識エンジンが使用する文法は未定義になります。