Beispiel #1
0
        public SpectrumDiagramDrawer(int spectrumSamples, Rectangle displayRectangle, WavFileData fileData)
        {
            SpectrumSamples  = spectrumSamples;
            SpectrumValues   = new float[SpectrumSamples];
            DisplayRectangle = displayRectangle;
            Diagram          = new DirectBitmap((int)displayRectangle.Width, (int)displayRectangle.Height);
            Color            = Color.OrangeRed;

            FftProvider = new CorrectCooleyTukeyInPlaceFFTProvider(SpectrumSamples, ApplyTimeThinning);
            FileData    = fileData;
        }
Beispiel #2
0
        async void OpenFile()
        {
            OpenFileDialog opf = new OpenFileDialog();

            opf.Filter = "Файлы Audio (*.wav, *.mp3)|*.wav;*.mp3";
            if (opf.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            string filename = opf.FileName;

            SetLabelStatusText("Opening");

            byte[] fileData = await FileLoader.LoadAny(filename);

            //читаем Wav файл
            var wavFileData = await WavFileData.LoadWavFile(fileData);

            SetLabelStatusText("Playing");

            this.Text = opf.SafeFileName;

            _currentWavFileData = wavFileData;

            SetWaveformProvider();

            SetVolumeProvider();

            //создаём новый медиафайл
            _playerProvider.SetFile(filename);

            //SetSpectrumDrawer();
            SetSpectrumDiagramDrawer();

            //по невероятной причине, из-за открытия диалогового окна, форма находится не в фокусе
            //поэтому выводим форму на первый план
            this.BringToFront();
        }
Beispiel #3
0
 public IterationableSpectrumDiagramDrawer(int spectrumSamples, Rectangle displayRectangle,
                                           WavFileData fileData, int iterations) : base(spectrumSamples, displayRectangle, fileData)
 {
     Iterations = iterations;
 }
Beispiel #4
0
 public ParallelSpectrumDiagramDrawer(int spectrumSamples, Rectangle displayRectangle, WavFileData fileData) :
     base(
         spectrumSamples, displayRectangle, fileData)
 {
 }