Ejemplo n.º 1
0
        /// Конвертация файла в wav, если она нужна, запуск БПФ обработки файла.
        /// При завершении обработки кнопка результата становиться активной.
        private void runButton_Click(object sender, EventArgs e)
        {
            runButton.Enabled = false;
            try
            {
                //Конвертация файла в wav(если требуется)
                if (this.type == FileType.Mp3 || this.type == FileType.Mp4)
                {
                    ConverterBackgroundWorker.RunWorkerAsync();
                }

                //Заполнение структуры wav файла данными
                Analizator.GetWaveData(ref this.wav);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Ошибка");
                runButton.Enabled = true;
                return;
            }

            //Посекундное БПФ левой и правой дорожки
            //FFT_bgWorker.RunWorkerAsync();
            leftFFTbgWorker.RunWorkerAsync();
            rightFFTbgWorker.RunWorkerAsync();
        }
Ejemplo n.º 2
0
        /// Производит конвертацию файла в wav в отдельном потоке
        private void ConverterBackgroundWorker_DoWork(object sender, DoWorkEventArgs e)
        {
            ConverterBackgroundWorker.ReportProgress(1);
            //Конвертация файла в wav
            switch (this.type)
            {
            case FileType.Mp3:
                BinauralAnalysis.Converter.Mp3ToWav(this.wav.Name, "tmpfile.wav");
                this.wav.Name = "tmpfile.wav";
                break;

            case FileType.Mp4:
                //TODO Выделение аудиодорожки из mp4 файла
                break;
            }
        }
Ejemplo n.º 3
0
        private void ConvertButton_Click(object sender, EventArgs e)
        {
            try
            {
                var xml_path = XMLTextBox.Text;
                if (!File.Exists(xml_path))
                {
                    ErrorMessenger.ShowNoFileError(this, xml_path);
                    return;
                }
                var xlsx_path = XLSXTextBox.Text;
                if (!xlsx_path.ToLower().EndsWith(".xlsx"))
                {
                    xlsx_path += ".xlsx";
                }
                try { xlsx_path = Path.GetFullPath(xlsx_path); }
                catch { ErrorMessenger.ShowBadFileNameError(this, xlsx_path); return; }

                List <TemplateNode> template;
                try { template = TemplateNode.ParseLines(TemplateTextBox.Lines); }
                catch (Exception ex) { ErrorMessenger.ShowBadTemplateError(this, ex.Message); return; }

                var converter = new Converter(xml_path, xlsx_path, template);

                ConvertButton.Enabled = false;

                ConverterBackgroundWorker.RunWorkerAsync(converter);
            }
            catch (Exception ex)
            {
                MessageBox.Show(this,
                                ex.ToString(),
                                "Error: Can not convert XML file.",
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Error);
            }
        }
Ejemplo n.º 4
0
 private void AbortToolStripMenuItem_Click(object sender, EventArgs e)
 {
     ConverterBackgroundWorker.CancelAsync();
 }