So for the longest of times, I thought the problems I encountered with screwed up sound was due to CPU utilization problems, i.e., not enough cycles. The CPU utilization would flicker, sometimes to a really high number, just for a moment when I had a lot of VSTs playing simultaneously.
A few weeks ago I realized the problem might not in fact be a CPU problem but rather, sending the output of many VSTs to a single dac~ is causing clipping.
I tested this (only by ear) by turning down the volumes of the individual VSTs and playing the song again and it sounded perfect.
Therefore, I need some guidance on how to deal with this and would appreciate advice.
1) How can I confirm objectively that this is what is happening? I'm less fluent with building MSP patchers than with Max (MIDI) event-based patchers and so I haven't figured out how I can keep track of the absolute maximum value numerically so I can see explicitly that the signal is going higher than 1.0
2) What's the best way to deal with this?
A) I looked at the normalize~ object as it seems like it can scale the sum of an arbitrary number of signals on the fly. The trouble (I think) with that object is that as well as reducing the amplitude of loud sounds, it will also increase the amplitude of soft sounds and that's no good.
B) Compression? Limiter? Block limiter? If so, what's the best way to tailor one of these things so that it won't unnecessarily reduce audio when the material is not too loud?
Thanks for any tips.