Я пытаюсь написать программу, которая поддерживает распознавание речи с помощью пользовательской (специализированной) грамматики. Однако событие SpeechRecognized никогда не запускается, и апплет распознавания речи действует так, как будто грамматика не существует.
Вот мои точные шаги. Пожалуйста, скажите мне, где я иду не так.
- Откройте панель управления, найдите «речь», затем нажмите «Начать распознавание речи».
- Откройте Visual C #, создайте новый проект Windows Forms
- Скопируйте и вставьте код из первого ответа на этот вопрос переполнения стека в проект.
- Добавьте необходимую ссылку на System.Speech.
- Запустите программу с апплетом распознавания речи.
- Скажите «Начните слушать».
- Произнесите число от 1 до 100.
Текст метки никогда не меняется со значения по умолчанию («label1»), поэтому кажется, что rec_SpeechRecognized () никогда не вызывается, то есть событие SpeechRecognized никогда не срабатывает. Если я скажу число, которое звучит несколько похоже на название открытого окна или программы в моем меню «Пуск», оно спросит меня, имею ли я это в виду. Кажется, что он совершенно не зависит от пользовательской грамматики, которую я только что определил.
Я перепробовал множество примеров, которые нашел в Интернете, и все они в значительной степени эквивалентны примеру в ответе, на который я ссылался, только с другой грамматикой. Я получаю одинаковый результат для всех из них, поэтому я предполагаю, что, должно быть, делаю что-то еще неправильно.
Что я делаю не так?