[Fpga-synth] Envelope - linear attack & expo decay/release?

Eric Brombaugh ebrombaugh1 at cox.net
Thu Apr 2 23:16:39 CEST 2009


Scott Nordlund wrote:
> I know I was always dissatisfied with the envelope curves on the DX7.  I'm not sure but I would assume a linear envelope was run through a exponential look-up table to generate an acceptable curve.  It sounded fine for decays, but long attacks (rising envelope segments in general) seemed to delay for a while and then suddenly go up to full amplitude, forcing me to use multiple envelope segments to get an acceptable attack.

I've had zero exposure to the DX-series synths, but I could see that if 
they were using an expo LUT for the attack that worked the way the 
release does that it would have the effect you describe. Annoying.

> If you look at analog envelope circuits, those with an exponential attack still use an exponential RC decay (I mean the curve here, not the envelope stage, with the rate of change slowing as it approaches the destination value), it's just that it goes up to a higher voltage rather than down to 0.  I believe some also implement a linear attack with an integrator (I've never compared them to see which I prefer).  The DX7 method presumably results in exponential growth.

Yes - implementing an RC-like decay and release in digits shouldn't be 
too hard, and a linear attack would probably sound pretty good in 
combination. I could see a system where one would be able to select 
linear or RC for each segment separately.

> So you may want to experiment with linear attack/exponential decay

That's looking like the plan.

> It's worth considering also (though it adds further confusion) that an analog VCA may have an exponential response...

Seems like an expo VCA combined with a linear ADSR would sound a lot 
like the DX7 issue you mentioned.

Eric


More information about the Fpga-synth mailing list