public MainWindow()
 {
     InitializeComponent();
     ColorsList = new List<string>(); 
     speechRecognizer = new SpeechRecognizer();
     this.Loaded += MainWindow_Loaded;
 }
コード例 #2
0
ファイル: Program.cs プロジェクト: Elders/Experiments
        static void Main(string[] args)
        {
            SpeechRecognizer sr = new SpeechRecognizer();
            Choices colors = new Choices();
            colors.Add(new string[] { "red", "green", "blue" });

            GrammarBuilder gb = new GrammarBuilder();
            gb.Append(colors);

            // Create the Grammar instance.
            Grammar g = new Grammar(gb);
            sr.LoadGrammar(g);
            sr.SpeechRecognized += sr_SpeechRecognized;
            Console.ReadLine();
        }
コード例 #3
0
        public async Task RecognizeSpeechAsync()
        {
            text     = "Error";
            language = "Error";

            var config =
                SpeechConfig.FromSubscription("54e5c11f4ba84a95a282d180905efeb1", "westus");

            var autoDetectSourceLanguageConfig = AutoDetectSourceLanguageConfig.FromLanguages(new string[] { "en-US", "de-DE", "pl-PL" });

            using var recognizer = new SpeechRecognizer(config, autoDetectSourceLanguageConfig);

            var result = await recognizer.RecognizeOnceAsync();

            var autoDetectSourceLanguageResult = AutoDetectSourceLanguageResult.FromResult(result);
            var detectedLanguage = autoDetectSourceLanguageResult.Language;

            language = detectedLanguage;

            switch (result.Reason)
            {
            case ResultReason.RecognizedSpeech:
                text = result.Text;
                break;

            case ResultReason.NoMatch:
                text = $"NOMATCH: Rozpoznanie nie udało się.";
                break;

            case ResultReason.Canceled:
                var cancellation = CancellationDetails.FromResult(result);

                if (cancellation.Reason == CancellationReason.Error)
                {
                    Debug.WriteLine($"CANCELED: ErrorCode={cancellation.ErrorCode}");
                    Debug.WriteLine($"CANCELED: ErrorDetails={cancellation.ErrorDetails}");
                    Debug.WriteLine($"CANCELED: Did you update the subscription info?");
                }
                text = $"CANCELED: Reason={cancellation.Reason}";
                break;
            }
        }
コード例 #4
0
        private static async Task <Tuple <string, bool> > RecognizeSpeechAsync(Stream input, ILogger log)
        {
            var config = SpeechConfig.FromSubscription(
                Environment.GetEnvironmentVariable("speechApiKey"),
                Environment.GetEnvironmentVariable("speechApiRegion"));

            var response = new Tuple <string, bool>(string.Empty, false);

            using (var audioInput = SpeechUtils.OpenWavFile(new BinaryReader(input)))
            {
                using var recognizer = new SpeechRecognizer(config, audioInput);
                var result = await recognizer.RecognizeOnceAsync();

                switch (result.Reason)
                {
                case ResultReason.RecognizedSpeech:
                    return(new Tuple <string, bool>(result.Text, true));

                case ResultReason.NoMatch:
                    return(new Tuple <string, bool>("Speech could not be recognized.", false));

                case ResultReason.Canceled:
                    var cancellation = CancellationDetails.FromResult(result);

                    if (cancellation.Reason == CancellationReason.Error)
                    {
                        log.LogError($"CANCELED: ErrorCode={cancellation.ErrorCode}");
                        log.LogError($"CANCELED: ErrorDetails={cancellation.ErrorDetails}");
                        log.LogError("CANCELED: Did you update the subscription info?");
                    }

                    return(new Tuple <string, bool>($"CANCELED: Reason={cancellation.Reason}", true));
                }
            }
            return(response);
        }
コード例 #5
0
ファイル: MainWindow.xaml.cs プロジェクト: KinAudio/Master
 private void StopKinectRecognizer()
 {
     this.speech.StopRecognize();
     this.speech = null;
     //this.disp = null;
 }
コード例 #6
0
ファイル: MainWindow.xaml.cs プロジェクト: KinAudio/Master
        private void StartKinectRecognizer()
        {
            //if(this.disp == null)
             //   disp = Dispatcher.CurrentDispatcher;

            this.speech = new SpeechRecognizer(this.sensor, this.ViewModel, this.disp);
        }