Polyphony problems

Ray Evans's icon

Have started making a patch that I want to make polyphonic. In monophonic mode it works great and I am getting some nice FM'ish sounds out of it, unfortunately my attempts to make it polyphonic are getting nowhere.
I have redesigned the synth so that the main sound engine is now a seperate subpatch (3opfm - a 3 operator fm synth) with all the external faders now connecting to it as a poly patch. unfortunately when I do this the inputs to the freq mod part of the subpatch do not work anymore and I cannot seem to make it ployphonic no matter what I try (completely stumped on this) I would really appreciate any help/advice anyone can offer on this. I have attached the two neccessary files so that hopefully somebody can help.
Cheers
Ray

ch's icon

Hi,

It seems you're a bit confused with poly's inlets.
You're trying to use [in~ 1] as the 4th inlet.
but [in~ 1] is the 1st one, as [in 1].
Same thing with in~ 2.
Inlets are used for both signals and data (as shown in poly's help file).

Ch.

Luke Hall's icon

You might also find it easier to [pack]/[pak] all your controls in the main patch and send them to a single inlet then [unpack] them in your [poly~] patch. You could even set up an osc-like routing system using [prepend somecontrolname] and [route].

lh

Gregory Taylor's icon

Working with polyphony is one of those great end-of-term/final project things because it forces you to think about message passing, managing patches and abstractions, etc.

Unpacking a nice string of control stuff inside the poly~ object is a great piece of advice. You might also pay particular attention to those "mute 0, 1" and "mute 1, 0" messages to the thispoly~ object....

Ray Evans's icon

Thanks CH, I was just looking into that so thanks for the tip. I will investigate further.
Cheers
Ray

Ray Evans's icon

Thanks, I will have an experiment with the pak commands and try to get that to work, you mention the OSC- like routing ? can you elaborate on that please?
Cheers
Ray

Luke Hall's icon

The patch below uses one inlet but prepends each individual input with an identifier which is then used as an arguement to [route] inside the subpatch to seperate them.

lh

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