Использую Microsoft Speech
. Реализовал простой пример:
static TextBlock l;
SpeechRecognitionEngine speechEngine;
public MainWindow()
{
InitializeComponent();
tb1 = l;
System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("ru-ru"); /* Язык распознования */
speechEngine = new SpeechRecognitionEngine(culture);
speechEngine.SetInputToDefaultAudioDevice(); /* Откуда распозновать речь */
speechEngine.SpeechRecognized += SpeechEngine_SpeechRecognized; /* Событие завершения распознования текста */
Choices choices = new Choices(); /* Выбор распознования (комманды) */
choices.Add(new string[] { "один два", "два", "три" });
GrammarBuilder grammarBuilder = new GrammarBuilder();
grammarBuilder.Append(choices);
Grammar grammar = new Grammar(grammarBuilder);
speechEngine.LoadGrammar(grammar);
}
private void SpeechEngine_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
MessageBox.Show(e.Result.Text);
}
И как понял, распознает только слова указанные в Choices
. Можно ли просто чтобы он не распознавал как команды и просто вводил текст?
Похоже то что Вы хотите получить называется - Dictation Mode
.
var culture = new CultureInfo("ru-ru");
var speechEngine = new SpeechRecognitionEngine(culture);
speechEngine.LoadGrammar(new DictationGrammar()); // Dictation mode.
speechEngine.SetInputToDefaultAudioDevice();
speechEngine.SpeechRecognized += (sender, args) =>
{
// Ваш обработчик.
Console.WriteLine(string.Join(", ", args.Result.Words));
};
Но по своему опыту добавлю: что такое решение не является панацеей и процент ошибок может быть достаточно высок.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Здравствуйте ! Есть сайт на котором ссылки идут через написанный код js
Есть форма с дата-атрибутом "callback", он содержит название функции, которая должна запуститься после отработки AJAX