[sdiy] Lin/Log VCAs and envelopes - compensating for log VCAs

rsdio at audiobanshee.com rsdio at audiobanshee.com
Sat Feb 6 23:06:04 CET 2016


On Feb 6, 2016, at 11:08 AM, Tom Wiltshire <tom at electricdruid.net> wrote:
> To be honest, this doesn't look exceptionally "natural" to me. But I don't think I'm going to argue with 50 years of synth history. If that's what we like, that's what we like.
> 
> Now, what I'm thinking is that I could easily tweak the tables in one of my PIC envelope generators to give these "log" curves. I could then feed the envelope to a log VCA and get the same sound you get with a typical ADSR into a OTA/linear VCA. It's a "log-compensated" envelope. Being able to switch between the two curves would enable people to use either a log or linear VCA and still get the same effect.
> 
> What do you all think?

Although tables can be a great implementation choice for many PIC tasks, it might actually be better to use a single pole low-pass filter for your ADSR. That perfectly recreates an RC charging / discharging circuit without requiring a linear-to-logarithmic lookup. Besides, if you have a 16-bit DAC, you probably don't have room for a table large enough to hold all 64K possible log outputs. Even a 10-bit DAC would skip a lot of output codes unless your lookup table were significantly larger than 1K entries (probably at least 8K needed). The low-pass code will require a couple of multiply instructions, but most PIC chips can handle that. If you were programming a DSP chip, you'd be set.

Brian Willoughby
Sound Consulting




More information about the Synth-diy mailing list