首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在SAPI中为语法赋予优先级?

如何在SAPI中为语法赋予优先级?
EN

Stack Overflow用户
提问于 2012-06-27 23:16:11
回答 1查看 458关注 0票数 1

我正在使用SAPI创建一个语音识别应用程序。我需要能够为我使用的不同语法赋予不同的优先级。(我定义的听写语法和其他语法)只有当语音输入与我定义的语法中的任何单词不匹配时,我才需要识别器在我定义的语法中搜索并查看听写语法。现在我有一个这样的代码:

代码语言:javascript
复制
Grammar myGram;
Choices myEditor = new Choices();
myEditor.Add("public");
//adding other choices
myGram = new Grammar(new GrammarBuilder(myEditor));
SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine();
recognizer.LoadGrammar(myGram);
Grammar dictation = new DictationGrammar();
dictation.Name = "Dictation Grammar";
recognizer.LoadGrammar(dictation);
recognizer.SpeechRecognized += new EventHandler<SpeechRecognizedEventArgs>(
               SpeechRecognizedHandler);
recognizer.SetInputToDefaultAudioDevice();
recognizer.RecognizeAsync(RecognizeMode.Multiple);

请告诉我如何优先考虑myGram而不是听写语法。:)

EN

回答 1

Stack Overflow用户

发布于 2012-06-27 23:41:15

如果您使用符合SRGS的语法,那么基本上可以使用weights来分配优先级。Grammar对象支持符合W3C SRGS specification的xml格式的语法。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11229548

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档