【问题标题】:How to specify that what followsa given text is a spelling dictation in Grammar file in sapi?如何指定给定文本后面的内容是sapi语法文件中的拼写听写?
【发布时间】:2014-07-01 00:30:46
【问题描述】:
我正在使用 Sapi 5.4,我正在尝试获取用户说出的人名,但它对名字的识别能力很差,所以我想通过拼写像 J-O-H-N 和现在我的语法的听写来输入名字输入姓名是这样的
<RULE ID="VID_InputType">
<L PROPID="VID_InputType">
<DICTATION MAX="INF"/>
</L>
</RULE>
我修改这个语法怎么能提到拼写听写?
【问题讨论】:
标签:
windows
speech-recognition
sapi
【解决方案1】:
如果您将带有特定主题的听写语法加载到 reco 上下文中,则任何具有 DICTATION 元素的规则都将使用该主题。
这也意味着您不能在单个 reco 上下文中激活多个听写主题;如果您需要激活多个听写主题,则它们必须位于单独的 reco 上下文中。
所以 - 你根本不需要修改你的语法。
相反,在您的设置代码中,加载语法后,调用
ISpGrammar* pGrammar;
// set up grammar
// now load dictation topic
hr = pGrammar->LoadDictation(L"Spelling", SPLO_STATIC);