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.SetRatio(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()
{
volEnv.Trigger();
osc.Reset();
}
@ -37,7 +30,6 @@ namespace Heck {
osc.SetFrequency(31 + (val * 320.));
break;
case 1:
volEnv.SetTime(dsp::ADENV_SEG_DECAY, val * 2.);
break;
case 2: {
float ratio_val = scalen_min_max(val, 1., 3.);
@ -56,8 +48,6 @@ namespace Heck {
{
float sig{};
sig = osc.Process();
float volEnv_sig = volEnv.Process();
sig *= volEnv_sig;
return sig;
}

4
src/instr_fm.hh

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

Loading…
Cancel
Save