SoulState
Joined: Dec 16, 2018 Posts: 7 Location: Moscow
|
|
Blue Hell
Site Admin

Joined: Apr 03, 2004 Posts: 24042 Location: The Netherlands, Enschede
Audio files: 276
G2 patch files: 320
|
Posted: Tue Dec 18, 2018 6:11 am Post subject:
Re: ADSR Envelope retrig problem? And some requests Subject description: Is this a bug? |
 |
|
SoulState wrote: | ADRS envelope dont't restart on gate trig input check the attached patch
In the patch filter cutoff rising with attack stage, but don't restart from beginning (closed filter) on new gate trig signal of same note. |
The problem seems to be in the mult MIDI thingie, as I don't really see anything odd on the ADSR when I trigger it from an LFO (but I may misunderstand things). Are there note-offs for the repeated notes?
Quote: | And some suggestions:
Drive modulation input on HrastSvf, distortion on 12 db Svf and others.
I'ts needed for poly synth control, to control all voices with one knob.
|
Looking at your patch I can see why that would be handy, will keep it in mind for a future update .. more modulation on everything. The Hrast filter is a CPU expensive filter to use BTW.
Quote: | More than four voices on multi midi module, and ROUND ROBIN trig mode on them. Or better to have multi midi module, with regulable amount of steps like in sequencer (amount of steps=polyphony) from 1 to 16.
|
This would be possible, but when keeping the next issue in mind .. there are limits to the polyphony possible.
Quote: | CPU usage on this simple 4-voice synth is crazy. 49% on my i7 4930k with 96khz samplerate.
Is it real to make some optimisation for polyphonic work? |
The current calculation model is that for each sample the whole patch is recalculated module by module and after each calculation the new output value(s) are being propagated. This is being done because patches with complicated feedback will work better this way.
A usual optimization is to not do it like this but to calculate each module a couple of times in a loop and then propagate a set of calculated values. I will not implement this however, as I want the feedback stuff to work good in the self playing patches I make with it.
Another possible optimization would be to implement the algorithms in assembly code, this would be a lot of work, and it is not going to happen.
Over the years I've been trough the code several times, and do not see any straightforward optimization I could apply.
You could set the sample rate lower or could set the control rate decimation higher. _________________ Jan
also .. could someone please turn down the thermostat a bit.
 |
|