SynthMaker

Graphic DAHDSR with variable curves & ZOOM!

Archive · 2005 55 old posts

From the original SynthMaker forum (2004–2014), with its members’ names and dates.

Shifrin ·

Hi,

I'm busy making a graphic ADSR (actually DAHDSR), I've more or less finished the GUI for it now - so thought I'd post it for comments/bug reports/etc...

Inside the guts of the thing you'll see seperate modules for each stage of the envelope (A,D,S,R). Each of these has properties so you can make them fixed in one direction etc... There's also the StraightLine & CurveUp/Down modules that draw the curves. It took a little while to get this thing to behave (update smoothly, draw the curves correctly) - but seems pretty cool now 😉

Here's the file : GfxADSR.osm

Incedently, it's easy to add more stages. Hopefully once I've got this all done I can try some sort of multipoint/loopable env 😉

Shif.

angstrom ·

😀 😀 😀

looking forward to the functional version, GUI is very nice and behaves well.

sambean ·

w00t 😀

Smooth stuff.. Like it how the curves properly describe the shape.. and a very well organised schematic..

Looking forward to the finished article..

Thanks Shif

Sam

skOre ·

nice 🙂

fritzman ·

Hey Shif,

very cool so far! 😀 😀 😀

Best wishes, FRitz

rl ·

this is incredible!

suggestions: for easier handling make mouse areas a bit greater around the dots. the mouse area for sustain level could be the whole line. adjust mouse-movement, so that dots are always under the mouse cursor

skOre ·

rl wrote: the mouse area for sustain level could be the whole line.

hint: super hard thing to do!

no wait, you were talking about a straigt horizontal line... 😇

Shifrin ·

rl wrote: for easier handling make mouse areas a bit greater around the dots.

I had thought about that, they are indeed very small mouse areas - will make them bigger - it's easy to change 😉

rl wrote: the mouse area for sustain level could be the whole line.

That's quite doable too - and a good idea!

rl wrote: adjust mouse-movement, so that dots are always under the mouse cursor

Also a good idea, I'll have a look!

Thanks for the feedback - once I'm done with this I'll finish the actual envelope code - and put the whole lot togther for you guys to do with as you wish 😀

Cheers,

Shif.

Tom7777 ·

This looks great Shifrin 🙂

GaryG ·

beautiful.

TheAudiophileDutchman ·

Smooth swingin' 😀

Shifrin ·

Adding more features...zoomable... 😉

Shif.

fritzman ·

Shifrin wrote: Adding more features...zoomable... 😉

Shif.

Very good! 😀

Shifrin ·

Updated...

I've made the mouse areas around the handles larger now. Added a zoom/scroll bar - left-click-drag up/down to zoom in/out, and left/right to scroll through envelope. Also made the sustain area shaded - I plan to add a mouse area to this so you can click anywhere in the shaded sustain area to alter sustain.

A few other cosmetic details - I also plan to add some sort of grid/marker system, and details of the exact times of each stage.

Have a look here :- GfxDAHDSR-Zoom.osm

There may be a few quirks with the zoom/scroll as I added it quickly! Just have to finish coding the envelope, tweak this GUI, and it'll be done (although I'd like to sort out a properties page for it too).

Shif.

lalo ·

nice work shif 😍 i wonder if SM would allow a way to add/delete points at run-time in an exported VST 😉

lalo

angstrom ·

Hi all, does anyone have problems with this envelope when using two of them?

The problem is - after preset change the sustain points of the second envelope always draw at the wrong position, usually in between a couple of envelope points. That means that any synth using this never sounds the same.

it's odd, because one envelope works fine, but adding another seems impossible.

I'd upload an example, but my server has died. But my test file is simply Sam's multiEnv14.osm from above - with a second envelope pasted beneath the first (then connect the green sustain point inputs to the same as env 1 )

any clues on this and I would be grateful . I have a monster synth which uses 4 of these envelopes, it's nearly finished but its impossible to make presets for obvious reasons.

aliasant ·

Yes angstrom.

I have that too.

Deleted both preset-managers inside but still the same.

This env thing is a masterpiece but it needs more work.

infuzion ·

angstrom wrote: Hi all, does anyone have problems with this envelope when using two of them?

The problem is - after preset change the sustain points of the second envelope always draw at the wrong position, usually in between a couple of envelope points. That means that any synth using this never sounds the same.

it's odd, because one envelope works fine, but adding another seems impossible.

I'd upload an example, but my server has died.

I'm suspecting that you need a second Preset Name for the env group. Look inside SM's ADSR module, there is a Properties module that prefixes each of the knob's properties Preset Name.

I use SM's WIKI for files... haven't heard anyone complain yet 😇

sambean ·

Hey Chaps,

I've actually got a more recent version of this with some new features and bug's fixed. I think Malc's going to release it with the next version of SM. If I get a chance I'll put it up tonight, but I'm away on holiday tomorrow so you may have to wait 😇

Sam

aliasant ·

Drewl sambean.

Abort that vacation.

Abort.

abort!

sambean ·

'ere ya go!

Read the tooltip on the module for some required wireless....

www.magalov.com/download/MultiEnv.2.0.osm

Sam

exonerate ·

great work sambean! 😀

i've just been playing with this a little bit and it really good very intuitive and the ability to add extra points is great.

i like the sounds i'm getting from it as well, it's also very responsive.

good stuff mate,

cheers 😀

aliasant ·

sambean.

There are a lot of good people here in the forum. But you outshine them all. They are but peasents by your feets

nice one.!!

angstrom ·

just before I sit at your feet (!)

I still have the same issue with this one unfortunately.

If I copy and duplicate "Multi Envelope Module" and connect it to the pulldowns. I also rename the preset name of the duplicate to be "Multi Env2" .

Now if I flick back and forth between the presets the sustain points don't update. This is in a modification of Sam's above OSM, so the wireless 'before' and 'after' links are still in place. The envelope points themselves will update fine, but the sustain points (and lines) don't.

My server is down again, but I'll put one on the wiki if needed, it's pretty simple to duplicate though by using Sam's file above (env2.0)

aliasant ·

feet, feets, feetus...

aliasant ·

Ok. im a bit to stupid for this.

Were exactly am I supposed to add the 2 wireless outputs inside my main Preset Manager?

Inside my PM theres a bunh of places were I could set them and none makes any sense to me =)

Except maybe the obvious 2, "Before program change" and "After program change" First i thougt that these was the names of the two wireless I was supposed to add but now I think I simply should add 2 wireless outputs on these 2 outs in the manager....so I will try that and name them nothing.

Is there any difference to all this if I have more then 1 multi envelope? If I have less say 3 Multi Envs do I need to have different names on the 3 preset managers?

Told you i was a bit dumb.

angstrom ·

aliasant wrote: First i thougt that these was the names of the two wireless I was supposed to add but now I think I simply should add 2 wireless outputs on these 2 outs in the manager....so I will try that and name them nothing.

those outputs are the two places to add the wireless, but name the as Sam says. Make sure you use Module Wireless Transmits, not the normal Wireless Transmit. They are different things.

take a look at the program manager in his example, that already has the wireless links attached.

aliasant ·

Thank you thank you thank you.

Are you still having problems using more then 1 env?

aliasant ·

Ok. I copied the 2 wireless from the multEnv PresetManager and pasted them insides my main Preset manager. Connected them but realised that they wouldnt work unless I deleted the old ones insed the MultEnvs Pmanager.

So I did that and reconnected the ones in the main PM

They light up so they are connected but...

Scenario is this.

I have 2 different sounds saved as preset 1 and preset 2 In the first preset im using an envelope to control the filter.

In the second preset Im having a very different envelope controling something else.

So. When I go from Main Preset 1 to 2 the Envelopes should change. But they dont.

Why not? Is it just me or is this a bit tricky?

sambean ·

w00t!

Bit Tipsy!

Glad you like it! didn't check it with two modules in 1 schematic though.. I'll check in a week and an 'alf.... Nothin that broke that can't be fixed..

Sam

😕

infuzion ·

aliasant wrote: I have 2 different sounds saved as preset 1 and preset 2 In the first preset im using an envelope to control the filter. ... When I go from Main Preset 1 to 2 the Envelopes should change. But they dont.

Drill down Sam's module like this: Multi Envelope Module / Properties Now, change the text for the String labeled "Preset". One you can name "Multi Env Filter", another "Multi Env OSC" (or whatever fits for you). Now you have 2 distinct sets of presets, rather than 2 copies that clash 🙂

edit: I'm assuming you are using 2 copies of the multienv.

angstrom ·

infuzion, have you tried that?

because it doesn't work. Thats exactly what I have been doing. One env is multienv1 and the other multienv2. I renamed the preset in the properties box.

both envelopes will pull the env points in OK, but the sustain points don't update at all right. It's not that env 2 takes env 1's points ... it just fails to set any kind of sensible sustain points.

infuzion ·

angstrom wrote: infuzion, have you tried that?

because it doesn't work. Thats exactly what I have been doing. One env is multienv1 and the other multienv2. I renamed the preset in the properties box.

I hadn't, but now I have, just for you Angstrom 🙂

I copy & pasted a 2nd, changed the name to "Multi Env2" in the Presets, changed to different configurations of number of points, point positions, etc. Switched to Program 2 in the Preset Manager, more different changes to each env. I can switch from Program 1 & 2, & both envs seem to remember all the correct configs. So, I don't see anything unusual between the 2 env.

You might have to send me your file so I can troubleshoot more.

aliasant ·

infuzion...

I just cant get my envelopes to work with presets.

Would you mind having a look at it?

infuzion ·

sure, post a link

sambean ·

Just had a chance to have a quick look at this, seems that something is breaking after a copy/paste..

Not sure how much time I'll have over the next few days, but should be sortable or at least identifiable, so I'll try and get it soon..

Sam

edit

ignore this, I forgot a connection.. still investigating..

infuzion ·

sambean wrote: Just had a chance to have a quick look at this, seems that something is breaking after a copy/paste..

Wireless links will do this. Might be fixed in the beta; try that!

nippybaynes404 ·

Hello everyone,

Brilliant envelope btw, Thx alot, excellent work. 😉 I noticed a bug with the zoom eirlier, I dont know if anyone elce has but there seems to be a problem (grabbing) moving the points when it is zoomed in and scrolled right.

Just thought I'd let you know,

Thanks again

Nippy

🙂 🙂 🙂 🙂

sambean ·

nippybaynes404 wrote: Hello everyone,

Brilliant envelope btw, Thx alot, excellent work. 😉 I noticed a bug with the zoom eirlier, I dont know if anyone elce has but there seems to be a problem (grabbing) moving the points when it is zoomed in and scrolled right.

Just thought I'd let you know,

Thanks again

Nippy

🙂 🙂 🙂 🙂

Glad you like it!

Seem's to be a problem with the zoom and mouse areas, having a look into it...

btw, I couldn't find any problems with using two envelopes in 1 schematic, if other's are still having problem s with this, an example would be handy!

Thanks,

Sam

sambean ·

Latest Update:

Redone the zoom section: now properly calibrated and fixed problem with mouse areas + little tidy up

Any probs let me know!

Sam

www.magalov.com/download/MultiEnv.2.2.osm

nippybaynes404 ·

Thank you so much dsp wiz Sam. 😉 I didnt expect an answer for a while, let alone an update within hours. 😀 😀 Wow, you guys are great. It apears to work fine now, thank you so much. I will let you know if there are any problems at all.

Thanks again 🙂 🙂 🙂

Nippy 😉

angstrom ·

here's a link of a dual envelope with problems. It is simply your new version with a copied envelope and the preset name changed (in the properties) for the new envelope.

note that if you switch between preset 1 and preset 2 the envelope points update correctly but the sustain lines do not.

>>> Multiple multi env problem OSM <<<

Incorrect sustain lines will jump to the correct place if you drag any point in the problem envelope.

how it should look

how env 1 does look if you go from preset 1 , to preset 2 and then back to preset 1

the presets for each are named differently

any help is greatfully accepted. 🙂 it's pretty much one of the most cool things in SM right now

sambean ·

Hmmm..

OK, it seems to be from using the same set of control parameters (sustain start/end num of sections etc..) to control both envelopes.

This shouldn't happen, but is probably to do with trigger ordering somewhere further down the schematic. I'll have a look into it!

Thanks for pointing this out.

Sam

sambean ·

Here's a quick thing to try:

Go into the Module: Multi Envelope Module->Multi-Env->Envelope Points->Presets.

Add a wireless input, connect it to the trigger output and rename it "After Preset Change" it should light up.

Now test the schematic ( for sound as well as visually ), it seems to be working here but as I'm not sure what's causing it I'm a little reluctant adding new triggers (but this will only a small cpu when changing presets)

Let me know if it works..

Sam

angstrom ·

that works for me, thanks.

🙂

I'm going out on a cycle now, happy in my multi-multi envelope abilities.

thanks again.

nippybaynes404 ·

Hello again, 😀

I have found another prob with the envelope. 🙁 🙁 If you set a really fast release time and hold a note, when the noise stops coming through, if you keep holding the note then the cpu will shoot up (30% on my P.C). When the release times are a bit higher this problem doesnt occur. Sorry to be the bearer of bad news 'again'

Thanks 😉

Nippy

sambean ·

Sounds like denormals..

Shouldn't be a problem to fix...

Sam

matti ·

I wanted to thank everyone involved in creating this envelope. It's great! Hope you don't mind me using a modded version of it on my synths? I got it running with as less cpu cycles as the default sm adsr with some asm optimizing. And it works great in a mono synth too! This has to be one of the most usefull things ever to emerge from these forums. Thank you, and all my love to you 😍

sambean ·

matti wrote: I wanted to thank everyone involved in creating this envelope. It's great! Hope you don't mind me using a modded version of it on my synths? I got it running with as less cpu cycles as the default sm adsr with some asm optimizing. And it works great in a mono synth too! This has to be one of the most usefull things ever to emerge from these forums. Thank you, and all my love to you 😍

Great!

😈

infuzion ·

sambean wrote: Sounds like denormals.. Shouldn't be a problem to fix...

Get a chance to fix them please Sam? I haven't noticed that problem yet though, but maybe I haven't been in that situation yet.

I've also noticed the Section Manager's hop(128) & rate of increment ( makes the envelope run very slowly (step-wise) so it takes forever to complete the envelope. Might be a good idea to atleast let the builder know how to adjust it. A builder like me 😉 TIA

exonerate ·

yeah i've noticed a bit of a denormal problem, seems to be with short releases and it seems to only happen when modulating the cutoff on a filter, it's strange because it doesn't happen everytime.

anyway i replaced the module containing all the code, with one from a previous version which uses a standard ADSR module to control the release, and with the old code i've never had denormals.

so if anyone else has problems with denormals and needs a quick fix just replace the module containing all the code with one from an old version which uses an ADSR for the release, that fixed it for me anyway.

cheers

infuzion ·

exonerate wrote: anyway i replaced the module containing all the code, with one from a previous version which uses a standard ADSR module to control the release, and with the old code i've never had denormals.

I'm unclear exactly where you mean; can you illustrate that better please?

exonerate ·

what i am saying is i have replaced the module which contains all the multi envs code, the one attached to the graphics side, with one from an old version of the multi env, the old version uses an ADSR module to control the release where in the new one it just uses the little 'env' component that you use to hold the sound.

it was easy to replace, when you get to the level were you can see 2 main modules the one containing the graphics is called 'multi env' while the one containing the code is called 'multi envelope' all i have done is replaced the 'multi envelope' module with one from an older version. this module contains all the code for the multi envelope so it's just a case of switching that module for an older version,

since doing that i've had no denormals at all while using it.

cheers 😉

mikedaniel01 ·

Anybody know why the envelope won't save the sustain start through the preset manager? I even checked with the basic file given with multiEnv 2.2 and it dosn't save it either. It only seems to happen if I'm loading a preset file not when i'm just switching through my programs. If anybody could help with this that would be great.

sambean ·

Hey Mike,

Sorry, I didn't get a chance to have a look at this until now. I think it's a problem with the preset manager, I've filed a bug report here:

[old link]

One possible temporary workaround for just now may be to go into the Save/Load module in the preset manager and connect the "Before Load/save" "After Load/Save" to the corresponding "before preset change" "after preset change"

I can't guarantee that this will fix it properly but it's worth a try..

Let me know if it works,

Sam

Wrote something here? To have a post removed or your name hidden, write to [email protected].

Before your first post

A few rules keep this a friendly place. You agree to them once.

Shown next to what you post, here and in the app. It doesn’t have to be your real name: 3–24 lower-case letters, digits or _ (capitals become lower case, spaces become _).

    Then your post goes up straight away.

    Delete this reply?

    Open it in SynthMaker?

    It goes on the track you’re editing there, in place of that track’s sound, and into My sounds. Your other tracks stay as they are.

    Want to keep that track’s sound? Start a new song in SynthMaker first (Song › New song), then open this.

    Report this reply?

    Only the developer reads reports. The person isn’t told who reported them.

    What’s wrong with it?

    Block this person?

    You won’t see their posts and replies here any more. They aren’t told, and you can unblock them at any time.

    People you’ve blocked

    Their posts and replies are hidden from you. Unblock someone to see them again.

    The community rules

    A few rules keep this a friendly place. Everyone agrees to them once, before their first post.