2016-08-22 31 views
1

私はWindows Universal Applicationを使用しており、ユーザの文章を取り上げて画面上のフィールドに入力する音声コマンドを作成する必要があります。これらのフィールドの例には、名前と生年月日が含まれます。私はすべての名前が分からず、すべての可能な名前を追加することができないので、SRGSファイルでは使用できません。ワイルドカードの値が表示される場所を指定し、後でその値をコマンドから取得する方法はありますか?ありがとう!UWP Coutinuous Speech Recognitionワイルドカード

答えて

1

Predefined grammars、AKAトピック制約をSpeechRecognizerの制約として使用できると思います。

あなたはこのようSpeechRecognitionTopicHintのシナリオを指定することができます。

var dictationConstraint = new SpeechRecognitionTopicConstraint(SpeechRecognitionScenario.FormFilling, "Person Name"); 

と一緒にSpeechRecognizerに制約し、このトピックの制約として、あなたのSRGSファイルを追加します。

var dictationConstraint = new SpeechRecognitionTopicConstraint(SpeechRecognitionScenario.FormFilling, "Person Name"); 
var grammarfileConstraint = new SpeechRecognitionGrammarFileConstraint(sgrsFile); 
speechRecognizer.Constraints.Add(dictationConstraint); 
speechRecognizer.Constraints.Add(grammarfileConstraint); 

それはできませんがアクセント、ノイズ、その他の障害のために音声入力を100%正確に行うことができますが、音声入力を「Person Name」のトピックに自動的に変換します。

+0

答えをありがとうが、私は質問があります。たとえば、「John Smithの検索」という文があるとします。名前 "John Smith"を返すために "Person Name"というキーを使用することはできますか? – NotMike

+0

@NotMike、はい、それは可能です。あなたは音声入力をキャッチし、ローカルデータベースまたは名前のリストに名前を一致させることができます。それはあなたの音声認識装置の結果に対処する方法です。私の答えは受け入れられる答えですか? –

関連する問題