How to control Flex AHDSR Decay time with Velocity?
-
@Lindon said in How to control Flex AHDSR Decay time with Velocity?:
No, better to think about doing MSEG envelopes....
Actually this project seems to offer a pretty simple to use MSEG envelope. It's MIT licesne. Not really sure about the complexities of integrating it into HISE, especially regarding the modulation structure, but could be a fun experiment to combine with the ExternFloatingTile tutorial.
Likewise it just uses JUCE's strokePath to draw the envelope so with a little elbow grease you may be able to convert this all to a panel in HISEscript...

-
@Lindon said in How to control Flex AHDSR Decay time with Velocity?:
@Christoph-Hart said in How to control Flex AHDSR Decay time with Velocity?:
Should I make the sustain modulation dynamic so that you can modulate a voice while it's playing?
No, better to think about doing MSEG envelopes....
MSEG = Kontakt style flex envelope?
-
@HISEnberg that looks pretty much like the table envelope we already have, no?
-
@Christoph-Hart The main thing about the flex envelope in Kontakt that differentiates it from HISE's table envelope, is you have a sustain segment that can loop. Maybe we need a new table envelope with three tables, the middle one being a looping sustain...
-
@Christoph-Hart you know what... it basically is except the mouse controls are slightly different (more intuitive I find):
Double-click anywhere along the envelope to add a new control point, splitting one segment into two. Double-click an existing control point to delete it, joining two segments into one. Drag control points up, down, left or right. Drag any segment of the graph up or down to change the curvature of that segment.I thought more was taking place in the "segmenting" portion but it functions like the current HISE table for all intents and purposes:
https://github.com/getdunne/juce-MultiStepEnvelopeGenerator/blob/master/Source/SegmentGenerator.cpp -
@HISEnberg The only thing missing from that is resetting the curvature. How is that done?
-
This post is deleted! -
@David-Healey single click controls either the control point or curvature of the segment.
@dannytaurus no, I don't think it has a curvature reset. If you add a point and delete it, it resets to linear.
The codebase for this looks simple enough to follow though, I think it would be pretty rudimentary to customize it to behave like Kontakt's MSEG envelope and add custom mouse callbacks to it. I could try it myself but I would I wouldn't know how to integrate it with HISE's modulation structure or HISE's Master Clock (DAW-syncing).
-
@HISEnberg I've added a few customization options to the mouse behaviour for HISE tables last month, this should all be doable.
-
@Christoph-Hart said in How to control Flex AHDSR Decay time with Velocity?:
@HISEnberg I've added a few customization options to the mouse behaviour for HISE tables last month, this should all be doable.
Awesome, I was gone last month and a half so still catching up on the updates. I see it takes CSS styling as well now which is a nice addition.

-
@David-Healey said in How to control Flex AHDSR Decay time with Velocity?:
MSEG = Kontakt style flex envelope?
yes, and I like your "table envelope" idea above.
-
@Christoph-Hart said in How to control Flex AHDSR Decay time with Velocity?:
@HISEnberg I've added a few customization options to the mouse behaviour for HISE tables last month, this should all be doable.
Well as long (as Dave say) it loops in the sustain potion and thats where the multiple segments are then we get "kontakt like" MSEGs,,,