0

我正在开发一个简单的语音识别应用程序。我需要一些有关 GrammarBuilder 的帮助。这是我尝试过的:

Choices choice1 = new Choices(....);
Choices choice2 = new Choices(....);
Choices choice3 = new Choices(....);

GrammarBuilder gb = new GrammarBuilder();
gb.Append(choice1);
gb.Append(choice2);
gb.Append(choice3);

Grammar grammar = new Grammar(gb);
recognitionEngine.LoadGrammar(grammar);

此代码希望用户按顺序从choice1 然后choice2 然后choice3 说出一些内容,并且效果很好。但我希望代码先期待选择 1,然后选择选择 2,然后选择选择 2 和选择 3 的任意组合。我不确定如何实现这一点。

4

1 回答 1

1

您可以将 2 到 3 的所有 choiches 添加。然后将该组合两次添加到 GrammarBuilder。(然后您有 4 个选择。)不过,我确信有更好的解决方案,因为这看起来像是一个工作循环。

我自己,我使用的是静态 SRGS-xml 文件。我认为它比 Choices 类有更多的选择。

您也可以动态执行此操作,请查看此示例。 http://gotspeech.net/forums/thread/5206.aspx

于 2011-10-31T10:10:03.657 回答