ADSR Envelopes still incorrect

Bug Reporting
Post Reply
matthewjumpsoffbuildings
Posts: 233
Joined: 25 Oct 2005 04:06
Contact:

ADSR Envelopes still incorrect

Post by matthewjumpsoffbuildings »

I have been playing around with Karma lately and have noticed theres still a problem with the ADSR...

Try this - Make a basic synth with an Osc going into an Amp, and control its "Amp" Knob with an ADSR - and set the Notepitch controller of the synth to Mono. Make the Sustain 127, and use long attack and release times like so
Image

Now play it - I found if i leave "CLK" on the ADSR off, well it is all wrong because if i play one note and then trigger another note quickly while the first note is still in release mode - the attack phase starts from wherever the release was - so instead of a smooth fade i get instant full volume...

If i turn the ADSR's "CLK" option on - well its ok in the attack phase now - but my nice long release is ruined...

What really needs to happen is that if you trigger a new note while the release of another note is still in progress - is that you somehow allow it to momentarily be psuedo-polyphonic to allow for all notes to finish properly
robenestobenz
Posts: 110
Joined: 01 Oct 2005 03:08

Post by robenestobenz »

Yeah, I know what you mean. ADSR/envelopes could benefit from being per voice, so each note played gets its own instance of the ADSR/envelope.
matthewjumpsoffbuildings
Posts: 233
Joined: 25 Oct 2005 04:06
Contact:

Post by matthewjumpsoffbuildings »

exactly - a new voice shld be temporarily added if you trigger a new note while the release of another note is still in progress.

Even in poly mode i notice adsr discrepancies - at no point in time should triggering a new note in any way affect the adsr's effect on any previously playing note.

Very important! :D
karmafx
Site Admin
Posts: 1194
Joined: 07 Mar 2005 16:37

Post by karmafx »

Hi ! Please do send me a patch where this happens (e.g. just save it as a vst "preset")...I've tried to replicate the bug, but without any luck.
I mean of course it fails when running say in poly4 mode and playing more than 4 keys with long release times, but I guess this isn't what your'e talking about ?
matthewjumpsoffbuildings
Posts: 233
Joined: 25 Oct 2005 04:06
Contact:

Post by matthewjumpsoffbuildings »

the attached image at the top is an example...if you replicate that then you will get the error....note the adsr with long release times, and the note controller on "mono".

if you play and hold a note, it takes a fair while for it to hit full volume....then when you release it the note fades out slowly....which is fine...but if you play a new note while an old one is fading out, then the adsr just starts rising from wherever it was while doing the release of the old note, which results in a fast attack for the new note .... which is wrong!

Like i say before, at no point, no matter what polyphony the note controller has, should the attack and release phases of a note be compromised by triggering a new note....

even if your in 4 poly mode, and youve got 4 keys held, well if you press a new note, it shouldnt just instantly cut off the old note.....

the best idea is if you go over your polyphony, trigger the release phase of all the superflous notes, momentarily allowing the extra voices to continue until they have release properly.
robenestobenz
Posts: 110
Joined: 01 Oct 2005 03:08

Post by robenestobenz »

I can make a sound example, if that would be helpful.
matthewjumpsoffbuildings
Posts: 233
Joined: 25 Oct 2005 04:06
Contact:

Post by matthewjumpsoffbuildings »

this is the golden rule

at no point, no matter what polyphony the note controller has, should the attack and release phases of a note be compromised by triggering a new note....

im sure mr karma understands this - its probabyl just a case of working out how to fix it....i hope soon.[/b]
karmafx
Site Admin
Posts: 1194
Joined: 07 Mar 2005 16:37

Post by karmafx »

lol :D .... I'm looking in to it !

edit:
I have a question though: you say "...no matter what polyphony the note controller has"
....even in mono mode !?! How ?
robenestobenz
Posts: 110
Joined: 01 Oct 2005 03:08

Post by robenestobenz »

I suppose mono isn't polyphony, in the strictest sense.
matthewjumpsoffbuildings
Posts: 233
Joined: 25 Oct 2005 04:06
Contact:

Post by matthewjumpsoffbuildings »

exactly - even in mono mode! how u say? Well, if at any point, in mono mode, a note is still in its release phase, and you happen to trigger a new note, you need to momentarily add a new voice, so the 2 notes can work properly (ie old note finishes release properly, new note starts and completes attack properly).

This voice adding behaviour is the only way i can think that other synths do it....even in mono mode, in say 3xOsc (an FL subtractive synth), if you have long attack and decay times, you will be able to hear them complete properly.

I dunno how u would do it but - the attack and release phase need to play properly no matter what....
matthewjumpsoffbuildings
Posts: 233
Joined: 25 Oct 2005 04:06
Contact:

Post by matthewjumpsoffbuildings »

look - heres an mp3 of a single osc synth in mono mode with ultra long attack and release

Click Me

notice the first note fades in for ages....then i release the first note and it starts fading .... while its still fading in its release stage, i press a new note - and this fades in over the top...so the attack and release of the 2 notes dont interfere with each other.
berksky
Posts: 17
Joined: 22 May 2006 15:06

Post by berksky »

I am sorry but this doesn't make sense. The mono mode is emulating a monophonic synthesizer which has only one envelope generator. A single envelope generator cannot be running a sustain phase and an attack phase at the same time. Playing a new note will retrigger the envelope and you will loose the sustain of the first note. What you are describing is only possible with duophonic synths. Why are you using mono instead of poly2?

-Berk
matthewjumpsoffbuildings
Posts: 233
Joined: 25 Oct 2005 04:06
Contact:

Post by matthewjumpsoffbuildings »

hmmm - i just went thru and inspected my synths - and realised i was basing all my assumptions on 3xOsc only...the only other synth i found that did the same was Superwave P8 - a fair few other synths compromised the release phase of a previous note and started the attack at whatever the release was up to...

So i guess karma aint that incorrect :oops:

I still like the idea of a play mode where if you have nice pads with long attacks and releases then voices get their own temporary extra voices so they can finish their release even if a new note is pressed while a note is releasing....a sort of "PAD" option in the note-controller maybe?
matthewjumpsoffbuildings
Posts: 233
Joined: 25 Oct 2005 04:06
Contact:

Post by matthewjumpsoffbuildings »

hmmm - i just went thru and inspected my synths - and realised i was basing all my assumptions on 3xOsc only...the only other synth i found that did the same was Superwave P8 - a fair few other synths compromised the release phase of a previous note and started the attack at whatever the release was up to...

So i guess karma aint that incorrect :oops:

I still like the idea of a play mode where if you have nice pads with long attacks and releases then voices get their own temporary extra voices so they can finish their release even if a new note is pressed while a note is releasing....a sort of "PAD" option in the note-controller maybe?
matthewjumpsoffbuildings
Posts: 233
Joined: 25 Oct 2005 04:06
Contact:

Post by matthewjumpsoffbuildings »

damn dropout...i posted it twice :?
berksky
Posts: 17
Joined: 22 May 2006 15:06

Post by berksky »

Is it not possible to use poly2 for pads? That's what I tend to use (or something higher). Is there a feature of mono that you need? By the way, how does KarmaFX decide which notes to drop when the polyphony is reached in poly mode?

-Berk
matthewjumpsoffbuildings
Posts: 233
Joined: 25 Oct 2005 04:06
Contact:

Post by matthewjumpsoffbuildings »

thats the thing - im talking about having a little "pad" option even if your in poly 3 or 4 mode - because say ur playing a pad - chances are you will use 3 or 4 note chords - so if you played 2 chords in a row, at least some if not all of the release and attack stages would be compromised. So a "pad" option that creates temporary voices to allow the releases to finish properly would be good.
djsynchro
Posts: 20
Joined: 02 Dec 2005 23:57
Location: Netherlands
Contact:

Post by djsynchro »

If a synth is mono then triggereing it again will cutoff the release yes. That's how it supposed to work. This temporary 2 notes thing is total nonsense. I f you don't want notes cut off then increase the polyphony.

:shock:
matthewjumpsoffbuildings
Posts: 233
Joined: 25 Oct 2005 04:06
Contact:

Post by matthewjumpsoffbuildings »

:evil:

:P :P :P :P

look - good synths do what im saying - if you have long, long long attack and release times - then this instant off if max poly is reached is an average behaviour - why not raise the bar and make a smart option so you can preserve your attack and release times???

Look im just putting the suggestion out there - if Kasper wants to make an extra little "pad" option on the note-controller, it wont affect you at all ... you can use the average, crappy sounding "lets kill all the nice fades"...or you can just quadruple the polyphony (and CPU usage) for the instrument you want - because if you have really long attack and releases - your gonna need a lot of polyphony so none of the attack and releases get killed by new notes...whereas a smart, on-demand option would be really cool.

:P
karmafx
Site Admin
Posts: 1194
Joined: 07 Mar 2005 16:37

Post by karmafx »

Please stop ... I'll look into it :-)

- KarmaFX
matthewjumpsoffbuildings
Posts: 233
Joined: 25 Oct 2005 04:06
Contact:

Post by matthewjumpsoffbuildings »

ok sorry ill chill out...i get very excited about karma - its very important to me :lol:
Post Reply