次の方法で共有


Grammar.Priority プロパティ

定義

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

プロパティ値

Int32

Priority プロパティは、特定の Grammar の相対的優先順位を表す整数値を返します。 範囲は -128 ~ 127 です。 既定値は 0 です。

次の例では、2 つの Grammar オブジェクト (1 つは数字、1 つは分数) を作成します。 オブジェクトには Grammar 、名前と相対的な重みと優先順位が割り当てられ、インプロセス音声認識エンジンによって読み込まれます。 CreateFractionsGrammarメソッドCreateDigitsGrammar、および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 値を持つ場合、認識エンジンが使用する文法は未定義です。

適用対象

こちらもご覧ください