Filter/DSP code/KG questions
Posted: Sat Dec 12, 2015 12:07 pm
I summarize my questions here, instead of creating a topic per question.
1. The standard ADSR that we use so often, is pre-set to 4 seconds, if I read the dsp code correctly. But, is the whole envelope 4 seconds (disregarding sustain for this question), or is each stage controllable to up to 4 seconds (attack - 4s, decay 4s, release 4s)?
2. If I want to make the ADSR alternatively tempo-sync'd (to be able to set it to note lengths, like 1/4 or 1/16 etc.), what would be the correct approach? The envelope will be switchable between normal and tempo-sync, and in tempo-sync mode it shall have a fixed maximum, for example a bar note, which would need a flexible time setting, since a bar note at 130 bpm takes less time than a bar note at 70 bpm.
3. KG, I hope you'll read this. Is your assembler module capable of optimizing already existing DSP-Code? If I would use the code from the standard ADSR, would your editor spit out optimized Assembler code or would I need to make changes to the DSP-code first?
4. The ZDF filter calculates all possible outputs at once (LP, HP, BP, etc.). A user won't switch a filter at sample rate, so it will run for a while on just one output. Wouldn't it be better to do the calculations only when needed (if LP is used it doesn't calculate BP, HP, etc.), or are savings too small to justify such approach?
5. With the ZDF filter outputting all filtering at once, I immediatly thought of "morphing" between the filter options (by cross-fading over time). Musically it would create awesome new sounds. I wonder why nobody has done this yet? Doesn't it make sense, or was nobody inspired before?
1. The standard ADSR that we use so often, is pre-set to 4 seconds, if I read the dsp code correctly. But, is the whole envelope 4 seconds (disregarding sustain for this question), or is each stage controllable to up to 4 seconds (attack - 4s, decay 4s, release 4s)?
2. If I want to make the ADSR alternatively tempo-sync'd (to be able to set it to note lengths, like 1/4 or 1/16 etc.), what would be the correct approach? The envelope will be switchable between normal and tempo-sync, and in tempo-sync mode it shall have a fixed maximum, for example a bar note, which would need a flexible time setting, since a bar note at 130 bpm takes less time than a bar note at 70 bpm.
3. KG, I hope you'll read this. Is your assembler module capable of optimizing already existing DSP-Code? If I would use the code from the standard ADSR, would your editor spit out optimized Assembler code or would I need to make changes to the DSP-code first?
4. The ZDF filter calculates all possible outputs at once (LP, HP, BP, etc.). A user won't switch a filter at sample rate, so it will run for a while on just one output. Wouldn't it be better to do the calculations only when needed (if LP is used it doesn't calculate BP, HP, etc.), or are savings too small to justify such approach?
5. With the ZDF filter outputting all filtering at once, I immediatly thought of "morphing" between the filter options (by cross-fading over time). Musically it would create awesome new sounds. I wonder why nobody has done this yet? Doesn't it make sense, or was nobody inspired before?