Forums > MaxMSP

Pitch Ratios with a Global Ratio


June 19, 2013 | 4:39 am

Hello All,

I’ve had a little search but can’t come up with much from the forum.

I have a few different granular polys~ which all work using a pitch ratio (0.5 = -12 semitones, 2 = +12). I want to be able to change these pitches with a global control, which also works on ratios. After a bit of rudimentary fuddling I had something which sounded correct by adding the global pitch ratio to the current pitches, but this doesn’t work when the main pitches are in a high ratio, as the global pitch is limited in my patch to -1.

Here’s a patch to demonstrate the problem:

<code>

— Pasted Max Patch, click to expand. —

</code>

Obviously this is broken, but my little monkey brain doesn’t know the maths to make it work.

June 19, 2013 | 4:53 am

You want to multiply ratios, not add them (and no need for a funky offset to the global ratio).

Just think: if your global transposition as an octave and the local transposition is zero, you get ratios of 2.0 and 1.0 respectively. Multiplying the two values gives you a net transposition of one octave; adding them directly would give you a transposition of a perfect twelfth (octave plus fifth). (Your funny offset would actually give you the correct result in this particular case, but that’s just bad luckā€”or good luck, depending on how you look at it). Run through the maths for a couple of simple examples and you should be able to convince yourself that multiplication is the correct operation.

<code>

— Pasted Max Patch, click to expand. —

</code>

June 19, 2013 | 6:23 am

Thanks Peter, that makes perfect sense.

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

Forums > MaxMSP