what I seem to remember doing on my mpe patches was
- turn off saturation on the voice patch
- reduce the gain of each individual voice
I think you can leave saturation on the main patch, but I think I usually turn this off too, and instead adjusted the gains on the voices to get the overall levels I wanted.
this is not really an issue with Axoloti, nor really MPE, I have the same with pure data on polyphonic patches - its simply caused by summing the output of many voices.
I think the 'proper' solution is:
- you need to ensure that individual voices do not clip
- also they are not clipped when you sum them, hence why you need to reduce gain, in proportion to the max number of voices played.
- 'sympathetic' compression (!)
without any compression this will tend to mean the patch sounds quiet, when you only play a few voices (or single), so to 'fix' this you probably need to use compression BUT the issue with this is that this can screw with the dynamics, not something you want with expressive controllers , i.e. overly aggressive compression , and you find you cannot play softly. also compression works on a 'time window' , and that creates lag, again not something you want with expressive controllers.
so I tend to find expressiveness and compression end up competing with each other... so I tend to leave compression off... but probably with more time/effort I could do some more sympathetic compression, which is a compromise between the two.
yeah, this concerned me too... I guess ideally what we could do is have a multi voice mixer/compressor, so the voices came in at full gain on separate inputs, and then the object then both mixed and compressed - either by determining the compression ratio before mixing (so keeping 32bit), or by summing in 64 bit, then compressing back to 32 bit.
(id assume the former is more efficient but more complex to code )
of course, when multiple voices are used, this would still reduce their detail, but that's ok its louder.. but means for less voices, or when played quieter, you keep the detail.