Я пытаюсь написать программу, которая поддерживает распознавание речи с помощью специальной (специализированной) грамматики. Однако событие SpeechRecognized никогда не срабатывает, и апплет распознавания речи действует так, как будто грамматика не существует.Использовать распознавание речи с C#
Вот мои точные шаги. Скажите, пожалуйста, где я ошибаюсь.
- Открыть панель управления, найти «речь», а затем нажать «Начать распознавание речи».
- Открыть Visual C#, создать новый проект Windows Forms
- Скопируйте и вставьте код от the first answer on this Stack Overflow question в проект.
- Добавьте необходимую ссылку на System.Speech.
- Запустите программу, при которой апплет распознавания речи все еще работает.
- Скажите «Начать прослушивание».
- Say число между 1 и 100.
текст лейбла никогда не изменяется от значения по умолчанию («label1»), так что кажется, что rec_SpeechRecognized() никогда не вызывается, то есть событие SpeechRecognized не срабатывает. Если я скажу номер, который кажется несколько похожим на имя открытого окна или программы в моем стартовом меню, он спросит меня, это то, что я имел в виду. Это, как представляется, полностью агностик пользовательской грамматики, которую я только что определил.
Я пробовал множество примеров, которые я нашел в Интернете, которые в значительной степени эквивалентны примеру в том ответе, с которым я связан, только с другой грамматикой. Я получаю одинаковый результат для всех, поэтому я предполагаю, что я должен делать что-то еще неправильно.
Что я делаю неправильно?
ты поставил точку останова на callback обратного вызова, чтобы узнать, вызвано ли это вызовом/ – chollida