poly~ in Max 8 does voice allocation differently??
Hi all,
I have been busy patching with all the new Max 8 goodies, however I've noticed a fundamental difference with [poly~] in Max 8. I've double checked that this is the case by doing a side by side comparison with Max 8 and Max 7 across multiple patches, with the difference only occurring in Max 8.
Typically voice allocation for midi messages in a [poly~] would work the same as [poly] (lowest inactive voice number receives the message). In Max 8 my midi messages are fanned across all the voices in turn, skipping over those that are set to active via the [thispoly~], before triggering the initial voice once again. Playing monophonically in Max 7 for example would allocate all midi messages to voice 1, however in Max 8 they are allocated sequentially: 1 2 3 4... 1 2 3 4... etc. This initially happens in ascending order across the voices, however active voices change the order of this sequence, further complicating things.
An easy resolution for this is to use [poly] and assign voices manually, however that would mean going back over a lot of my old patches, and so I'm hoping that there's an easier solution.
I've looked through the documentation, release notes, and fiddled with most of the new inspector arguments and can't fix the problem.
I am running Max 8.0.1 on macOS 10.13.6.
Thanks,
Lewis
i dislike changes in objects, but i do find that new system more logical.
myself i have never used poly different from that: round robin "target", no matter how much voices are currently wanted or used.
change max voices while you are at #n, it doesnt matter where you are.
includes "auto steal" mode as only option.
@Lewis: apologies that this didn't get documented, but there is a poly~ attribute "legacynotemode" that if set to 1 will give you the behavior you are requesting.
In my opinion, the current implementation makes more sense, since a note off does not necessarily mean that the sound will immediatly stop, you could have a sound containing an ADSR envelope with a long release, for instance. Using a different voice by default let's us hear these sounds without sudden interruptions. But it's also useful to keep the option of reverting to the "old" way.