Я относительно новичок как на C#, так и на платформе Microsoft Speech, но я работаю над серверным приложением, которое должно будет транскрибировать бесплатную диктовку. SDK для MS Speech Platform казался идеальным и работает на сервере, если я не ссылаюсь на метод AppendDictation() в GrammarBuilder.AppendDictation на Microsoft Speech Platform 11 (Server)?
Я использую Microsoft Speech Platform SDK 11, и приложение работает нормально, если я определить грамматику, но в тот момент я добавляю в AppendDictation(), я встретился с этой ошибкой:
Cannot find grammar referenced by this grammar.
Даже этот пример из документации, кажется, не в состоянии:
GrammarBuilder startStop = new GrammarBuilder();
GrammarBuilder dictation = new GrammarBuilder();
dictation.AppendDictation();
startStop.Append(new SemanticResultKey("StartDictation", new SemanticResultValue("Start Dictation",true)));
startStop.Append(new SemanticResultKey("DictationInput", dictation));
startStop.Append(new SemanticResultKey("StopDictation", new SemanticResultValue("Stop Dictation", false)));
Grammar grammar=new Grammar(startStop);
grammar.Enabled=true;
grammar.Name=" Free-Text Dictation ";
_recognizer.LoadGrammar(grammar);
как ни странно, если я изменю LoadGrammar в LoadGrammarAsync, грамматические нагрузки (или, по крайней мере, называется обработчик события), но тогда recoginzer терпит неудачу с этой ошибкой:
Error: At least one grammar must be loaded before doing a recognition.
Я читал, что серверная версия платформы не поддерживает диктовку, но кажется странным, что она будет поставляться с методом, который просто не работает. Кто-нибудь сумел заставить грамматику диктовки работать на сервере? Что я делаю не так?
Большое спасибо
Есть ли другой способ сделать диктовку? – KTF