The Complete Guide To Audio Compression & Compressors

The Complete Guide To Audio Compression & Compressors

Dynamic range compression (known simply as “compression”) is one of the most important tools when it comes to audio mixing. By compressing the dynamic range, we can effectively “glue” a mix together; add weight to audio signals; increase the sustain of musical notes, and much more.

What is dynamic range compression? Dynamic range compression is the process of reducing the dynamic range of an audio signal (the difference in amplitude between the highest and lowest points). Compression does so by attenuating the signal amplitude above a set threshold point.

In this complete guide to audio compression, we'll be discussing dynamic range compression in great depth, touching on how it works, the types of compressors with hardware and software examples, how to use compression to your advantage in different situations, and more. We'll even touch on audio data compression at the very end (which is a completely different process).

Note that this article is well over 10,000 words long. I've added hyperlinks to jump around the article for quicker reading and links to more concise articles on several topics included in this complete guide.


What Is Compression?

In the opening, I gave a quick answer about how dynamic range compression reduces the dynamic range of an audio signal by attenuating the signal level above a certain amplitude threshold. Let's elaborate on this definition and deepen our understanding of compression.

Compression was one of the more challenging processes to conceptualize when I began learning about audio engineering. I'll do my best to explain compression clearly with the help of visual aids and do so in as many ways as I can think of.

So dynamic range compression is, at its simplest, the compression of an audio signal's dynamic range. That is a reduction in the amplitude difference between the lowest amplitude of the signal (think of the noise floor of the signal or the low-level ambience) and the highest amplitude of the signal (think of the transients and peaks).

Dynamic range is often measured in decibels (of some variety) in both analog and digital audio.

Compression Isn't Clipping

Now, we may be lead to believe that compression could be visualized in the following image. Spoiler alert: that's NOT how compression really works (but it's worth investigating why not).

The first image shows attenuation of the loudest parts of the signal. You can notice that the main part of the signal remains the same and that it's only the extremes (highest positive and negative amplitudes) that are altered.

THIS IS NOT COMPRESSION

Forget the red dotted line here for a moment. We'll get to the threshold parameter shortly.

Notice, in the image above, how the signal is not merely clipped flat at the threshold point. Rather, the signal's amplitude is only reduced above that red-dotted threshold.

What's happening here is not typical compression. Rather, this picture depicts distortion (soft-clipping to be more precise). The difference? The attenuation is happening within the waveform itself rather than over longer parts of an audio signal.

Compressors are designed to act upon the dynamic range of entire audio signals, NOT to shape/distort the waveforms.

And yet, we're so often taught that compressors are used to “reduce levels above a set threshold”. This is a massive oversimplification, and would lead to the clipping we saw above. I want to get this out of the way first because it's a common pitfall when learning how compressors work.

In order to achieve the goal of reducing the overall dynamic range, compressors must be governed by time controls that would allow them to more appropriately react to signal level over time rather than instantaneous signal level (as shown above). This is where attack and release times come into play.

Later in this article, we'll discuss the critical time components of compression (attack and release) and see that the above waveform illustration isn't actually appropriate.

Generally speaking, compressors will not engage and disengage on a per-waveform basis. Rather, they'll engage over a period of time in which the audio peak or RMS values regularly exceed the threshold and disengage as the audio comes back down below the threshold.

Therefore, a more accurate illustration would be:

Notice how, in the above picture, the entirety of the waveform that was originally above the threshold was brought down in level, while the part of the audio signal that didn't exceed the threshold was left alone. There's no clipping, but there is still a reduction in the dynamic range.

The next image shows something similar where the compressed signal is brought up to the same amplitude as the input signal via makeup gain after the compression takes place. More on makeup gain later.

Notice that, in these examples, it's much less obvious that the compressor is attenuating the signal above the threshold. Rather, it's attenuating the entirety of the signal where the peaks of the waveform exceed the threshold.

Automatic Level Control

The explanation that really got me to comprehend the concept of compression was something along these lines: imagine having your finger on the level fader of a specified audio track.

Now imagine being able to tell the exact amplitude of the audio at any given point. If the audio ever exceeds a certain defined threshold amplitude, you'd move the fader down, thereby attenuating the audio. As the signal came back down below this threshold, you'd bring the fader back up to where it was originally.

That's pretty much how compression works, and I'll use this comparison to quickly explain a few other key points about compression before moving on to the other sections of this article.

Audio processing units have long been capable of reading the amplitude of both analog (electrical) and digital (binary) audio signals. As mentioned previously, these amplitudes are generally measured in decibels. Analog signal amplitudes are typically measured by peak or RMS voltage (in decibels dBu or dBV). Digital signal amplitudes are often measured in dBFS.

Both analog and digital compressors, then, can effectively read how strong an audio signal is at the input.

For the compressor to begin compressing the signal, it must read that the input signal amplitude is exceeding the set threshold. Otherwise, the compressor would never get triggered into action. Remember your hand on the fader!

Once the signal exceeds the threshold, the compressor will begin to attenuate the signal.

The amount that the compressor attenuates depends on the compressor's ratio, which tells the compressor how many decibels to attenuate for each decibel the signal exceeds the threshold.

The compression ratio means the following: [input signal dB above the threshold] : [output signal dB above the threshold].

Here is a graph to relate the input level to the output level of a compressor (without makeup gain). It shows the threshold as a vertical line and point (x) on the input level. Above the threshold, we see a variety of ratios including 1:1, 2:1, 4:1, 10:1 and 1:∞ (which is known as limiting):

We'll return to this graph later in this article during our discussions on threshold and ratio.

In our comparison of the finger on the fader, imagine that it would take some amount of time, no matter how small, for you to react and move the fader. This is true at the point where the input signal surpasses the threshold and when the input signal drops back down below the threshold.

The same thing happens with a compressor, which has attack and release controls to adjust the time it takes for the compressor to engage and disengage as the signal amplitude goes above the threshold and back below the threshold, respectively.

This comparison to manual fader movement is made even better by the fact that we'd be incapable of reacting to each and every waveform peak above the threshold (due to the positive/negative nature of audio signals). However, we'd certainly be able to react to relatively longer periods where the waveform would repeatedly surpass the threshold, which is how a compressor acts.

To explain this visually, a compressor is much more likely to behave like this:

Typical Compression

Than like this:

Atypical Inter-waveform “Compression” (Soft-Clipping)

Even though both are technically compression! Again, I'll be discussing this in greater detail in the section on compressor attack and release times.

There are a few more controls we'll get to shortly, but that pretty much sums up what compression is.

Note that the amount the input signal is attenuated is referred to as “gain reduction” and is generally measured in decibels as well.

Note that makeup gain is often applied to match the max amplitudes between input and output/compressed signals. This means that the output will be perceived to be louder since its quietest parts have been brought up in level while its loudest parts are relatively the same.

Recap On What Compression Is

Let's sum up what we've learned about compression thus far:

• Compression reduces the dynamic range of the audio signal.
• It does so by attenuating the loudest parts of a signal.
• Attenuation happens above a set amplitude threshold.
• There is a ratio control that depicts how much attenuation will happen per decibel above the threshold.
• Compressors often use makeup gain to match the max amplitude of the input and output signals.

With that introduction, I hope compression makes sense to you. In the following sections, we'll dive deeper into the specifics of compressors and compressions as an audio tool.


List Of Compressor Controls

Compressors are generally very flexible processors and come with a variety of controls to help users dial them in to suit the audio perfectly.

The most common compressor controls are:

Threshold

What is the threshold of a compressor? The threshold of a compressor is a set amplitude limit that dictates when the compressor will engage and disengage. As the input exceeds the threshold, the compressor kicks in (with its given attack time). As the input drops back down below the threshold, the compressor disengages (according to its release time).

Lowering the threshold will cause the audio signal to trigger the compressor more often and/or for a longer time. Setting the threshold above the maximum amplitude of the input signal will lead to the compressor never getting triggered.

Let's have a look at the compressor graph to review the threshold:

We see in the graph above that the threshold's dotted line only intercepts the x-axis. It's represented by an input level (typically measured in decibels/dB). We can also see that, beyond the threshold is where the output level is no longer equal to the input level. The amount of compression that takes place above the threshold is determined by the ratio.

So long as the input signal amplitude is above the threshold, the compressor will be engaged. As the input signal drops below the threshold, the output becomes directly proportional to the input once again.

Of course, things get more complex once we add in time factors (attack and release), which we'll get to in a moment.

To learn more about compressor threshold control, check out my article Dynamic Range Compression: What Is The Threshold Control?

Ratio

What is the ratio of a compressor? The compressor ratio compares the number of decibels the input signal is above the threshold to the number of decibels the output signal is above the threshold. In other words, it is the relative amount of attenuation the compressor will apply to the signal.

Once again, the ratio of a compressor is as follows:

[input signal dB above the threshold] : [output signal dB above the threshold]

Increasing the ratio will cause the compressor to attenuate the signal to a greater degree as the compressor is triggered.

Let's look at some common examples on the following graph and then describe each of the illustrated ratios.

  • 1:1 ratio: no compression at all.
  • 2:1 ratio: for every 2 dB the input signal is above the threshold, the compressor will output 1 dB.
  • 4:1 ratio: for every 4 dB the input signal is above the threshold, the compressor will output 1 dB.
  • 10:1 ratio: for every 10 dB the input signal is above the threshold, the compressor will output 1 dB.
  • ∞:1 ratio: limiting (sometimes called hard compression) where the compressor will not output any level above the threshold.

It's worth noting that compressors are continuous rather than discrete. For example, a 2:1 ratio means that a 0.5 dB input above the threshold would result in a 0.25 output above the threshold; an 8 dB input would result in a 4 dB output, and all along the continuous amplitude spectrum. Of course, digital audio is technically discrete, but in principle, compressors act continuously.

A compressor ratio will not have its first number be less than one. This would cause any level above the threshold to be amplified, resulting in near-immediate overloading of the signal chain and possible damage to equipment. That being said, there is an opposite to compression known as expansion which we'll touch on later.

To solidify our understanding of ratio, let's have a look at waveforms that represent compressor ratios:

To learn more about compressor ratio control, check out my article Dynamic Range Compression: What Is The Ratio Control?

Attack Time

What is the attack time of a compressor? The attack time is the amount of time it takes for a compressor to engage/react once the input signal amplitude surpasses the threshold.

Here's where all our over-simplified/instantaneous graphs go out the window. They've served their purpose to illustrate what a compressor does but do not take into account the time variable in compression.

Let's begin by discussing a very short attack time. If the attack time were 0 ms, the compressor would act instantaneously to the input signal. As the input would surpass the threshold, the compressor would immediately begin attenuating the signal.

As we begin to introduce some amount of attack time, the compressor will take that amount of time to reach its full attenuation or ratio, if you will.

Note that the attack time is not delaying the compressor from triggering but rather easing the compressor into its full ratio. In other words, it's a rate of change, not a delay of action.

Suppose the attack was to simply trigger the compressor after a certain point. In that case, we'd have situations where there would be a sharp, instantaneous drop in output as the compressor engaged, which would cause significant distortion.

Here's an illustration of three audio signals. One is uncompressed, one is compressed with a short attack, and the other is compressed with a long attack. Note that the ratio in these examples is 2:1, and the red dotted line represents the threshold:

Longer attack times will generally allow for greater transient information to be outputted from the compressor. The compressor will pass the spike in amplitude before it begins attenuating the signal. When combined with the right release times, long attack times can actually help accentuate transients in the signal as the transient of audio passes through and the tail of the transient is attenuated.

Shorter attack times will cause the compressor to act more quickly to attenuate transients, leading to a thicker sound with less dynamic range.

It's important to dial in attack times appropriately to achieve the effect you're going for.

Release Time

What is the release time of a compressor? The release time is the amount of time it takes for the compressor to disengage (to stop attenuating the signal) once the input signal drops below the threshold.

Release time is a very important factor in compression. It's the reason why I share two different “types” of compression in the What Is Compression? section.

Compressor processes will have some release time. This means that the compressor will remain engaged for some amount of time as a signal level drops below the threshold.

Release time, combined with attack time, allows a compressor to remain engaged so long as the audio signal shows enough peaks above the threshold within an amount of time.

This is crucial since audio signals are, by definition, bidirectional (they have both positive and negative peaks). The signals must, at some point, drop below the positive or negative threshold in order to reach the opposite peak.

We don't perceive the peaks of audio signals as much as we perceive the average level of the signal. The same idea applies to the typical use of a compressor. The job of a compressor is to reduce the level of the loudest parts of an audio signal rather than to shape the peaks of individual wave periods.

So then, release and attack times keep compressors from acting instantaneously, allowing the compression to even out transients and other “loud” parts of the audio signal without shaping the waveform.

Let's have a look at an exaggerated illustration to show fast and slow attack and release times, and they affect the compression of a signal:

When it comes to adjusting the release time of a compressor, keep the following in mind:

Fast release times can help the sound remain more natural so long as there isn't too much gain reduction. Faster releases also increase the perceived loudness of the track by allowing the sub-threshold signal to remain close to, if not at, its original level.

Slow release times will help smooth out dynamic performances. They're often used to push an element further away in a mix. Generally speaking, we wouldn't want overly long release times on our guitar or bass compressor pedals.

Attack & Release “Intra-Wave Compression”

Let's go on a little thought experiment here. If “compression” was to act instantaneously on the peaks within a period of a waveform, it would engage to attenuate the parts within a wave period that exceed the threshold and disengage within the same wave period the amplitude drops below the threshold.

To illustrate, I'll repost images from earlier in this article. If we can shorten the attack and release times enough so that the compressor acts within a wave period, we'd have compression like this:

This image has an empty alt attribute; its file name is mnm_Compression_Atypical.jpeg

Instead of the like this:

This image has an empty alt attribute; its file name is mnm_Compression_Typical.jpeg

Notice how this compression actually changes the shape of the waveform rather than simply attenuating the entirety of the waveform? This wave-shaping is a type of distortion! Yes, compression is closely related to distortion-type effects—more on this in the Other Related Dynamic Audio Processes section.

So how does this all work?

For these examples, I'll be taking screenshots of MeldaProduction's MOscilliscope and MCompressor plugins. These awesome plugins are available for free at MeldaProduction's website.

To illustrate how compression can be applied within wave periods, let's look at a simple 100 Hz (cycles/second) sine wave. This waveform has a single frequency (no harmonics) and a full period (the time it takes to complete one full cycle) of 10 ms.

100 Hz is a good example because we can easily hear it, though it's low enough to easily be affected by the short attack and release times.

For this example, I'll take a 100 Hz test tone at -10 dB, provided by Logic Pro X's Test Oscillator plugin.

Using the MeldaProduction MOscilliscope, the waveform looks like this:

Let's run this through the MeldaProduction MCompressor compressor with a threshold of -20 dB and a ratio of 4:1 to achieve some compression. I'll set the attack and release times to the fast but reasonable values of 10 ms and 75 ms, respectively.

In this case, the compressor acts as normal. This is because by the time the compressor would be completely released, the signal would have once again passed above the threshold, thereby keeping the compressor triggered and attenuating.

It even offers 7.51 dB of gain reduction, which is exactly what we'd expect (0.01 dB “off”) from a 4:1 ratio and an input signal 10 dB above the threshold.

So what happens as we shorten the attack and release times to zero? We'd have instantaneous compression that would resemble the following. Note how the waveform becomes distorted.

All sorts of signal distortion can be achieved so long as the compressor attack and release settings are short enough.

Note that this is only made possible with compressors that read the peak amplitude of the input signal. Those compressors that calculate and utilize RMS (root mean square) input amplitudes cannot achieve such distortion.

To learn more about compressor attack and release controls, check out my article Dynamic Range Compression: Attack & Release Controls.

Knee

What is the knee of a compressor? The compressor's knee refers to the transition point around the compressor's threshold where the output becomes attenuated versus the input. A hard knee offers a more distinct triggering of the compressor, while a soft knee allows for a smoother and more gradual transition to compression.

Many compressors will have either a soft or a hard knee option, while some offer a control to set the knee anywhere between the two positions.

To best understand the knew of a compressor, let's have a look at the following illustration of the input vs. output graphs:

The hard knee is the simpler of the two to visualize. As the input signal surpasses the threshold, the compressor kicks in to attenuate.

On the other hand, the soft knee begins to compress the signal even before the threshold point. It also acts in conjunction with the attack and release controls to soften the onset of compression.

To learn more about compressor knee controls, check out my article Dynamic Range Compression: What Is The Knee Control?

Makeup Gain

What is the makeup gain of a compressor? The makeup gain of a compressor is the gain applied to the signal after the compression takes place. Makeup gain is typically used to bring the peaks of the compressed signal up to the same level as the peaks pre-compression, thereby maintaining the same peak level while raising the overall level.

Compressors will typically have makeup gain to bring the peak signal level of the output back up to what it was at the input. With the makeup gain set to equal out the peaks, we can really hear the compression of the signal.

Makeup gain can be visualized with the following illustration. Note that the threshold is represented by the red dotted line, and the peak amplitude of the original signal is traced with a black dotted in each of the three versions of the signal.

Note that, to simplify the illustration, I did away with the attack and release time factors.

To learn more about compressor makeup gain, check out my article Dynamic Range Compression: What Is The Makeup Gain Control?


Other Possible Compressor Features

In addition to the controls just mentioned, there are other features that are available on some, but not all, compressors. Let's discuss a few more common features of compressor units.

Auto-Gain

What is auto-gain in a compressor? Compressor auto-gain is a feature that automatically applies the proper amount of makeup gain to bring the peaks of the compressed signal up to the same level as the peaks of the input signal. It effectively applies makeup gain to match the gain reduction of the compressor.

Metering

What is compressor metering? There are typically three meters in a compressor that will show users the input level, amount of gain reduction and the output level of the compressor. Some compressors also offer a graphical analysis of the input vs. output levels complete with threshold, ratio and knee indicators.

Stereo Linking

What is stereo linking in a compressor? Stereo linking is a method for stereo compressors (or dual-mono compressors) to act on both channels of a stereo audio signal at once. If either of the stereo channels exceeds the threshold, the compressor will engage and attenuate both channels. This is a method to avoid tilting the stereo image.

Lookahead

What is compressor lookahead? Lookahead is a control that allows a compressor to “see” the input signal before it is processed to handle transient information better and maintain a smooth attack. Lookahead is achieved by duplicating and delaying the incoming signal, using the first signal as a sidechain.

To learn more about compressor lookahead controls, check out my article Dynamic Range Compression: What Is The Lookahead Control?


Types Of Compressors

In addition to the written content below, I also have a video describing the seven different compressor circuit types (the first seven from the list above). You can check that out below:

Variable-Mu (Tube) Compressor

What is a variable-mu compressor? A variable-mu (variable gain) compressor is an analog compressor centred around a vacuum tube. As the input signal increases, the current sent to the grid of the tube decreases, which results in a reduction in the overall level.

Characteristics of a variable-mu (tube) compressor:

A tube compressor will use a vacuum tube (aka a valve) as the central component of its compression circuit.

Tubes are well known in the audio industry as amplifiers, but they can also be used to attenuate signals, as is the case with variable-mu/tube compressors.

These compressors are considered program-dependent, which means that the ratio of compression increases as the input signal amplitude increases. Many variable-mu compressors don't even have a ratio parameter control.

As the input signal level increases, the current sent to the tube's grid decreases, thereby attenuating/compressing the signal at the output. This non-linear compression can be thought of similarly to a soft knee that extends indefinitely (within reason) past the threshold.

The nature of vacuum tubes also gives variable-mu compressors a relatively slow attack time as the tube reacts to the input signal.

The result is a smooth compression that offers sonic character in the form of harmonic saturation. Variable-mu compressors sound great as bus compressors and as mastering tools.

Manley Stereo Variable Mu Compressor

It's important to note, before we move on, that many other compressors are designed with tubes (often for the makeup gain portion of the circuit). The distinction is that variable-mu compressors use tubes for the actual compression of the signal.

To learn more about variable-mu/tube compressors, check out the following articles:
What Is A Variable-Mu (Tube) Compressor & How Does It Work?
Top 11 Best Variable-Mu Compressor Emulation Plugins

FET Compressor

What is a FET compressor? A FET compressor is an analog compressor that utilizes a field-effect transistor at the core of the circuit. These compressors are fast-acting and offer greater transient preservation than other types of compressors.

Characteristics of a FET compressor:

  • Very fast attack and release times.
  • Non-linear compression that adds character via harmonic distortion.
  • Additional saturation due to the inclusion of transformers.
  • Requires low-level input signals.
  • Requires more output gain which often raises the noise floor.

FET compressors share a similar design with the aforementioned variable-mu/tube compressors. The major difference is that they utilize field-effect transistors (FETs) instead of tubes for the compression of the circuit.

These solid-state compressors generally have a feedback topology where the sidechain is derived after the gain reduction stage. This sidechain is then fed into a FET that works as a voltage-controlled resistor acting in its linear region to provide a relatively linear style of compression.

Note that, in order to work within this “linear region”, the FET compressors will often have to reduce the signal level before the compression and provide a gain stage after the compression. This is often achieved via transformers that will add some amount of distortion to the signal.

FET compressors will certainly colour the sound due to their inherent distortion characteristics. They're cherished for their aggressive sound and are popular choices for drums, guitars, vocals and other sources that need a bit of edge to pop out in a mix.

BAE 500C

To learn more about FET compressors, check out the following articles:
What Is A FET Compressor & How Does It Work?
Top 11 Best FET Compressor Emulation Plugins For Your DAW

Optical Compressor

What is an optical compressor? An optical compressor is an analog compressor that uses a light element and optical cell to alter the dynamics of an audio signal. As the amplitude of the audio signal increases, the light element emits more light and causes the optical cell to attenuate the amplitude of the output signal.

Characteristics of an optical compressor:

  • Generally low distortion due to LDR.
  • Relatively slow attack and release times.
  • Non-linear attack and release controls.
  • Frequency-dependent attack.
  • Transparent sound.

Optical (opto) compressors are cool. They utilize a light source and a light-depended resistor (LDR) to achieve compression.

When there's no light shining on the LDR, its resistance is very high. When there is light shining on the photo-resistor, its resistance drops to very low levels.

The input signal will feed the lamps, and as the input amplitude increases, the LDR will cause an increase in gain reduction to the signal.

Although light is incredibly fast, optical compressors are actually rather slow (compared to FET and VCA types, at least) since the LDR is not particularly fast. Light-dependent resistors are also not very linear in terms of attack and release times, which can make them musical.

Relative to many other compressor types, optical compressors have a simple design and are rather transparent due to the low distortion characteristics of most opto circuits. That being said, colour can be achieved by adding transformers and tubes into the circuit, which is often the case with older hardware models.

Opto compressors are often chosen to help smooth out audio with fewer transients, helping to fit tracks into the mix without colouring them too much. They are typically avoided for bus compression and mastering.

Tube-Tech CL1B

To learn more about opto compressors, check out the following articles:
What Is An Optical Compressor & How Does It Work?
Top 10 Best Optical Compressor Emulation Plugins

VCA Compressor

What is a VCA compressor? A VCA (voltage-controlled amplifier) compressor is an analog compressor that utilizes a VCA control to apply compression. The input signal is split through an integrated circuit into a detector path (to control the VCA compression) and an output path.

Characteristics of a VCA compressor:

VCA compressors work by splitting the input signal through an integrated circuit (IC) chip and sending the signal to both a detector path and an output path.

The detector path can be manipulated via the typical parameters and acts as the voltage-controlled amplifier of the output circuit, only that it controls the attenuation rather than amplification.

VCA compressors are very common and tie in nicely with the “finger on the fader” comparison I made in the earlier section on What Is Compression? The detector path VCA is similar to the fader on a console, and as the VCA passes a threshold, the output (fader) comes down.

VCA compressors are very flexible and transparent, making them go-to choices for any application requiring compression, from heavy-transient drum tracks to soft strings to bus compression and mastering.

As the control voltage changes, there is a chance that it may leak into the audio path, which would lead to artifacts and distortion. This is unlikely to cause significant colouration, but unwanted artifacts can become overly noticeable in particularly bad cases.

Retrograde FX Underthruster

To learn more about VCA compressors, check out the following articles:
What Is A VCA Compressor & How Does It Work?
Top 11 Best VCA Compressor Emulation Plugins For Your DAW

Diode Bridge Compressor

What is a diode bridge compressor? A diode bridge compressor is an analog compressor that utilizes pairs of diodes in a balanced bridge configuration to apply variable attenuation (compression) to the input signal.

Characteristics of a diode bridge compressor:

  • Very fast attack and release times.
  • Non-linear compression that adds character via harmonic distortion.
  • Requires low-level input signals.
  • Requires more output gain which often raises the noise floor.

Diode bridge compressors operate with a bridge configuration of diodes. That is, typically, two pairs of diodes set up in a diamond array. The audio signal is applied across two opposite corners, while the control signal is applied across the other two.

A diode generally only allows current to flow in one direction. However, there is a small region where its conductance effectively varies in proportion to the voltage applied across it. This oddity allows diodes to be used, in cases such as these, as voltage-controlled attenuators.

For all of this to work, the diode bridge compressor must have the following:

  • matched diodes (to reduce an otherwise high level of distortion)
  • a balanced signal throughout the compressor (due to the pairs of diodes)
  • a signal within a very small dynamic range (to act within the variable portion of the diodes' transfer curves)

That's a lot to design, and it's no wonder these compressors aren't so popular.

Transformers are used to balance and set the levels of the signals, which, along with the compressor circuit itself, add distortion to the signal. This distortion is often harmonically rich and adds pleasant colour to the signal.

Rupert Neve Designs 5254

To learn more about diode bridge compressors, check out my article What Is A Diode Bridge Compressor & How Does It Work?

Pulse Width Modulation Compressor

What is a pulse width modulation compressor? A PWM compressor is a type of compressor that utilizes pulse width modulation to effectively alter the amplitude of the input signal, thereby compressing it. Altering the parameters will alter the PWM system to control the amount of compression.

Characteristics of a pulse width modulation compressor:

  • Very fast attack and release times.
  • Very transparent.
  • Flexible parameter controls.

Pulse width modulation reduces the average power/amplitude of an electrical signal by dividing it up into discrete parts known as pulses. As the name suggests, the width of these pulses is modulated over time.

Each pulse effectively turns the supply signal on and off. This is done at a very fast rate. It is the average value of the supply signal that is then fed to the output of the compressor.

The width of each pulse is largely defined by the duty cycle, which is noted by the percentage of “on time”. This is shown in the image below:

The longer the PWM is “on” relative to “off”, the more signal will get through. Remember that it's the average signal amplitude that is passed through and that the PWM happens very quickly to avoid distortion and unwanted artifacts.

The design of a PWM compressor is deeply complex. Each of the typical settings (attack, release, threshold, ratio) acts to adjust the pulse width modulation. When designed correctly, a PWM compressor has the potential to be the fastest-acting compression type with the lowest distortion.

Great River Electronics

To learn more about PWM compressors, check out my article What Is A Pulse Width Modulation Compressor & How Does It Work?

Digital Compressor

What is a digital dynamic range compressor? A digital compressor is a digital signal processor that produces the effect of compression on a digital audio signal. Many digital compressor plugins and software aim to emulate their analog counterparts.

See compressor plugins.

Hybrid Compressor

What is a hybrid compressor? A hybrid compressor combines two or more dynamic compression styles/circuits into one audio processing unit.

Multiband Compressor

What is multiband compression? Multiband dynamic range compression is a type of processing that splits the frequency spectrum into different bands and compresses each band by its own unique compression settings.

A multiband compressor can be thought of as several compressors in one, with each compressor acting on its own defined band of frequencies. Each band will generally have its own set of parameters, including threshold, ratio, attack, release and makeup gain.

Multiband compression is a fantastic tool and helps avoid over-compression in signals that are particularly well-represented in certain frequency bands.

Note that multiband compressors utilize crossovers to effectively band-pass filter the individual bands. There may be some amount of crossover distortion.

Maselec MLA-4

To learn more about multiband compressors, check out the following articles:
What Is Multiband Compression & How Do MB Compressors Work?
Top 10 Best Multiband Compressor Plugins For Your DAW

Compressor Plugins

What is a compressor plugin? A compressor plugin is a piece of software that is coded to produce the dynamic range compression effect in digital audio signals. Plugins are most typically used in conjunction with digital audio workstations and digital mixing consoles.

Compressor plugins could be coded to emulate hardware compressors or could be of an original design. All the professional-grade DAWs will have their own compressor plugins (often with a variety of options), and there are plenty of third-party compressor plugins on the market.

Pulsar Audio Mu

Peak Vs. RMS Compression

When dealing with compressors, the question about peak and RMS metering can come up. This is particularly true with the compressor plugins that offer the option between peak and RMS metering.

What is peak compression? Peak compression means that the compressor will react according to the peak of the input or sidechain signal. As the peak of the compressor control exceeds the threshold, the compressor will kick in.

What is RMS compression? RMS (root mean square) compression means that the compressor will react according to the “average loudness” of the input or sidechain signal. As the “average” of the compressor control exceeds the threshold, the compressor will kick in.

Thus far, we've been keeping our discussion on peak compression, but it's important to understand RMS as well.

The root mean square of an audio signal is the calculated average of the absolute amplitude of the sine wave rather than the actual amplitude. That's why I put the term “average” in quotation marks in the paragraphs above.

If we were to look at a sine wave, we'd quickly see that the actual average of the signal is zero because it spends equal time in positive and negative.

But the RMS is actually around 0.707x the peak value (at least for simple sine waves):

So, then, with RMS compression metering, we won't run into an instance where the compression acts within a wave period since it's acting on an “average” amplitude.

Because it only acts upon the average amplitude, RMS compression can potentially miss transient peaks in a signal completely.

To learn more about the differences between peak and root-mean-square metering compression, check out my article Peak Vs. RMS Dynamic Range Compressors In Audio.

Feedback Vs. Feedforward Compressors

I'd be remiss not to mention feedback and feedforward compressor topologies in this “complete guide.”

To describe these topologies, let's begin by laying down 4 definitions: input, output, gain reduction element and sidechain.

The input is simply the input of the compressor. The input signal is to be compressed.

The output is simply the output of the compressor. The output signal will have been compressed (and potentially brought back up with makeup gain).

The gain reduction element is largely what we've been discussing in the section of the article. The element could be a:

This element is responsible for doing the compression.

The sidechain is the signal that effectively controls the gain reduction element. It's often the input signal or closely related to the input signal though it may be from another source entirely (see sidechain compression).

The difference between feedback and feedforward topologies is in the location of the sidechain in the overall signal chain.

What is feedback compression? Feedback compression feeds the audio signal into the sidechain just after the gain reduction element. This compressor type reacts to the signal amplitude without anticipating.

Feedback compression effectively attenuates the signal if when it surpasses the threshold. It can be very fast or have more musical time controls and makes for a great setup when controlling levels throughout a mix.

What is feedforward compression? Feedforward compression feeds the audio signal into the sidechain before the gain reduction element. This compressor type anticipates the signal amplitude and adjusts the sidechain signal in advance.

Feedforward compression effectively calculates what should happen in terms of compression and feeds the sidechain to adjust the control signal in advance.

This setup is often preferred if we need to compress sharp transients though it also sounds great with smoother attack times.

To learn more about the differences between feedback and feedforward compression, check out my article Feedback Vs. Feed-Forward Dynamic Range Compressors In Audio.

Upward Compressor

What is an upward compressor? An upward compressor is a type of compressor that boosts the amplitude of a signal below a certain threshold and keeps the amplitude the same above the threshold. This type of compression is available in digital plugins and can also be achieved via parallel compression with hardware or software.

We can better understand upward compression with the following visuals.

A “normal” compressor with a 2:1 ratio would have an input/output graph like this:

An upward compressor with a 0.5:1 ratio (0.5 is the reciprocal of 2) would have an input/output graph like this:

To learn more about the differences between feedback and feedforward compression, check out my article Upward Compression & Why You Should Use It.


Mixing With Compression

So far, we've discussed what compression is, the different types of compression, and how compression works. Now it's time for the good stuff: how to actually use compression to get the results we want!

In this section, we'll discuss the following:

Compression In A Signal Chain

Compression is a versatile audio tool/effect that will sound great on anything and everything with the right style and settings.

It's also very flexible in where it goes in the signal chain.

Compression can be a great first process on an audio signal to even out levels before the signal is processed further. It can also be used at the very end of a final mix to glue things together before mastering and again during mastering.

Compression is also useful between these two stages of a mix. It can go anywhere in the signal chain.

Some mixing engineers prefer to use compression before EQ, while others prefer it after EQ. It can be used before or after modulation effects, spectral effects and other processes.

Maintaining A Consistent Level

Perhaps the most common way to use compression in mixing is to keep a track at a consistent level throughout a project. By reducing the dynamic range of an audio track, the level will stay more consistent throughout.

Maintaining a consistent level is of particular importance with vocals and other leading instruments in a mix. Using vocals as an example, singers may vary in volume throughout a performance. If the vocals are needed upfront and centre within a mix, compression will be an invaluable tool!

Sidechain Compression

We briefly discussed, in the section on Feedback Vs. Feedforward Compressors, what the sidechain of a compressor is. It's the signal that effectively controls the gain reduction element. Though the sidechain is most often the input signal (or a slightly processed input signal), it can also be an entirely different signal altogether, which brings us to sidechain compression.

What is sidechain compression? Sidechain compression is a type of compression where the compressor is acting to compress a track but is controlled by another track. As the controlling signal surpasses the set threshold, the compressor attenuates the sidechained signal.

Not all compressors will allow side-chaining. For those hardware compressors that do, a sidechain insert will allow a sidechain source to control the compression applied to the input signal. There will generally be a sidechain dropdown menu in software compressors that will allow you to choose the sidechain source.

Sidechaining is a popular mix technique and has been made famous/infamous by the aggressive sidechaining to the kick of various elements in certain electronic music genres/mixes.

We can add everything from subtle movement to noticeable rhythm to exaggerated pumping to a signal by triggering its compression with another audio sound with sidechain compression. We can also use sidechain compression to allow certain elements of a dense mix to pop out when need be.

To learn more about sidechain compression, check out my article The Complete Guide To Sidechain Compression In Audio.

Parallel Compression

What is parallel compression? Parallel compression (also known as New York or Manhattan compression) is a technique where one audio track (or several) is sent to a bus, and that bus is heavily compressed. Both versions of the audio are then mixed together to achieve a punchy sound without losing the dynamic of the dry signal(s).

The easiest way to set up parallel compression is to send a track (or a group of tracks) to a bus in a mixer (whether hardware or software). Insert a compressor or limiter on the bus and hit the signal hard (low threshold, high ratio).

Once the parallel bus is sufficiently squashed, mix it appropriately with the dry signal from the original track(s). The result should have the dry signal well-represented with the additional punch of the over-compressed bus signal.

Parallel compression is a particularly effective process on drums.

Note that parallel compression is often practiced as I've described above. However, parallel compression is technically happening whenever we duplicate an audio track (or bus tracks together); compress the duplicate/bus, and mix the two.

Instead of over-compressing the bus signal, we can apply a more subtle compression. So long as the phase is perfectly lined up, this will effectively achieve upward compression, where the amplitude below the threshold is increased relative to the amplitude above the threshold.

Experiment with different amounts of compression when practicing parallel compression to find the results that work the best for your mix.

Serial Compression

What is serial compression? Serial compression is the practice of using multiple compressors in series (one after the other) to combine desirable attributes from different compressors, lighten the workload on any particular compressor, and ultimately progress through an audio mix.

By putting compressors in series, we can effectively combine characteristics of multiple compressors on a single audio signal. For example, perhaps we want the warmth of a tube compressor and the flexible control of a VCA compressor. We could run the signal through the VCA compressor and then through the tube compressor, or vice versa, tweaking the parameters to get the perfect mix.

When using compressors in series, we can also reduce the workload on any particular compressor and achieve the same amount of gain reduction. Hitting any compressor too hard can lead to undesirable pumping, distortion and artifacts. Spreading the work between multiple compressors can help mitigate this.

Finally, as we mix audio, we can have compressors on individual tracks, buses and groups, final mixes and final masters. This means that any single track can be processed by several compressors before the final mix. This isn't technically the “serial compression technique,” but it's worth thinking about to understand how much compression goes into a mix.

Multiband Compression

We've already discussed multiband compression, but I felt the need to include it here as well.

What is multiband compression? Multiband dynamic range compression is a type of processing that splits the frequency spectrum into different bands and compresses each band by its own unique compression settings.

Multiband compression is an excellent tool when working with audio that has a wide range of frequency content (like a mix or sub-mix, for example). With a multiband compressor, we can avoid having peaks in one frequency band affect the compression of another frequency band.

For example, if we're mixing a drum bus, we can use a multiband compressor to compress the low-end of the kick drum separately from the shimmer of the cymbals.

Prevent Overload

What is audio overload? Audio overload happens when the audio signal amplitude exceeds when the audio system can handle (0 dBFS for digital systems and typically +24dBu for professional analog equipment). Overload causes distortion due to peak clipping.

Compression can be used on master buses to help prevent overload.

It can also be used on individual tracks with particularly strong transients to keep them from pushing the entire mix (or the track itself) into overload.

Improve Sustain

What is sustain? Sustain, in audio, is defined as the period of time an audio signal will continue to sound before fading out. Sustain is one of the factors in ADSR envelope generators (examples: synthesizers and envelope filters) and also applies to general sound (examples: guitars and drums).

Compressing a signal with a slower release time can improve the sustain of the note. It does so by bringing the attack and tail of the sound closer together in terms of amplitude and by releasing the compression as the note fades out, thereby decreasing the attenuation and the signal amplitude also decreases. This gives the perceived effect of a more consistent and sustained tail end of an audio signal.

Improve Transients

What are transients? Transients, in audio, are momentary increases in amplitude that represent the attack of a note or percussive sound.

A compressor can help to “improve” transient information in audio signals in two ways:

First, compressors with fast attacks can effectively attenuate transients, bringing them down in level. This decreases the likelihood of overload and also thickens the sound of the transient. The risk here is that over-compressing transient can really subdue the energy of the audio and lead to lacklustre sonic results.

Second, compressors with slow attacks can allow transients to pass through unattenuated before clamping down on the tail of the audio, thereby increasing the perceived energy of the transient. This can increase the energy and draw attention to the audio track.

De-Essing

What is an audio de-esserDe-essing is the process of attenuating sibilance and/or harshness in a vocal/voice audio signal. This can be achieved using a dynamic EQ, multiband compressor, sidechain compressor with automation in a mix, or manually.

Sibilance can be quickly defined as the hissing sound. In English, sibilance happens on the consonant sounds of S, Z, Sh, and Zh (as is “leisure” – lei-zh-ure). Though a necessary part of speech intelligibility, sibilance can often be overly harsh in a vocal track and may require attention to smooth out.

Sibilance is typically in the frequency range of 5 kHz to 8 kHz (though it may occur below or above that range).

A de-esser is designed to reduce the harshness of sibilance by attenuating the sibilant frequencies when they reach a certain amplitude.

De-essing is often achieved via a multiband compressor that compresses the sibilant frequency band more than the other bands. It can also be achieved via a dynamic EQ set to attenuate sibilant frequencies as they surpass a set threshold.

SPL Model 9629 De-Esser

Note that de-essing can also be achieved with a dynamic EQ.

To learn more about the differences between dynamic EQ and multiband compression, check out my YouTube video on the matter here.

Compress Low-End Elements Together

The low-end has a lot of energy but can sometimes be more difficult to hear. We can “glue” the bass frequencies and achieve a tighter, more solid low-end by compressing the low-end elements together.

Add Depth

Compressions can help us add depth to the mix by affecting the transients and, of course, the signal's dynamic range.

This one's a bit tricky, but compression can affect audio in the following ways to alter our perception of depth:

  • By increasing the perceived transients, we can make a track sound closer.
  • By bringing up the subtle, more quiet parts of the audio (with makeup gain), we can make a track sound closer.
  • By attenuating the transients, we can make the track sound further away.
  • Over-compressing can push a sound back in the mix.
  • By adding saturation with compression, we can enhance the harmoncis (high-end) of the signal which may have the effect of bringing the audio forward in the mix.
  • With multiband compression, we can make some adjustments to the “EQ” of the signal. Bringing up the high-end frequencies can make a track sound closer. Bringing down the high-end frequency can make a track sound further away.

Add Colour

In the Types Of Compressors section, we discussed the various distortions that happen with the different compressor types. By introducing subtle distortion, we can add pleasant harmonic colour to the audio signal. In fact, some compressors have been used to colour signals without compressing them at all because their “character” sounded so good on the audio signal.

Make A Track Breathe

By adjusting the attack and release times of a compressor, we can add movement and “breath” to an audio track.

Drum loops, for example, can benefit from extra groove by simply adjusting the attack and release parameters of a compressor. Time the compressor so that it breathes new life into your audio.

A great place to start is with the release time, adjusting it so that the compressor fully disengages right before a rhythmic high point that would cause it to trigger again. Adjust the time variables from there to experiment with the movement a compressor can add.

Uncover Nuanced Details

By compressing a signal and applying makeup gain, we effectively bring up the subtleties of an audio signal. Be it ghost notes of a snare drum or bell keys of a saxophone; compression can help bring out subtleties of a performance that would otherwise be lost, bringing a new sense of realism to the audio track(s).

Squash It

Sometimes over-compressing can be used to great/special effect. Whether it's straight-up or as part of parallel compression, absolutely decimating the dynamic range may have its place in certain situations.

Gluing The Mix Together With A Bus Compressor

As I've alluded to in previous paragraphs, using a compressor on the mix bus can really bring a mix together.

Bus compressors are often gentle in terms of their threshold, ratio, attack, release and even knee parameters. The trick is not to squash the dynamic range as much as it is to bring out nuances and add depth, colour and subtle movement to the track while helping to maintain a consistent level throughout the mix and avoid overloading.

Smart Research C1LA

Be sure to also check out my top overall 11 compression tips for mixing in this video:


Compression Vs. Limiting

Limiting is a special kind of compression. It's effectively a compressor with a very high ratio (perhaps even an infinity to one ratio).

What is audio limiting? Limiting is a type of hard compression whereby the signal is not allowed above a certain threshold. Rather than attenuating the signal (above the threshold) by a ratio, the limiter will simply cut off the signal at the threshold. We can think of a limiter as a compressor with an infinite ratio.

Let's compare compression to limiting in the following images:

As an audio process, limiting is commonly used to keep individual elements from eating up headroom in a mix. Perhaps the most common application of a limited is as the final process on a digital mix to ensure the bounce never exceeds the maximum 0 dBFS into digital clipping.

Note that limiters are typically used to act upon transients and not necessarily within waveform periods.

Rupert Neve Designs Portico II

Limiters, when pushed hard enough, will lead to clipping. This is true in the digital and analog realm.

What is audio clipping? Clipping is a form of distortion where the amplitude of the waveform tries to exceed the maximum possible amplitude and is thereby “clipped” at its max. This is possible in analog amplifiers (both tube/valve and solid-state/transistor-based) and in digital signal processing.

Hard clipping, where the audio signal is completely flattened at the maximum amplitude, can be achieved via hard limiting, attempting to exceed the maximum digital binary amplitude or with a specialized clipping effect. Fuzz and distortion effects, which we'll get to shortly, utilize hard clipping.

Here's a visual representation of clipping where the blue signal is pre-amplification/compression, and the red signal is hard clipped:

SIR Audio Tools StandardCLIP

Compression Vs. Expansion

Expansion is essentially the opposite of compression.

What is audio expanding? Expanding can be thought of as the opposite of compression. It aims to increase the dynamic range of the signal. An expander will reduce the signal's amplitude if it drops below the set threshold, thereby “expanding” the signal's dynamic range.

Let's compare compression to expansion in the following images:

As explained above, expansion can be thought of as the opposite of compression and increases the dynamic range of a signal.

Electro-Harmonix Steel Leather

While we're at it, we may as well discuss noise gates.

What is audio noise gating? Noise gating is an effect that kills the output signal if the input signal drops below a set threshold. This helps to gate or remove noise from the signal when an instrument (or another sound source) is not playing. Noise gates are especially useful in noisy rigs, which often include vintage gear.

A noise gate to an expander is what a limiter is to a compressor. By effectively muting the output if an input signal drops below a certain threshold, a noise gate will gate out any noise when an appropriate amount of signal is present.

Let's compare an expander to a noise gate with similar images as above.

Drawmer DS101

Let's quickly go over a few other dynamic audio processes/effects that are related to compression.

In this section, we'll discuss the following:

Valve Saturation

What is valve saturation? Valve saturation is a type of distortion that happens when a valve (vacuum tube) amplifier is overloaded at its output. If the amplification attempts to exceed the tube's maximum output, clipping distortion/saturation will occur in which the output becomes distorted.

When pushed just past their limits, vacuum tubes begin to shape the audio signal waveform in a harmonically pleasing way similar to the fast-acting compression within a waveform period.

Saturation looks a little something like this (with the input signal in blue and the saturated output signal in red):

This image has an empty alt attribute; its file name is mnm_Soft_Clip_Distortion.jpg
Radial Engineering Space Heater 500

Note that type of saturation is what overdrive effects aim to emulate.

Overdrive

What is audio overdrive? Overdrive is a distortion effect that is caused by (or aims to emulate) pushing a tube amplifier just past its amplitude limits. The signal is compressed and “soft-clipped,” resulting in warm saturation in the signal.

The overdrive effect can be achieved by simply pushing a tube amp (or even many solid-state amps). However, dedicated overdrive effects will simulate the effect with greater precision without the need to crank up the volume of an amp.

The effect is that of soft-clipping, as we discussed earlier. This causes some amount of compression and saturation in the signal. Overdrive offers a bit of extra grit without having too much of an effect on the signal's dynamic range.

Overdrive, like saturation, looks a little something like this (with the input signal in blue and the saturated output signal in red):

This image has an empty alt attribute; its file name is mnm_Soft_Clip_Distortion.jpg
Ibanez TS9 Tube Screamer

Distortion

What is the audio distortion effect? The “distortion” effect in audio is produced by hard-clipping the input signal through transistor-based or tube-based circuits. Distortion is the most common on electric guitars but also suits many other instruments.

With the distortion effect, one or multiple clipping stages (often, but not always, transistor-based) are used to drive the signal into hard-clipping. The resulting signal is compressed and full of added harmonics, particularly odd-ordered harmonics.

Distortion will sound more aggressive and edgy than typical overdrive, saturation or compression. The signal's dynamic range will shrink, and its harmonic character will change significantly.

Distortion looks a little something like this (with the input signal in blue and the saturated output signal in red):

This image has an empty alt attribute; its file name is mnm_Amplifier_Clipping_Distortion-2.jpg
MXR M75 Super Badass

Fuzz

What is the audio fuzz effect? The Fuzz effect is caused by hard-clipping a signal so much that it nearly turns into a square wave. It's perhaps the most extreme example of distortion as an audio effect and completely changes the sound of the audio signal.

Fuzz is an effect that drives the audio signal so far into hard clipping that the output becomes a square wave (or at least a waveform very close to a square wave).

We can visualize this with the following image:

The fuzz effect pretty much kills all dynamics in the signal. It alters the signal's harmonic content significantly by producing the typical odd-order harmonics of a square wave.

Electro-Harmonix Big Muff Pi

Transient Shaping

What is an audio transient shaper? A transient shaper is a dedicated envelope control for manipulating the attack (and often the decay and release) of individual transients in an audio signal. These transients are typically percussive hits or notes. Transient shapers can either harden or soften the transient attacks within a signal.

Transient shaping can be achieved by dedicated transient shaper units. It can also be achieved with peak compressors with slower attacks that allow transients to pass through before clamping down on the tail of the audio signals.

Compressors trigger when their input signal passes a threshold. Transient shapers, on the other hand, trigger based on the rate at which their input signal level increases.

W.A. Production Helper Transients 2

What About Audio Data Compression?

The term “compression” also applies to audio data compression. So, then, this wouldn't be a “complete guide” if I didn't at least mention data compression.

What is audio data compression? Audio data compression is the process of encoding digital audio information into fewer bits than the original signal/file, thereby compressing/reducing the file size. Data compression can be either lossless (eliminating redundant info) or lossy (eliminating unnecessary or “less-important” info).

Popular lossless audio compression formats include:

  • FLAC (Free Lossless Audio Codec)
  • ALAC (Apple Lossless Audio Codec)
  • APE (Monkey's Audio)
  • OFR (OptimFROG)
  • WV (WavPak)
  • TTA (True Audio)
  • WMAL (Windows Media Audio Lossless)
  • Dolby TrueHD
  • MLP (Meridian Lossless Packing)
  • MPEG-4 ALS (Audio Lossless Coding)
  • MPEG-4 SLS (Scalable Lossless Coding)
  • RealAudio Lossless

Popular lossy audio compression formats include:

  • Dolby Digital
  • Dolby Digital Plus
  • DTS Coherent
  • MPEG-1
  • MPEG-2
  • MPEG-4
  • MPEG-H
  • Vorbis
  • WMA (Windows Media Audio)

Related Article On Audio Data Compression

To learn more about audio data compression, check out my article How Does Digital Audio Data Compression Work?

Call To Action!

Bookmark this article for future reference whenever you have questions on compression.

Find a few go-to compressors or compressor plugins for your mixing and production endeavours—one of each style is a good idea (VCA, Opto, FET, Tube, etc.)—and master their use thoroughly.

Leave A Comment

Have any thoughts, questions or concerns? I invite you to add them to the comment section at the bottom of the page! I'd love to hear your insights and inquiries and will do my best to add to the conversation. Thanks!

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *