sointu icon indicating copy to clipboard operation
sointu copied to clipboard

wish: free envelope

Open wayfu opened this issue 1 year ago • 4 comments

a simple x/y field with a length parameter and 2+ nodes (one at time 0, one at time 1)- with more nodes addable.

wayfu avatar Nov 02 '24 15:11 wayfu

We discussed this with qm210 and the more universal unit (& easier to implement) might be "lookup table": you would draw a linearly interpolated curve with arbitrary number of XY points. You could then make a normal envelope with practically infinite attack and sustain at 0.5, so it effectively goes from 1 -> 0.5 (sustain) -> 0. Then just draw the lookup table shape to whatever you want to happen during decay and during release.

vsariola avatar Nov 02 '24 20:11 vsariola

Such a LUT would also be useful for arbitrary waveshaping & distortion

vsariola avatar Nov 02 '24 20:11 vsariola

i don't think i understand completely... isn't the arbitrary number of XY points exactly what i was describing?

wayfu avatar Nov 02 '24 21:11 wayfu

Yes, but instead of envelope, it would take take signal as input and treat it as a mapping. So, instead of just outputting envelopes, it could take any signal e.g. oscillator or envelope as its input. If the input to the unit is signal x, it would output f(x), where f is a piecewise linear function.

You could then input time into it (from an envelope) to get what you want. But you could also input an oscillator to it and e.g. use it to squash the peaks of an oscillator for distortion.

vsariola avatar Nov 02 '24 21:11 vsariola