Sub Patching Topology Question


#1

An Axoloti NOOB here. Thoroughly enjoying my new toy! First, a huge thanks to the community here for generously sharing your designs, ideas, knowledge...

So, I have a question about how polyphonic sub patches work together. I want to partition my designs into reusable building blocks (a commendable Object Oriented Design objective). So the question, is this:

functionally equivalent to this:

What would happen if I have a different polyphony voice count?


#2

Those two patches are very different.

The first patch is the best one, since the filter is contained within the patch. This is the only way to create a polyphonic patch if you want to do keyboard tracking on the filter.

Your second patch does not need to be polyphonic, since there is only a filter. It's basically an FX/stomp box. So you can just make that monophonic as it will take in any audio and process it.

The only subpatches that need to be polyphonic are the ones that contain a midi/in/keyb object.


#3

Jan, thanks for the reply. I'm not sure if you get the point of my question or not (or maybe I'm missing the point in your reply). I'm not looking for a critique on the 'design' of the synth in my patch, it's purely for illustration. IF I wanted to partition synth building blocks into separate sub patches to encapsulate complexity and enable reuse, (maybe I want a polyphonic lfo block, a filter block, an oscillator block), can I do that and would the compiler connect up multiple instances at runtime with separate paths for signal and control?

FWIW, for two patches that are 'very Different, they sound remarkably similar. :slight_smile:


#4

You could build polyphonic blocks, but if you want to keep all audio and CV signals separate you would need as many inlets and outlets as there are voices. In your example, the audio is already summed at the output before it goes into the filter.

Some more info on this can be found in this topic:

As far as I know, voices get allocated when pressing a new note. A polyphonic subpatch further down in the chain without a keyboard object may not have the same voice allocated.

There's a good discussion on polyphonic voice assignment that may help:

In my opinion, it's best to create full mono voices instead of polyphonic subpatches chained together.


#5

the best strategy is for you to build objects which are then used to build voices.
(so the key, to this statement is 'sub patches' can be thought as objects)

axoloti does not currently allow you to change the voice allocation strategy (rather you choose one) ,
so its best not to include a collection of voices in the object.

so what id do is:
build subpatches that do something useful, but in a monophonic context.
then build your synth (etc) from those building blocks , which might be polyphone, monophonic or whatever.