same note sustain in poly~

Beep's icon

I am using a combination of poly and poly~ to playback from a groove~ imbedded in a poly~ patch. I also have a release time section in the poly~ in the form of a line~ that ramps down the end volume of the sample being played back. The problem that I am having is that when I trigger the same MIDI note within the release time, the poly~ does not playback from a new patcher instance but instead routes it to the one that is already playing creating clicks and all sorts of ungood wierdness! The problem lies in poly alocating a voice number. I have tried delaying the MIDI note off message for as long as the sustain within poly~ but if I trigger the same note within this time it just dumps it out of the overflow output. All I want is that any identical MIDI notes triggered within the specified release time be assigned a different voice number than the one currently being played. Any ideas? Many thanks :)

Lewis Keller's icon

Why the need for poly and poly~? Maybe posting your patches would help. Also, you are prepending messages into poly~ with note or midinote and using thispoly~ to allocate voices I trust? Make sure voice stealing is not turned on. Also, I've found it easiest to pack all note info into a single list and send it into one input and then route things inside of poly~.

Quote: brokenman wrote on Wed, 07 February 2007 08:58
----------------------------------------------------
> I am using a combination of poly and poly~
----------------------------------------------------

Beep's icon

I've attached the poly~ abstraction here and the patch itself in the next message on this thread. you'll need xgroove~ installed for it to work properly.

Beep's icon
Lewis Keller's icon

Sorry, the files don't open for me when I download. Can you paste as text please?

Beep's icon

okay dokay: This is the abstraction:

Max Patch
Copy patch and select New From Clipboard in Max.

Beep's icon

and this is the patch itself:

Max Patch
Copy patch and select New From Clipboard in Max.

Beep's icon

did that work?

Lewis Keller's icon

Quote: brokenman wrote on Fri, 09 February 2007 03:53
----------------------------------------------------
> did that work?
----------------------------------------------------

Sorry, finally just found time to install xgroove~ and take a look. The problem seems to be in the way you're assigning voices out of poly. If I trigger the same note twice quickly with a long release time poly uses voice 1 for each trigger since it's already received a noteoff message for the first one. It then sends that voice number twice to poly~ with the target message thereby negating the polyphonic goodness of poly~ and creating a retrigger to a new amplitude with a nice click. I made a small change using the midinote message to send the note data from poly to poly~ and now poly~ assigns new voices as long as the release ramp is still happening. I also had to move the mtof stuff into the poly~ abstraction because the midinote message wasn't inputing the float playback speed for some reason. It was a quick and dirty fix but take a look and you should be able to make it cleaner....unless of course you're still experiencing the problem and I missed it - in which case I've no idea. :)

-----the poly-----

Max Patch
Copy patch and select New From Clipboard in Max.

------the player-----

Max Patch
Copy patch and select New From Clipboard in Max.

Beep's icon

you are an excellent person! Thank you so much, that has saved me alot of headache!