public Voice(double samplerate, int bufferSize) { this.samplerate = samplerate; bufsize = bufferSize; ampEnvBuffer = new double[bufsize]; filter1EnvBuffer = new double[bufsize]; filter2EnvBuffer = new double[bufsize]; path1Buffer = new double[bufsize]; path2Buffer = new double[bufsize]; processBuffer = new double[bufsize]; OutputBuffer = new double[2][]; OutputBuffer[0] = new double[48000]; OutputBuffer[1] = new double[48000]; Modules = new Dictionary <ModuleId, object>(); Osc1 = new MultiOsc(samplerate, bufsize); Osc2 = new BlOsc(samplerate, bufsize); Osc3 = new BlOsc(samplerate, bufsize); Osc4 = new BlOsc(samplerate, bufsize); //Ins1 = new InsRedux(samplerate, Bufsize); //Ins2 = new InsRedux(samplerate, Bufsize); Ins1 = new InsDistortion(samplerate, bufsize); Ins2 = new InsDistortion(samplerate, bufsize); Filter1 = new DualFilter(samplerate, bufsize); Filter2 = new DualFilter(samplerate, bufsize); AmpEnv = new Ahdsr(samplerate); Filter1Env = new Ahdsr(samplerate); Filter2Env = new Ahdsr(samplerate); Mod1 = new Modulator(samplerate); Mod2 = new Modulator(samplerate); Mod3 = new Modulator(samplerate); Mod4 = new Modulator(samplerate); Mod5 = new Modulator(samplerate); Mod6 = new Modulator(samplerate); MidiInput = new MidiInput(); ModMatrix = new ModMatrix(this); Mixer = new Mixer(); RefreshModuleObjects(); Mod1.UpdateStepsize(); Mod2.UpdateStepsize(); Mod3.UpdateStepsize(); Mod4.UpdateStepsize(); Mod5.UpdateStepsize(); Mod6.UpdateStepsize(); Mixer.Update(); }