### Why Dynamic Range Compression is Nonlinear

We can model dynamic range compression as a*level-dependent gain*. Multiplying a signal by a constant gain (``volume control''), on the other hand, is a linear operation. Let's check that the scaling and superposition properties of linear systems are satisfied by a constant gain: For any signals , and for any constants , we must have

*time-varying gain*factor, so one might be tempted to classify it as a linear, time-varying filter. However, this would be incorrect because the gain , which multiplies the input,

*depends on the input signal*. This happens because the compressor must estimate the current signal level in order to normalize it. Dynamic range compression can be expressed symbolically as a filter of the form

*rms level*(the ``root mean square'' [84, p. 75] computed over a sliding time-window). Since many successive samples of are needed to estimate the current level, we cannot correctly write for the gain function, although we could write something like (borrowing matlab syntax), where is the number of past samples needed to estimate the current amplitude level. In general,

**Next Section:**

Convolution Representation Summary

**Previous Section:**

Series, Real, Second-Order Sections