Choreoh.MainWindow.CreateSpeechRecognizerPostRecording C# (CSharp) Method

CreateSpeechRecognizerPostRecording() private method

private CreateSpeechRecognizerPostRecording ( ) : SpeechRecognitionEngine
return SpeechRecognitionEngine
        private SpeechRecognitionEngine CreateSpeechRecognizerPostRecording()
        {
            {
                #region Initialization
                RecognizerInfo ri = GetKinectRecognizer();
                if (ri == null)
                {
                    MessageBox.Show(
                        @"There was a problem initializing Speech Recognition.
                    Ensure you have the Microsoft Speech SDK installed.",
                        "Failed to load Speech SDK",
                        MessageBoxButton.OK,
                        MessageBoxImage.Error);
                    this.Close();
                    return null;
                }

                SpeechRecognitionEngine sre;
                try
                {
                    sre = new SpeechRecognitionEngine(ri.Id);
                }
                catch
                {
                    MessageBox.Show(
                        @"There was a problem initializing Speech Recognition.
                    Ensure you have the Microsoft Speech SDK installed and configured.",
                        "Failed to load Speech SDK",
                        MessageBoxButton.OK,
                        MessageBoxImage.Error);
                    this.Close();
                    return null;
                }
                #endregion

                #region Build grammar

                var postRecordingChoices = new Choices(new string[] { "save", "cancel", "redo", "play" });

                var gb = new GrammarBuilder { Culture = ri.Culture };
                gb.Append(postRecordingChoices);
                // Create the actual Grammar instance, and then load it into the speech recognizer.
                var g = new Grammar(gb);

                sre.LoadGrammar(g);

                #endregion

                #region Hook up events
                sre.SpeechRecognized += new EventHandler<SpeechRecognizedEventArgs>(sre_PostSpeechRecognized);

                #endregion

                return sre;
            }
        }