Как исправить факт того, что не работат русский язык в Microsoft Speech Platform?

Привет всем. Проблема с работой Microsoft Speech Platform с русским языком. Английский работает без проблем. Выдает ошибку на sre.LoadGrammar(g); (The language for the grammar does not match the language of the speech recognizer.)
String voice_lang;
            if (lang == "rus") voice_lang = "ru-RU";
            else { voice_lang = "en-US"; }

            System.Globalization.CultureInfo ci = new System.Globalization.CultureInfo(voice_lang);
            SpeechRecognitionEngine sre = new SpeechRecognitionEngine(ci);

            sre.SetInputToDefaultAudioDevice();

            sre.SpeechRecognized += new EventHandler<SpeechRecognizedEventArgs>(SayStart);

            Choices start_ = new Choices();
            if (lang == "eng") { start_.Add(new string[] { "start" }); }
            else { start_.Add(new string[] { "начать" }); }

            GrammarBuilder gb = new GrammarBuilder();
            gb.Append(start_);
            Grammar g = new Grammar(gb);
            sre.LoadGrammar(g);

            sre.RecognizeAsync(RecognizeMode.Multiple);


static void SayStart(object sender, SpeechRecognizedEventArgs e)
        {
            if (e.Result.Confidence > 0.82) { b.PerformClick(); }
        }
  • Вопрос задан
  • 393 просмотра
Решения вопроса 1
@JustMRZ Автор вопроса
gb.Culture = sre.RecognizerInfo.Culture;
Добавил после
GrammarBuilder gb = new GrammarBuilder();
Все работает
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы