This sounds like automatic gain correction, which is an appropriate solution to this problem. The only thing that IG could be doing better is to calculate the gain on the upcoming 1s instead of the previous. And actually, I would say that the correction should be punitive: if the stream volume crosses a certain threshold, a flat -6dB should be applied on top of the calculated correction.
reply