Jestem względnie nową platformą C# i Microsoft Speech, ale pracuję nad aplikacją serwera, która będzie musiała przetworzyć darmową dyktando. Zestaw SDK MS Speech Platform wydawał się idealny i działa na serwerze, chyba że odwołuję się do metody AppendDictation() w GrammarBuilder.AppendDictation na platformie Microsoft Speech Platform 11 (serwer)?
Używam Microsoft Speech Platform SDK 11, a aplikacja działa dobrze, jeśli zdefiniować gramatyki, ale chwila dodam w AppendDictation(), ja spotkałem się z tego błędu:
Cannot find grammar referenced by this grammar.
Nawet ta próbka z dokumentacji wydaje się niepowodzeniem:
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);
dziwne, jeśli zmienię LoadGrammar do LoadGrammarAsync, ładunki gramatyczne (lub przynajmniej obsługi zdarzeń nazywa), ale wtedy recoginzer nie powiedzie się z tego błędu:
Error: At least one grammar must be loaded before doing a recognition.
Przeczytałem, że wersja serwerowa platformy nie obsługuje dyktowania, ale wydaje się dziwne, że będzie dostarczana z metodą, która po prostu nie działa. Czy ktoś zdołał uzyskać gramatykę dyktowania do pracy na serwerze? Co ja robię źle?
Dziękujemy
Czy jest zatem jakikolwiek inny sposób na dyktowanie? – KTF