ADSR outputs are too loud (!)

PSG's icon

I was practicing with a simple additive synthesizer. I first made a synth patch, then adapted it to be used inside a poly~ object. It works, but now my levels are way to high. Also, it seems like low sustain levels on the ADSRs aren't as quiet as they should be. I did divide velocities by 127 before sending them into the ADSRs, so that shouldn't be my problem. I'm including the patch and the poly~'s "voice" patch here. I loaded three presets (presets 1, 2, 3) so you don't have to manually enter values for all the parameters. For simplicity, I currently only have 1 voice in the poly~, but if I get the thing to work properly I'll add more, of course...

AdditivePracticePolySynth.maxpat
Max Patch

AdditivePoly_VOICE.maxpat
Max Patch

LSka's icon

sustain values should be between 0. and 1.

PSG's icon

Oh, gosh... Can't believe I forgot about that part. Thanks for the reminder!
I should probably put limits on those float values.

Roman Thilenius's icon


not to forget that two voices with a peak of 1 at the same moment will sum up to 2.

PSG's icon

I noticed that when I changed the synth to 8 voices, volumes added up and got louder as more voices were played. Thanks for telling me why. Is there a way to correct for that problem -- to keep polyphonic voices from adding to each other's ADSR values? Is it simply a bad idea to use multiple ADSRs inside of a polyphonic patch?

Roman Thilenius's icon


no, it is correct to work within the area of 0.-1. in the voices, when required you can put the volume down later in the summed output.

in "normal" synthesizers they do not care to "correct" that, but with 100+ voices it can make sense to go somewhat lower by default at the outputs.

why it happens? well, 1+1=2!

Peter Ostry's icon

> why it happens? well, 1+1=2!

Not always.
1 cloud + 1 cloud = 1 cloud

Roman Thilenius's icon

the chaos theorem works fine with a pop music mixing session, but not with two sinewaves of the same frequency and phase. :)