Forums > MaxMSP

pattrized multislider | constant power morphings?

July 8, 2013 | 3:25 am

hello,

i am using a pattrized multislider to control amplitudes of a bunch of samples, playing at the same time.

when morphing between 2 presets, e.g. with one slider placed at the maximum and one at the minimum for preset 1 and vice versa for preset 2, the result of the morphing (between preset 1 & 2) is a non equal power transition. for illustration see the demo patch that i append (for simplicity i use two synthvoices).

the goal is to get a constant power/ perceived loudness when morphing between the 2 presets.
is this possible using the multislider object? i know the constant power panning/crossfade examples but i have no clue how to do it with a pattrized multislider…

thanks, johannes


July 8, 2013 | 9:18 am

if you double-click pattrstorage you can get to the Client Objects page, from where you can set object response to "exponential curve", and then choose an exponent in the box to the right of that – I’ve gotten good results with value 2.5-3.4 depending on what I was trying to do.


July 8, 2013 | 11:42 pm

thanks wetterberg, i already tried that but not with the expected result, there is still a difference in power inbetween the both presets, isn´t it?
i guess there is an exponential scaling of the output of the multislider object needed to get a constant power transition. do you have any idea how to achieve that?


July 9, 2013 | 12:20 am

ah, I must be on crack, I couldn’t get it to work either! Sorry, Johannes.

This one seems spot on:

<code>

– Pasted Max Patch, click to expand. –

</code>


July 9, 2013 | 9:47 am

thats it. thanks a lot, wetterberg.

edit: because of the exponential function you are using the lower amplitudes are now hard to control precisely. e.g. when you morph from preset 1 to 2 you will notice a jump in amplitude at around 1.001 and 1.99 because amp of one synthvoice drops to zero instantly.

is there a workaround?


July 9, 2013 | 10:46 am

Yes; grab the flonum, and extend it a bit, so you get 1.9999 too. Or interpolate the input to pattrstorage? :)


July 9, 2013 | 11:15 am

of course. forgot to say that i also want to draw into the multislider object.
i guess there is no straight way of "fine drawing" in the lower amps …
what you mean with interpolate the input to pattrstorage?


July 9, 2013 | 1:13 pm

>i guess there is no straight way of "fine drawing" in the lower amps …

Well this scaling gives you resolution in the quiet bits, as well. I guess I don’t understand what you’re trying to do.

>what you mean with interpolate the input to pattrstorage?

you asked about the jump at the edges, near the integer values of pattrstorage; that is alleviated by interpolating the morph control just a tad bit, really. That’s all I meant to say.


Viewing 8 posts - 1 through 8 (of 8 total)