Esempio n. 1
0
        public static void synthtests(AudioPlayer pl)
        {
            // also tests performance, because if there is a long pause, this is taking a bit to calculate.
            //pl.Play(new CsWaveAudio.Triangle(300.0, 0.7).CreateWaveAudio(0.5));
            //pl.Play(new CsWaveAudio.Sawtooth(300.0, 0.7).CreateWaveAudio(0.5));
            //pl.Play(new CsWaveAudio.Square(300.0, 0.7).CreateWaveAudio(0.5));
            //pl.Play(new CsWaveAudio.Sine(300.0, 0.7).CreateWaveAudio(0.5));

            //pl.Play(new CsWaveAudio.SineWaveSum(new double[] { 300.0 }, new double[] { 1.0 }, 0.7).CreateWaveAudio(0.5));
            //pl.Play(new CsWaveAudio.SineWaveOrgan(300.0, 0.7).CreateWaveAudio(1.5));
            //pl.Play(new CsWaveAudio.SineWaveSmooth(300.0, 0.7).CreateWaveAudio(1.5));
            //pl.Play(new CsWaveAudio.ElectricOrgan(300.0, 0.7).CreateWaveAudio(0.5));
            //pl.Play(new CsWaveAudio.SquarePhaser(300.0, 0.7).CreateWaveAudio(3.5));

            //pl.Play(new CsWaveAudio.Splash(0.7).CreateWaveAudio(0.5));
            //pl.Play(new CsWaveAudio.RedNoise(0.1).CreateWaveAudio(0.5));
            //pl.Play(new CsWaveAudio.WhiteNoise(0.7).CreateWaveAudio(0.5));
            //pl.Play(new CsWaveAudio.RedNoiseGlitch(250, 0.5, 5, 0.3).CreateWaveAudio(19.5));

            //note-appears to get quieter, but energy spectrum actually the same- that's just our ears hearing frequencies at different volumen

            WaveAudio j1 = (new CsWaveAudio.RedNoiseSmoothed(100, 0.5).CreateWaveAudio(2.5));
            WaveAudio j2 = (new CsWaveAudio.RedNoiseSmoothed(150, 0.5).CreateWaveAudio(2.5));
            WaveAudio j3 = (new CsWaveAudio.RedNoiseSmoothed(250, 0.5).CreateWaveAudio(2.5));

            pl.Play(WaveAudio.Mix(WaveAudio.Mix(j1, j3), j2));
        }
Esempio n. 2
0
        private WaveAudio fullcompute()
        {
            double f0, f1;

            try { f0 = double.Parse(this.txtf00.Text); f1 = double.Parse(this.txtf01.Text); }
            catch (FormatException ee) { MessageBox.Show("Not a number."); return(null); }
            WaveAudio wout;
            WaveAudio win0 = new ElectricOrgan(f0, 0.5).CreateWaveAudio(MaxTimeSeconds + 2);
            WaveAudio win1 = new ElectricOrgan(f1, 0.5).CreateWaveAudio(MaxTimeSeconds + 2);

            if (chk0.Checked && chk1.Checked)
            {
                WaveAudio wout0 = compute(win0, btnCheckpoints0);
                WaveAudio wout1 = compute(win1, btnCheckpoints1);
                wout = WaveAudio.Mix(wout0, wout1);
            }
            else if (chk0.Checked && !chk1.Checked)
            {
                wout = compute(win0, btnCheckpoints0);
            }
            else if (!chk0.Checked && chk1.Checked)
            {
                wout = compute(win1, btnCheckpoints1);
            }
            else
            {
                return(null);
            }
            return(wout);
        }
Esempio n. 3
0
        public static void padsynthtests(AudioPlayer pl)
        {
            WaveAudio menchoir = new PadSynthesisChoir(110.0, 0.7, 1.0).CreateWaveAudio(4.0);

            pl.Play(menchoir);

            WaveAudio ww01 = new PadSynthesisEnsemble(Sine.FrequencyFromMidiNote(59), 0.7).CreateWaveAudio(4.0);
            WaveAudio ww02 = new PadSynthesisEnsemble(Sine.FrequencyFromMidiNote(64), 0.7).CreateWaveAudio(4.0);
            WaveAudio ww03 = new PadSynthesisEnsemble(Sine.FrequencyFromMidiNote(67), 0.7).CreateWaveAudio(4.0);
            WaveAudio ww04 = new PadSynthesisEnsemble(Sine.FrequencyFromMidiNote(69 + 12), 0.7).CreateWaveAudio(4.0);

            pl.Play(WaveAudio.Mix(new WaveAudio[] { ww01, ww02, ww03, ww04 }));

            WaveAudio guitar1 = new PadSynthesisExtended(110.0, 0.7).CreateWaveAudio(4.0);
            WaveAudio guitar2 = new PadSynthesisExtended(110.0 * 1.5, 0.7).CreateWaveAudio(4.0);

            pl.Play(WaveAudio.Mix(guitar1, guitar2));
        }
Esempio n. 4
0
        private void button1_Click(object sender, EventArgs e)
        {
            WaveAudio test = new WaveAudio(44100, 1);

            test.LengthInSamples = 44100 * 7;
            double freq             = 100;                     //300;
            PeriodicAlternative osc = new PAChangeSquare(4.0); //new PASin();

            for (int i = 0; i < test.LengthInSamples; i++)
            {
                test.data[0][i] = 0.9 * osc.GetValue(i * freq * 2.0 * Math.PI / (double)44100.0);
            }
            //player.Play(test, true);

            WaveAudio win    = new WaveAudio(strMedia + "acoust.wav");
            WaveAudio wmixed = WaveAudio.Mix(WaveAudio.Modulate(test, win), 0.7, win, 0.3);

            player.Play(wmixed, true);
        }
Esempio n. 5
0
        public static void operations_test(AudioPlayer pl)
        {
            WaveAudio noteLongLow = new Triangle(Triangle.FrequencyFromMidiNote(60), 0.5).CreateWaveAudio(1.0);
            WaveAudio noteShortHi = new Triangle(Triangle.FrequencyFromMidiNote(64), 0.5).CreateWaveAudio(0.5);

            pl.Play(WaveAudio.Concatenate(noteLongLow, noteShortHi));
            pl.Play(WaveAudio.Concatenate(noteShortHi, noteLongLow));
            pl.Play(WaveAudio.Mix(noteShortHi, noteLongLow));
            pl.Play(WaveAudio.Mix(noteLongLow, noteShortHi));
            WaveAudio tmp = new Sine(200, 1.0).CreateWaveAudio(4.0);

            tmp.setNumChannels(2, true);
            pl.Play(WaveAudio.Modulate(new WaveAudio(mediadir + "d44k16bit2ch.wav"), tmp));

            WaveAudio cp;

            cp = noteLongLow.Clone(); cp.FadeIn(0.3); pl.Play(cp);
            cp = noteLongLow.Clone(); cp.FadeOut(0.3); pl.Play(cp);
            cp = noteLongLow.Clone(); cp.Amplify(0.5); pl.Play(cp);
            cp = noteLongLow.Clone(); cp.Amplify(2.0); pl.Play(cp);
        }