Example #1
0
        public SignalProvider(IWaveformCalculator waveformCalculator)
        {
            envelope.AttackRate   = 44100;
            envelope.DecayRate    = 44100;
            envelope.SustainLevel = 0.5f;
            envelope.ReleaseRate  = 44100;

            this.waveformCalculator = waveformCalculator;

            Frequency = 1000f;
            Amplitude = 0.25f;
        }
Example #2
0
        public SignalProvider(IWaveformCalculator waveformCalculator)
        {
            envelope.AttackRate = 44100;
            envelope.DecayRate = 44100;
            envelope.SustainLevel = 0.5f;
            envelope.ReleaseRate = 44100;

            this.waveformCalculator = waveformCalculator;

            Frequency = 1000f;
            Amplitude = 0.25f;
        }
Example #3
0
        public WavetableCalculator(IWaveformCalculator calculator)
        {
            int wavetableSize = 1024;

            List<float> wavetableSamples = new List<float>();

            for (int position = 0; position < wavetableSize; position++)
            {
                float sample = calculator.CalculateForSample(position, wavetableSize, wavetableSize*wavetableSize);
                wavetableSamples.Add(sample);
            }

            wavetable = new Wavetable(wavetableSamples);
        }
Example #4
0
        public WavetableCalculator(IWaveformCalculator calculator)
        {
            int wavetableSize = 1024;

            List <float> wavetableSamples = new List <float>();

            for (int position = 0; position < wavetableSize; position++)
            {
                float sample = calculator.CalculateForSample(position, wavetableSize, wavetableSize * wavetableSize);
                wavetableSamples.Add(sample);
            }

            wavetable = new Wavetable(wavetableSamples);
        }