Нужно простое Winforms приложение, слушающее голосовые команды после запуска (хотя бы одну, например "hello") и при получении команды, вызывающее пустую функцию обработчик. Я пробовал сделать подобное (код ниже), однако получаю ошибку: PlatformNotSupportedException . По рекомендациям в интернете пробовал скачать "Microsoft Speech Services v11" и SDK - но ссылки на них (на сайте Майкрософт) неактуальны. Нужно решить эту задачу (либо помочь мне установить нужные пакеты майкрософта, либо сделать ожидание голосовых команд через другой сервис.
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.Recognition;
using System.Speech.Synthesis;
namespace VoiceControlAlex
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
SpeechRecognizer sr = new SpeechRecognizer();
GrammarBuilder gb = new GrammarBuilder("hello");
Grammar gr = new Grammar(gb);
sr.LoadGrammar(gr);
sr.SpeechRecognized += Sr_SpeechRecognized;
}
private void Sr_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
if (e.Result.Text == "hello computer")
{
SpeechSynthesizer sythesizer = new SpeechSynthesizer();
sythesizer.Speak("hello user");
}
}
}
}