Grammar ConvertToGrammar(NuiGrammar nuiGrammar) { if (nuiGrammar.GrammarType == NuiGrammar.NuiGrammarType.Basic) { var choices = new Choices(); foreach (var item in nuiGrammar.Items) { choices.Add(item.Text); } var builder = new GrammarBuilder(); builder.Culture = speechRecognitionEngine.RecognizerInfo.Culture; builder.Append(choices); var grammar = new Grammar(builder); return(grammar); } throw new NotSupportedException( "Anything other than Basic grammar type is not supported."); }
public void AddGrammar(NuiGrammar newGrammar) { if (this.grammar != null) { this.grammar = newGrammar; var g = ConvertToGrammar(grammar); speechRecognitionEngine.UnloadAllGrammars(); speechRecognitionEngine.LoadGrammar(g); } else { this.grammar = newGrammar; if ((speechRecognitionEngine != null) && (speechRecognitionEngine.Grammars.Count == 1)) { throw new NotSupportedException("Only 1 grammar is supported in this release."); } var recognizer = SpeechRecognitionEngine.InstalledRecognizers() .Where(x => x.Id == KinectSpeechRecognizer).FirstOrDefault(); if (recognizer == null) { throw new InvalidOperationException("No speech recognizer found."); } speechRecognitionEngine = new SpeechRecognitionEngine(recognizer); var g = ConvertToGrammar(grammar); speechRecognitionEngine.LoadGrammar(g); speechRecognitionEngine.SpeechDetected += new EventHandler<SpeechDetectedEventArgs>(speechRecognitionEngine_SpeechDetected); speechRecognitionEngine.SpeechRecognitionRejected += new EventHandler<SpeechRecognitionRejectedEventArgs>(speechRecognitionEngine_SpeechRecognitionRejected); speechRecognitionEngine.SpeechRecognized += new EventHandler<Microsoft.Speech.Recognition.SpeechRecognizedEventArgs>(speechRecognitionEngine_SpeechRecognized); this.speechThread = new Thread(InitializeSpeech); this.speechThread.Start(); } }
public void AddGrammar(NuiGrammar newGrammar) { if (this.grammar != null) { this.grammar = newGrammar; var g = ConvertToGrammar(grammar); speechRecognitionEngine.UnloadAllGrammars(); speechRecognitionEngine.LoadGrammar(g); } else { this.grammar = newGrammar; if ((speechRecognitionEngine != null) && (speechRecognitionEngine.Grammars.Count == 1)) { throw new NotSupportedException("Only 1 grammar is supported in this release."); } var recognizer = SpeechRecognitionEngine.InstalledRecognizers() .Where(x => x.Id == KinectSpeechRecognizer).FirstOrDefault(); if (recognizer == null) { throw new InvalidOperationException("No speech recognizer found."); } speechRecognitionEngine = new SpeechRecognitionEngine(recognizer); var g = ConvertToGrammar(grammar); speechRecognitionEngine.LoadGrammar(g); speechRecognitionEngine.SpeechDetected += new EventHandler <SpeechDetectedEventArgs>(speechRecognitionEngine_SpeechDetected); speechRecognitionEngine.SpeechRecognitionRejected += new EventHandler <SpeechRecognitionRejectedEventArgs>(speechRecognitionEngine_SpeechRecognitionRejected); speechRecognitionEngine.SpeechRecognized += new EventHandler <Microsoft.Speech.Recognition.SpeechRecognizedEventArgs>(speechRecognitionEngine_SpeechRecognized); this.speechThread = new Thread(InitializeSpeech); this.speechThread.Start(); } }
Grammar ConvertToGrammar(NuiGrammar nuiGrammar) { if (nuiGrammar.GrammarType == NuiGrammar.NuiGrammarType.Basic) { var choices = new Choices(); foreach (var item in nuiGrammar.Items) { choices.Add(item.Text); } var builder = new GrammarBuilder(); builder.Culture = speechRecognitionEngine.RecognizerInfo.Culture; builder.Append(choices); var grammar = new Grammar(builder); return grammar; } throw new NotSupportedException( "Anything other than Basic grammar type is not supported."); }
public void AddGrammar(NuiGrammar grammar) { }