Выполнение команд голосом - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте, я новичок, но захотелось поиграться с такой штукой как выполнение команд голосом. Google Voice Search пока не могу разобрать, поэтому хочу попробовать из библиотеки .NET. Вообщем нашел какой-то код, но не пойму почему ошибки выдает. Сайт http://studentguru.gr/b/vangos/archi...cognition.aspx Код где ошибка:
// Initialize the speech recognition engine and define the audio input device.
_recognizer = new SpeechRecognitionEngine();
_recognizer.SetInputToDefaultAudioDevice();
 
// Specify the exact words that the engine will try to recognize.
Choices choices = new Choices("left", "right", "top", "down");
 
// Create and load a Grammar using the Choices above.
GrammarBuilder grBuilder = new GrammarBuilder(choices);
Grammar grammar = new Grammar(grBuilder);
_recognizer.LoadGrammar(grammar);
 
// Create the event handler
_recognizer.SpeechRecognized += new EventHandler<SpeechRecognizedEventArgs>(_recognizer_SpeechRecognized); 
// вот тут на _recognizer_SpeechRecognized 
 
// Start speech recognition
_recognizer.RecognizeAsync(RecognizeMode.Multiple);

Решение задачи: «Выполнение команд голосом»

textual
Листинг программы
using System;
using System.Data;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using NAudio;
using NAudio.Wave;
 
 
namespace WindowsFormsApplication2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        WaveIn waveIn;
        WaveFileWriter writer;
        string outputFilename = "F:/demo.wav";
 
        void waveIn_DataAvailable(object sender, WaveInEventArgs e)
        {
            writer.WriteData(e.Buffer, 0, e.BytesRecorded);
        }
 
        void waveIn_RecordingStopped(object sender, EventArgs e)
        {
            waveIn.Dispose();
            waveIn = null;
            writer.Close();
            writer = null;
        }
 
 
        private void button1_Click(object sender, EventArgs e)
        {
            waveIn = new WaveIn();
            waveIn.DeviceNumber = 0;
            waveIn.DataAvailable += waveIn_DataAvailable;
            waveIn.RecordingStopped += new EventHandler<NAudio.Wave.StoppedEventArgs>(waveIn_RecordingStopped);
            waveIn.WaveFormat = new WaveFormat(44100, 2);
            writer = new WaveFileWriter(outputFilename, waveIn.WaveFormat);
            waveIn.StartRecording();
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            waveIn.StopRecording();
        }
 
 
 
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.2 из 5
Похожие ответы