New Tool (3.0): Quick Vol AHDSR (July 2015)

loving this tool, great workflow enhancer, thanks!

been tinkering with the code trying to work out if the ‘Enable’ checkbox can be ticked (and ADSR created if not present) when the tool is invoked.
Would save an extra (and for me unnecessary) mouse click :wink:

had no luck though, any hints?

Hi muckleby, I just got around to looking at this this.

Were you after it adding an envelope just on initialising the gui, or adding an AHDSR to every instrument that you navigate to when the tool GUI is open?

hey Ledger! thanks for getting back to me.
just adding on initialisation would do the trick for me
i noticed this behaviour was default (or maybe it was the 2nd behaviour you described?) with earlier versions but couldnt get my head around the listeners in this current version.
any pointers are much appreciated :wink:

Heres a version that adds AHDSR on first run. Cant remember whether previous behaviour you mention was a deliberate feature change/bug. Anyhow:

–1.33 now added in post below

Let me know if it works ok for you. (Note: it doesn`t check if a sample is already present in the instrument it is opened on)

If you are interested, below is the code I added to main.lua on line 810. It adds a AHDSR after gui is layed out but before it is first refreshed.

    --auto add AHDSR on first run

      if vb.views["enabled"].value == false then --check envelope no already present via gui state
      --ADD NEW ahdsr
        ahdsr = song.instruments[song.selected_instrument_index].sample_modulation_sets[1]:insert_device_at("Modulation/AHDSR",1,1)--index
        --Show on GUI readout that an envelope has been added
         vb.views["readout"].text = "New AHDSR Added"
        --set initial values
        --attack to 0
        ahdsr.parameters[ATTACK].value = 0
        --Hold to 0
        ahdsr.parameters[HOLD].value = 0
        --Decay to 0.5
        ahdsr.parameters[DECAY].value = 0.5
        --Sustain to 0
        ahdsr.parameters[SUSTAIN].value = 0
        --Release to 0
        ahdsr.parameters[RELEASE].value = 0


perfect! big thanks man appreciate it.

will speed up my workflow beautifully

niceone for posting the code, pretty simple when you know how ey!

will be tweaking those default paramaters so again much appreciated :wink:

A bug was introduced in last version 1.32 (which has the auto-add device behaviour) where multiple envelopes could be added on subsequent initialisations. Fixed in 1.33:

–new version below

Version 1.5

  • Added rotaries to control the slope for attack,decay and release controls
  • Added Graph Env. button to add/access a modulation envelope in addition to the standard AHDSR. It can also be enabled/ bypassed with new checkbox next to button.

Quick Update: Version 1.51

  • Fixed API version number
  • New envelopes have points automatically at max, so as not to change sound immediately

NOTE: When clicking around tracks, you may end up with an envelope window open that does not correspond to the current track/ instrument. When this is the case the Graph Env. toggle button will be grey and not orange. Press the Graph Env. button again to correct.

Quick Vol 1.5


hi could it work on all aspects of the sampler ie filter as well cheers

Have considered it and still a possibility, but there are quite a lot of parameters/options to copy into the tool then. i.e. for filter:


This all starts to add more gui confusion to the tool, which is already getting a bit messy for a quick helper. It seems by that time you may as well get stuck into the sampler and edit the modulation there.