Я сейчас пишу приложение для Microsoft Hololens с Visual Studio 2017. Цель заключается в распознавании речи с использованием спецификации грамматики распознавания речи.
Я попробовал свое решение на ноутбуке, и оно хорошо работает, но как-то не так с эмулятором Хололенса.
Проблема самая основная, как это может быть. Слова не распознаются. Нет проблем ни с компиляцией, ни с поиском файла grxml.
Во-вторых, окна RecognizeWithUIAsync () не появляются.
C #:
// Create an instance of SpeechRecognizer
var speechRecognizer = new SpeechRecognizer(language);
// Load Grammar depending on the selected language
var storageFile = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///Grammar/grammatik_de.grxml"));
var grammarFileConstraint = new SpeechRecognitionGrammarFileConstraint(storageFile, "grammatik");
storageFile = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///Grammar/grammatik_eng.grxml"));
grammarFileConstraint = new SpeechRecognitionGrammarFileConstraint(storageFile, "grammatik");
speechRecognizer.UIOptions.ExampleText = @"Example: Stop all vehicles,Fork higher,Fork lower,Vehicle Forward,Drive Backwards";
// Compile the constraint.
await speechRecognizer.CompileConstraintsAsync();
// Start recognition.
SpeechRecognitionResult speechRecognitionResult = await speechRecognizer.RecognizeWithUIAsync();
//do something with the result
try
{
String action = grammarHandling(speechRecognitionResult);
actionOnSpeechAsync(action);
}
catch (Exception) {
}