2012-08-23 83 views
1

我使用的是Microsoft Speech API的加載GRXML語法:匹配通配符/聽寫在Microsoft語音語法

Grammar grammar = new Grammar(file); 
grammar.Enabled = true; 

SpeechRecognitionEngine sre = GetEngine(); 
sre.LoadGrammarAsync(grammar); 

基於MSDN我找不到標籤類似於一個通配符/呼文本匹配:

<item>My message is {dictation}</item> 

它似乎有代碼與DictationGrammar和appendDictation()。它也可以與WSRMacro XML一起使用,但是我不知道如何在XML中做到這一點?

跳過文本,但我需要識別它。

我錯過了什麼嗎?

回答

0

如果您使用的是Kinect語音引擎,則根本不能使用聽寫;引擎根本不支持它。

欲瞭解更多詳情,你可以看我的回答this question

+0

但是在C#API中有一個DictationGrammar和WildcardGrammar。如果我「編碼」它,我可以將我的目標歸檔。事實上,我爲som特殊情況激活了聽寫語法(即使它不好,我同意) –

+0

C#API可與桌面引擎*和*服務器引擎一起使用。桌面引擎支持DictationGrammar和WildcardGrammar;服務器引擎沒有。 –

+0

Kinect使用Microsoft.Speech而不是System.Speech,因爲它似乎儘管您可能會從Kinect中獲取音頻並以某種方式與System.Speech一起使用它(但我認爲如果使用System.Speech,則需要對識別引擎進行培訓) –

0

我的項目SARAH

  • 我加載所有的XML語法
  • 然後,我創建一個聽寫語法
  • 一些用戶的動作啓用/禁用聽寫模式

我知道應該有因爲WSRMacro使用'*',但我不知道如何去做。

可能是a clue