private void BtnStop_Click(object sender, EventArgs e)
        {
            Learn.RecCommands.Add(SoundProcessing.Stop());

            ComCounter--;
            if (ComCounter == 0)
            {
                LblProg.Text = string.Format("Запишите команду еще {0} раз", ComCounter);
            }
            else
            {
                LblProg.Text = string.Format("Запишите команду еще {0} раза", ComCounter);
            }
            PrbLearning.Value = 100 * (Learning.COUNT - ComCounter) / Learning.COUNT;

            BtnStart.Visible = true;
            BtnStop.Visible  = false;

            if (ComCounter == 0)
            {
                BtnSave.Visible = true;
            }

            Bitmap Bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height);

            pictureBox1.BackgroundImage = Bmp;
            LBPlot.DrawPlot(SoundProcessing.LastFFT /*. GetRange(0,SoundProcessing.LastAmplify.Length/128)*/, Bmp, false);
            //DigitalSignal.DrawPlot(SoundProcessing.LastFFT, Bmp, false);
        }
        private void BtnStop_Click(object sender, EventArgs e)
        {
            const double MIN_DISTANCE = 0d;

            string    name;
            ArrayList result = SoundProcessing.Stop();

            result = Learning.Normalize(result);

            double distance = Speech.Compare(result, out name);

            Logger.Add("Recognited as \"" + name + "\"");
            if (distance >= MIN_DISTANCE)
            {
                tbxLogs.Text += "Похоже команда не расспознана, попробуйте ещё раз,\n но если уверены в своей правоте, то вероятней всего это была команда " + name + "\r\n";
            }
            else
            {
                tbxLogs.Text += "Команда распозанана. Это " + name;
                System.Windows.Forms.MessageBox.Show(name);
            }

            BtnStop.Visible  = false;
            BtnStart.Visible = true;
            inProcess        = false;
            for (int j = 0; j < Speech.Commands.Count; j++)
            {
                this.tbxLogs.Text += "Дистанция между вектором " + ((Command)Speech.Commands[j]).Name + " и записанным вектором - " + MainSpeech.getDistance(((Command)Speech.Commands[j]).Coefs, result) + "\r\n";
            }
            tbxLogs.SelectionStart = tbxLogs.Text.Length;
            tbxLogs.ScrollToCaret();
        }
 private void BtnStart_Click(object sender, EventArgs e)
 {
     if (ComCounter == 0)
     {
         System.Windows.Forms.MessageBox.Show("Кончайте!");
         return;
     }
     BtnStart.Visible = false;
     BtnStop.Visible  = true;
     SoundProcessing.Start();
 }
 private void btnAutoAdd_Click(object sender, EventArgs e)
 {
     if (tbAutoFiles.Lines.Length < 3)
     {
         MessageBox.Show("Не хватает файлов для обучения. Необходимы как минимум три");
         return;
     }
     for (int j = 0; j < Learning.COUNT; j++)
     {
         Learn.RecCommands.Add(SoundProcessing.AutoTeach(tbAutoFiles.Lines[j]));
     }
     ComCounter   = 0;
     BoxName.Text = tbAutoName.Text;
     BtnSave_Click(sender, e);
 }
        private void BtnStart_Click(object sender, EventArgs e)
        {
            Logger.Add("Recognition attempt");

            if (Speech.Commands.Count == 0)
            {
                Logger.Add("Recognition is impossible. Training wasn't made.");
                tbxLogs.Text += "У-ля-ля, всё печально. Сначала требуется обучить систему!\r\n";
            }
            else
            {
                BtnStart.Visible = false;
                BtnStop.Visible  = true;
                Logger.Add("Recognition start");
                inProcess = true;
                SoundProcessing.Start();
            }
            tbxLogs.SelectionStart = tbxLogs.Text.Length;
            tbxLogs.ScrollToCaret();
        }