Forums > MaxMSP

poly~ doesn't shift between subpatches

Apr 01 2009 | 10:22 am

Hello Forum

I’m quite new to Max and have just finished the Max and MSP tutorials and a few experiments.

I want to build a sampler, that plays a sample when you hit a button using the groove~ object. If you hit the button again BEFORE THE SOUND HAS FINISHED, the sampler should play the sound on top of it self, put with some modification (e.g. pitch-shift). And some more modification on the 3rd, 4th, 5th… triggering of the sound on top of itself. But if the sound finished it should just be trigged normally.

To me, it seems best to use the poly~ object – and make a subpatch which plays the sample, and modifies it, according to which instance of the subpatch is in use by the poly~ object. I’ve tried to make a simple system that works this way (se below), but it only uses the first instance of the subpatch in poly~, even though I have used the "mute 0, 1" / "mute 1,0" and thispoly~ exactly like in the "MSP Tutorial 21 – Using the poly~ Object".

Can anyone please help me, what I have done wrong?

A whole new patching approach is also welcome!

I’m running Max 5.0.4 (shouldn’t it have autoupdated itself?) in OSX 10.5.6.


— Pasted Max Patch, click to expand. —

Subpatch (called "subSampler"):

— Pasted Max Patch, click to expand. —
Apr 01 2009 | 1:54 pm

Hi Mr. M.
Welcome to the enchanted world of poly~.
I don’t have time now to give you a long answer, but I looked at your patch, and here are a few things to thing about:
-"busy" is not the same as "unmuted". These are two different things.
-To instantiate new voices, why not try the "note" message? With incoming bang, I don’t see how you intend to talk to different voices. If you use a "note" message, you will automatically use the next available voice (not busy).

Apr 01 2009 | 9:48 pm

there are two different working methods of voicing in poly~.

one is the automatic system which you can see in the helpfiles and the tutorials – the other method is to organize your own voicing system from outside the poly.

just as an example where you could start:
let your poly patcher react to 0 and 1 where 0 turns ot off and 1 turns it on. now you can turn voice 1 ON by "target 1", "1", and OFF by "target 1", "0".
the rest is your imagination / what your apps needs.


Apr 08 2009 | 8:17 am

Thank you very much for the good answers! Smile

It works like a charm, sending a "note 1"-mess to the poly~ instead of a bang!

But I’m still wondering, if the is a way to make a poly~-subpatcher say to the poly~: "I’m busy right now, please take the next subpatch"…? It could be useful under other conditions… Smile

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

Forums > MaxMSP