При работе с распознаванием речи возникает ошибка - C#
Формулировка задачи:
Здравствуйте, при работе с распознаванием речи возникает ошибка. Код программы:
Для работы с речью скачивал Microsoft Speech SDK 5.1 и Microsoft Speech API 5.1. Думаю что проблема находится именно в них. Делал все по примеру на Youtube. Прошу помочь.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Speech;
using System.Speech.Recognition;
using System.Speech.Synthesis;
using System.Diagnostics;
namespace VoiceRecognizationDemoApp
{
public partial class Form1 : Form
{
SpeechSynthesizer ss = new SpeechSynthesizer();
PromptBuilder pb = new PromptBuilder();
SpeechRecognitionEngine sre = new SpeechRecognitionEngine();
Choices clist;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
clist = new Choices();
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
button1.Enabled = false;
button2.Enabled = true;
clist.Add(new string[] { "hello", "how are you", "what is the current time", "open chrome", "thank you", "close"});
Grammar gr = new Grammar(new GrammarBuilder(clist));
try
{
sre.RequestRecognizerUpdate();
sre.LoadGrammar(gr);
sre.SpeechRecognized += sre_SpeechRecognized;
sre.SetInputToDefaultAudioDevice();
sre.RecognizeAsync(RecognizeMode.Multiple);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Error");
}
}
private void sre_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
switch (e.Result.Text.ToString())
{
case "hello":
ss.SpeakAsync("Hello Mihail");
break;
case "how are you":
ss.SpeakAsync("i am doing great Mihail. How about you?");
break;
case "what is the current time":
ss.SpeakAsync("current time is" + DateTime.Now.ToLongTimeString());
break;
case "thank you":
ss.SpeakAsync("not at all");
break;
case "open chrome":
Process.Start("chrome", "http://www.google.com/");
break;
case "close":
Application.Exit();
break;
}
textBox1.Text += e.Result.Text.ToString() + Environment.NewLine;
}
private void button2_Click(object sender, EventArgs e)
{
sre.RecognizeAsyncStop();
button1.Enabled = true;
button2.Enabled = false;
}
}
}Решение задачи: «При работе с распознаванием речи возникает ошибка»
textual
Листинг программы
SpeechRecognitionEngine sre = new SpeechRecognitionEngine();