Compressor

From Audacity Manual

Jump to: navigation, search

Flag of Holland small.png Compresor FrenchFlagSmall.png

The Compressor effect reduces the dynamic range of audio. One of the main purposes of reducing dynamic range is to permit the audio to be amplified further (without clipping) than would be otherwise possible. Therefore by default the Compressor amplifies audio as much as possible after compression. The resultant increase in average or RMS level can be useful for audio played in a noisy environment such as in a car, or in speech, to make a distant voice sound as loud as a close one. Because the gain changes relatively slowly, a compressor does not distort the signal in the way that a Limiter or clipping would do.
Accessed by: Effect > Compressor...
Compressor settings window

Graph

The graph shows the input level along the bottom (horizontal axis) and the output level scale on the left (vertical axis) to illustrate the dynamic range compression effect. The graph will change as you adjust the Threshold and Ratio sliders, reflecting those settings. The graph does not reflect changes in any of the other controls, although they all affect how the audio sounds after applying the effect.

Controls

The principle of how each control works is described below. In practice the effect works internally in a rather more complex manner in that, as it processes the sound, it looks ahead to determine if there are high peaks coming up. This enables the "attack" stage of the effect to work in advance of increasing level as can be seen in the example below. This feature is called look-ahead and it is enabled within the effect with no user adjustment. The benefit of look-ahead is that sudden peaks do not pass through the effect before the gain has had time to change.
  • Threshold: The level above which compression is applied to the audio.
  • Noise Floor: The compressor adjusts the gain on audio below this background level so as to prevent it being unduly amplified in processing. This is mainly useful when compressing speech, to prevent the gain increasing during pauses and so over-amplifying the background noise.
  • Ratio: The amount of compression applied to the audio once it passes the threshold level. The higher the Ratio the more the loud parts of the audio will be compressed. The Ratio sets the slope of the blue line on the graph above the threshold.
  • Attack Time: How soon the compressor starts to compress the dynamics after the threshold is exceeded. If volume changes are slow, you can push this to a high value. Short attack times will result in a fast response to sudden, loud sounds, but will make the changes in volume much more obvious to listeners.
  • Release Time: How soon the compressor starts to release the volume level back to normal after the level drops below the threshold. A long time value will tend to lose quiet sounds that come after loud ones, but will avoid the volume being raised too much during short quiet sections like pauses in speech.
  • Make-up gain for 0 dB after compressing: Amplifies the resultant audio in all selected tracks after compression to a peak level of 0 dB. All tracks are amplified by the same amount as in the Amplify effect.
  • Compress based on Peaks: Base the threshold and gain adjustment on peak values of the waveform rather than the average (RMS) value used when in default (unchecked) state.
  • When using RMS, the compressor uses "downward" compression, making louder sounds above the threshold quieter while leaving quieter ones below it untouched.
  • When using peak values, "upwards" compression is applied which makes the audio louder, but amplifies the louder sounds above the threshold progressively less than those below it. Where the original (input) level is 0 dB there is no amplification.
Gale: haven't followed the discussions on this, but needs explaining why RMS threshold line is not at -18 dB. How was the graph produced? The Audacity compressor graph can't produce an input/output at -60 dB with a -18 dB threshold.
Steve the Fiddle As is indicated on the graph, the x axis shows peak dB. A waveform that has an RMS level of -18dB will have a peak level somewhat higher than -18dB (as is indicated on the graph). The exact peak dB level is dependent on the waveform but for a sine wave is approximately 3dB higher than the RMS level.

When using RMS compression, the compression begins at a level several dB higher than the peak level that the user can observe. This impacts on the user and so has been included in the illustration.

For example, if the compressor threshold is set to -18dB and the effect is set to compress based on RMS, the effect on a sine wave will be that compression does not start to occur until the RMS level reaches -18dB which is equivalent to a peak level of -15dB. For square waves the peak and RMS levels are equal. For white noise the RMS level is approximately 4.5dB below the peak level. For white noise, while the compression begins when the RMS level reaches -18dB, the peak level will be around 13.5dB

The graph, as it says in the text directly above the graph, is an illustration. It does not represent the graph display in the compressor GUI, which as explained in the previous section is not an accurate plot of the actual input/output levels. The graph that is displayed in the GUI is based only on the Threshold and Ratio slider settings. It does not take account of any other settings such as make-up gain or if RMS based compression is selected (in which case downward compression is used).

Looking at this again I can see that the graphs are not quite correct. I'll have another go at this. Complete accuracy can not be attained with a simple 2 axis graph because the actual output is also dependant on the Noise floor setting and the time domain so we are just trying to indicate a general expectation of what will occur without getting bogged down in too much technical detail. (and the precise working of this compressor are very complex with peculiarities unknown in any other compressor).

Gale: Several people have complained about the illustrative graph and I don't have knowledge enough or time enough to research the subject. But fundamentally the message seems to be the illustrative graph is confusing (novices) and it seems to beg questions that (as you suggest) may be too complex to explore. As it is I think it needs to be explained at least a bit more, or retired.

  • On the input axis of the graph, the RMS level appears to be above the peak level (louder) because of the arrow labelling, yet people can see the input waveform and RMS there is of course below peak. The blue dotted vertical line suggests that when the effect is set to compress based on RMS, compression starts at a peak level of -15 dB or whatever, true? OK, so I suggest we say the graph values are peak values and the arrows should say "-18 dB threshold using peak compression" and "-15 dB threshold using RMS compression".
  • Does the red line in the non-GUI graph actually illustrate peak (upwards) compression?

Bill 02Jul11: I vote to retire the graph, despite the work that Steve and I put into it. I don't think we'll ever reach a satisfactory version that is both accurate (and thus appropriate for audio pros) and understandable to novices. As for those experienced with hardware compressors and who want that type of experience, they're going to have to use a DAW that has real-time effects, since IMO you really need real time feedback as you make adjustments to get the right settings for the material you are compressing.

  • Peter 3Jul11: ok, gets my vote for graph removal too - not worth the hassle
  • Steve 4Jul11: OK, graph removed - does the compressor require any further explanation or is it sufficiently clear as it is?
    • Peter 7Jul11: seems clear enough to me.

Example

Gale 04Nov11:
  • Should we not mark the threshold line?
  • Is it a good idea to show what "some" compressors do rather than say what ours does? Our release does seem to affect audio below the threshold.
Steve 04Nov11:
  • Images updated to show compression with Audacity 1.3.x Compressor.
  • Gale 23Nov12: These images are still pretty confusing IMO. People complain and I don't really understand enough. Do they ever come to the Forum?
    • "A simple sine wave that drops off by 12 dB". Does the first image show that? Do you mean it has already dropped off from 1 to 0.25? It doesn't look like 0.25. Where is the selection region you mention in the text?
      • Gale 11Dec12: Steve has updated one of the images, but we say "when Compress based on Peaks is selected, audio with a peak level within the threshold range will be boosted". Yes, but we also say peaks compression "makes the entire audio louder, but amplifies the louder sounds above the threshold less than those below it". This still holds true but only so far that the louder part doesn't appear to be amplified at all...

        Also as complained about before, the second image shows the gain reducing inside the threshold when it is supposed to be increasing (and before the attack time, the audio is already louder than it was before, where you imply the compressor is not working).

    • Is Release Time "How soon the compressor starts to release the volume level back to normal after the level drops below the threshold"? Or is it "how long it takes to return to unity gain", as most docs describe it and your second image appears to show?
    • Our Attack Time description "How soon the compressor starts to compress the dynamics after the threshold is exceeded" is a common description, but users may see this as a "waiting time" before the compressor does anything. But you state the compressor is working within the attack time. One user is very confused that the audio is being reduced within the attack time rather than increased when compression based on peaks is supposed to be on.
    • Several people have suggested we need four images:
      1. Before compression
      2. After RMS compression, make up gain "off"
      3. After RMS compression, make up gain "on"
      4. After Peak compression
Not sure about #3 but I strongly agree otherwise. And I think images like the ones I use below (block tones, but with the time range added) would be much better. Perhaps we should have a more hand-holding description with more images on http://wiki.audacityteam.org/wiki/Compressor rather than even attempt it here?
  • A very common source of confusion is how much the compressor controls are interdependent. Let's look at this which is a 6 seconds tone: Compressor test.png

    Then apply compressor to the entire audio at Threshold -12, Ratio 6, Attack 0.2, Release 1, compress based on rms, make up gain off:

    Compressor Thresh-12 Ratio6 Attack0 2 Decay1.png

    • The length between the end of the higher tone and the resumption of steady amplitude in the lower tone is 0.5 seconds, not 1 second.
    • Why is the difference between the peak of the lower tone and the peak of the higher tone not 1 dB, since the increase between them was 6 dB and the ratio is 6:1?
    • If we Undo then rerun the compressor at a threshold of -3 dB, why is the higher tone untouched, but at threshold -4 dB, the higher tone is reduced?
    • Why is the lower tone affected at all at the start if the threshold is - 3 dB or -4 dB?
    • Also we need to explain why the whole result is at a much lower amplitude if the threshold is say -24 dB than say -12 dB (with make up gain off). Users often cannot understand this.

Before Compression:

A simple sine wave that begins at -12 dB, jumps up to 0 dB, then drops back down to -12 dB, to demonstrate how the Audacity compressors handle signals.

When Compress based on Peaks is not selected, audio with an RMS level beyond the threshold range will be reduced. If Make up gain is enabled then the entire selection will be boosted to make up for this gain reduction.

When Compress based on Peaks is selected, audio with a peak level within the threshold range will be boosted.

Uncompressed signal


After Compression:

In this example:

  • Compressing based on peaks is enabled so audio with a peak level below the threshold is boosted. You can see that the audio before 1.5 seconds on the Timeline has been made louder than it was in the "Before Compression" image.
  • Attack is 0.5 seconds, during which period the compressor progressively anticipates the coming peak.
  • Release is 1.0 seconds, during which period the boost to the quieter audio is progressively resumed.
  • Ratio is 10:1.
Compressed signal

Further reading on compressors

There are some good (but not too technical) explanations of compression here:

More advanced:

An alternative free compressor

Please see Chris's Dynamic Compressor for a popular alternative compressor which may be downloaded for free.


Links

|< Index of Effects, Generators and Analyzers

|< Effect Menu

Personal tools