Browse Source

instr_grainlet - remove env, dont need it (have track env now)

main
heck 7 months ago
parent
commit
1b2e22d228
  1. 10
      src/instr_fm.cc
  2. 4
      src/instr_fm.hh

10
src/instr_fm.cc

@ -16,17 +16,10 @@ namespace Heck {
osc.SetFrequency(40); osc.SetFrequency(40);
osc.SetRatio(0.); osc.SetRatio(0.);
osc.SetIndex(0.); osc.SetIndex(0.);
volEnv.Init(samplerate);
volEnv.SetTime(dsp::ADENV_SEG_ATTACK, .0001);
volEnv.SetTime(dsp::ADENV_SEG_DECAY, 0.7);
volEnv.SetMax(1);
volEnv.SetMin(0);
} }
void FM::trigger() void FM::trigger()
{ {
volEnv.Trigger();
osc.Reset(); osc.Reset();
} }
@ -37,7 +30,6 @@ namespace Heck {
osc.SetFrequency(31 + (val * 320.)); osc.SetFrequency(31 + (val * 320.));
break; break;
case 1: case 1:
volEnv.SetTime(dsp::ADENV_SEG_DECAY, val * 2.);
break; break;
case 2: { case 2: {
float ratio_val = scalen_min_max(val, 1., 3.); float ratio_val = scalen_min_max(val, 1., 3.);
@ -56,8 +48,6 @@ namespace Heck {
{ {
float sig{}; float sig{};
sig = osc.Process(); sig = osc.Process();
float volEnv_sig = volEnv.Process();
sig *= volEnv_sig;
return sig; return sig;
} }

4
src/instr_fm.hh

@ -14,19 +14,15 @@ namespace Heck {
class FM : public AbstractInstrument { class FM : public AbstractInstrument {
public: public:
FM(); FM();
void init(); void init();
void trigger() override; void trigger() override;
void ctl(unsigned int ctl_nr, float val) override; void ctl(unsigned int ctl_nr, float val) override;
void switch_mode1(unsigned int pos) override; void switch_mode1(unsigned int pos) override;
void switch_mode2(unsigned int pos) override; void switch_mode2(unsigned int pos) override;
float nextsample() override; float nextsample() override;
private: private:
dsp::Fm2 osc; dsp::Fm2 osc;
dsp::AdEnv volEnv;
}; };
} // namespace Instrument } // namespace Instrument

Loading…
Cancel
Save