'Composite slopes' for output library #67
Closed
Comments
|
A "Nice Idea", but ultimately requires a different style of ASL usage. While this could be revisited in the future, it shouldn't cloud the redesign of ASL2 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Composite slopes would be composed of three elements:
The general use-case in mind here is an extended version of teletype commands:
So an output has a
offset(commonly a pitch) which it moves toward at theslewrate, while amodulation (typically an lfo for vibrato) is applied. then atop this a triggered event can be added too. In TT the.SLEWparameter is used across both 'offset' and 'pulse' functionality. For apulseit becomes the attack & release times. Here we allow a completely customizablepulsewhich need not be a square wave smoothed by slew, but rather a generic envelope which can be triggered by a physical input or otherwise.For example, the
slewsection could be articulating a generative melody with portamento, while having a fast but subtle vibrato added bymod/action, with thepulsesection instantly jumping up an octave every 4th note, then gliding back down every 8th.All three of these functions will be implemented as ASL slopes, composed together in the IO_BlockProcess() function. This requires some small extensions in the C-layer, but primarily requires development in the lua Output library.
consider the existing syntax:
to make this clearer in the 3-layer setup we could use:
pulse uses the
.widthparam for the pulsewidth in ms.mod uses
.level,.speed, and.shapeparamsslew uses
.offsetand.rateparams. note that changes to.offset(and .rate?) will trigger a new ASL breakpoint, causing the slew effect.there is clearly a great deal of ambiguity in the naming when it omes to the three speed-based parameters. i've tried to make them work with the traditional nomenclature, ie:
slew.rate,modulation.speed, andpulse.widththough perhaps these aren't intuitively obvious.could prepend with
P,MandSbut this feels like a hacky solution. thoughts?The text was updated successfully, but these errors were encountered: