Как изменить выходные данные распознавания речи Windows? - PullRequest
3 голосов
/ 23 мая 2011

Я пишу свое первое приложение для распознавания речи, используя пространство имен System.Speech .NET Framework 4.0.

Я использую распознавание общей речи, загружаю стандартную грамматику диктовки и пользовательские грамматики, которые я сделал.

Я также фиксирую текст, распознаваемый распознавателем речи Windows (WSR), реализуя обработчик для события «SpeechRecognized».

Я хотел бы изменить распознанный текст (например, изменить «два» на «2» в тексте), но если я это сделаю, вывод не будет записан в текущем приложении (например, MS Word).

Я знаю, что могу сделать что-то ПОХОЖЕЕ, используя метод SendKeys, но я думаю, что это не очень хорошая идея, поскольку качество вывода ниже. Например, если вы используете WSR в качестве стандартного пользователя, вы увидите это после "." или новой строкой следующее предложение начинается с заглавной буквы. Есть множество вещей, которые вы должны принять во внимание, если хотите написать свой собственный анализатор вывода, поэтому я хотел бы использовать тот, который использует WSR, если вы не обрабатываете событие SpeechRecognized. Но ... КАК ??

(я не против использовать SAPI при необходимости).

Спасибо !!

1 Ответ

2 голосов
/ 07 января 2012

Короткий ответ: ты не можешь. WSR не имеет хука, который позволяет третьим сторонам подключаться к своему каналу диктовки.

...