I found that the dynamics module in izotope (multiband compressor) has three distinct modes for the compression. I have difficult understanding the difference between RMS and ENV practically and when is useful one instead of the other. From the guide: Peak: Uses the peak level of the incoming signal. In general, this setting is useful when you are trying to even out sudden peaks in your music. Env: (Envelope) Uses the average level of the incoming signal evened out across the frequency spectrum. Similar to RMS mode but with some advantages. Unlike RMS, Envelope mode produces even levels across all frequencies and will not produce the aliasing or artifacts that RMS detection can cause. RMS: Uses the average level of the incoming signal. RMS detection is useful when you are trying to increase overall level without changing the character of the sound.
Peak: instantly react to the level of the incoming signal. Is the CURRENT sample over the threshold? Yes -> Begin attack stage of the compressor. RMS: Averages the signal over the past X-milliseconds. Is the current sample over the threshold? I don't care. Is the AVERAGE of the past X-ms over the threshold? Yes -> Begin attack stage of compressor. Env: Sounds like they're applying an EQ curve to the detector signal before calculating RMS. The curve likely resembles an inverted equal loudness curve. Kicks and bass will be deemphasised when determining whether compression needs to start.