Hi,
This is a very simple adsr-parameter to array conversion patch for monitoring purposes. It can handle two stage decay addsr too. All parameters are within a 0-1 range. It would be amazing to be able to output new lists from array editing, but this would mean some kind of index change detection. However, I like it as is and hope someone finds it useful.
-
Arrays & adsr env (struct/canvases)
-
Here is an interactive version using dynamic canvas creation instead of a pd-array. Has options for line resolution and color.
-
@katz Very nice!.....
Is this what you were looking for...... to make the patch really useful?....... if I understood correctly?
adsr-g-useful.zip ....... message out for [vline~]
David.
-
Hi W-A,
The 5 values it spits out are ramp1 time (attack), ramp1 level, ramp2 time (decay), ramp2 level (sustain), and ramp3 time (release)... all of which are in 0-1 range, so you'll see an example where they are scaled in "audio-test".
-
@katz Ah!.... I missed the audio test....... even better.
And thanks for the heads up on the data order.
So... late night patching errors from me above..... apologies to all........!
Corrected, but anyone that might find it useful should double check......
adsr-g-useful-help.pd
David. -
Another version with creation arguments for width and height :
adsr-g.zip -
@katz I really like this, especially now its scalable
Cheers
Balwyn -
I really like it to. Could it be implemented with data structures? Seems to me that it might be lighter than these movable canvases. @Balwyn, you up to the challenge?
-
I gave the struct challenge a go myself. It seems to have been a success, except for these really annoying graphic drop-outs. I added as many tricks as I could think of to get the structs to reappear in various scenarios.. like edit dragging, menuclose, and first mouse click after opening window. It would be nice to at least have a reliable way to show it as the patch loads.
-
if you put a [delay 50] between the [t b] and the [gs ...( message seems to work.
-
@Liamg I did start but alas (luckily) pipped at the post by @katz.
About 3 years ago I uploaded this clunker
http://www.pdpatchrepo.info/hurleur/adsmr.zip -
I separated the background canvas from the nested gop, as you did in your adsr, and made sure the gop was created later in the object order, relative to the canvas. It seems stable now.
-
I thought about the challenge, then I thought lets try 100% vanilla, no mouse external, no canvas, one struct, one inlet, one outlet, no lateral restriction (read I have not done that yet). this where I'm up to
-
These keep getting better and better! I was finally about to try and learn data structures to make this myself, but your work is so good that I don't have to.
-
Two more versions. The first one only adds the lateral restriction to graph-adsr-v2 while keeping the minimalism. The second is a kind of hybrid between the last two postings.
-
@katz very nice, now the question is "do you prefer 3 nodes or 4?"
-
Does anybody know where I can find a reference/documentation for the arguments in brackets for [filledcurve]?
I'd love to be able to adapt the patch for an 8 stage envelope but it's much too advanced for my skills.
-
very nice how the adsr patch developed during this thread
-
@Balwyn I like this envelope you posted a lot, and is very close to something I'd like to develop. Do you think that would be possible to restrict the x range of the nodes so that for example the decay node is never to the left of the attack node (if that makes sense), and how would one go about implementing it? Thanks a lot
-
@weightless, Hi, actually @katz has already done the restriction stuff in adsr-g2,zip earlier in this thread but here it is again separated out and with some additional attribute messages.
graph-adsr-v2.15.zip -
Oh! and in my vanillaness at the time I changed zexy/drip and zexy/demux to some Pd code alternative