Example #1
0
        private void CalculatePhaseSpace()
        {
            DrawPhaseSpace();
            var k         = int.Parse(kTextBox.Text);
            var size      = Math.Min(int.Parse(sizeTextBox.Text), _soundValues.Values.Count);
            var precision = float.Parse(precisionTextBox.Text);

            var frequencies = _timeFrequencies = _soundValues.GetFrequenciesForFrames(
                size, k, precision, phaseSpaceComboBox.SelectedIndex + 2,
                frameFrequenciesMediana.Checked, useRandomCheckBox.Checked);

            framesTrack.Maximum = frequencies.Count;
            string frequencyString;

            phaseFrequencies.Items.Clear();
            if (frequencies.Count > 0)
            {
                _frequencyTime      = useMedianCheckBox.Checked ? SoundValues.GetMedian(frequencies) : frequencies.Average();
                frequencyString     = _frequencyTime.ToString("##.000");
                frameFrequency.Text = "Częstotliwość ramki: " + frequencies[framesTrack.Value].ToString("##.000");
                phaseFrequencies.Items.AddRange(frequencies.Cast <object>().ToArray());
                phaseFrequencies.SelectedIndex = 0;
            }
            else
            {
                frequencyString     = "-";
                frameFrequency.Text = "-";
            }

            frequencyLabel.Text = "Częstotliwość całości: " + frequencyString;
        }
Example #2
0
        private void btnWczytaj_Click(object sender, EventArgs e)
        {
            AudioHelper audioHelper = new AudioHelper();

            short[] sample1;
            windowSize = 512;
            if (comboBox1.SelectedIndex == 1)
            {
                windowSize = 1024;
            }
            else if (comboBox1.SelectedIndex == 2)
            {
                windowSize = 2048;
            }

            else if (comboBox1.SelectedIndex == 3)
            {
                windowSize = 4096;
            }
            else if (comboBox1.SelectedIndex == 4)
            {
                windowSize = 8192;
            }
            else if (comboBox1.SelectedIndex == 5)
            {
                windowSize = 16384;
            }

            var path = Path.GetSoundPath();
            Tuple <List <double[]>, int, TimeSpan> wave = audioHelper.openWav(path, out sample1, windowSize);

            if (wave != null)
            {
                currentSignal    = new CurrentSignal(wave.Item2, wave.Item1, wave.Item3);
                numFrame.Minimum = 0;
                numFrame.Maximum = currentSignal.signal.Count - 1;
                lbramki.Text     = "Nr ramki: (max. " + numFrame.Maximum + ")";
                RefreshSignal(0);
            }

            _soundValues = new SoundValues(path);

            CalculatePhaseSpace();
            frameTrackLabel.Text = $@"{framesTrack.Value + 1}/{_timeFrequencies.Count}";
        }