Using the peak compressor, if I turn off the decay time (instant change to unity gain), and then choose specific values of hold in ms, I get big glitches in the output.
If I choose other values, I don't get the glitches. For 50 Hz waveform (20 ms wavelength, or 10 ms from peak to peak in abs(signal)):
- 10 ms no glitches
- 15 ms glitches
- 20 ms no glitches
- 23 ms glitches
- 25 ms glitches
- 30 ms no glitches
- 32 ms glitches
- 33 ms glitches
These glitches aren't as obvious at lower decay values, but they're still visible in the THD residual.
I suspect the hold is triggered from a peak, and then after the hold period, it returns to the original gain, regardless of whether any more peaks have occurred during the hold. Is that true?
The way I think it should work is that the hold timer is reset every time there's a peak, so if your decay speed is set to 8686 (instant), but your hold time is longer than half a wavelength of a continuous signal, the hold timer should repeatedly be reset by the peaks of the waveform and the gain should stay constant.