ΣSigmaStudio Ask AI Русский Log in

Mono vs. Stereo Compressors

SigmaDSP & SigmaStudio cletnick Oct 21, 2013 00:00 8 replies Original on forum ↗
Thread Summary

Thread Summary

The user asked about the difference in functionality and instruction count between mono and stereo compressors in the ADAU1442 Dynamics Processors. The final answer explained that a stereo compressor combines both channels into a single sidechain to determine a common gain factor, applying the same compression to both channels, which is why it uses only a few more instructions than a mono compressor. The stereo compressor ensures consistent gain adjustment to avoid phantom center shifts, unlike dual mono compressors which can cause such issues. An accompanying answer provided a practical test demonstrating that the stereo compressor adjusts both channels together based on the higher input level.
AI Generated Content
Subscribe
cletnick Question
Oct 21, 2013 00:00

I am currently trying to optimize a project to fit all of our required functionality within the available instructions per sample. I am using peak compressors on the output to protect any downstream equipment from out-of-range signals. During my optimization pass, I have noticed that the stereo compressors only use a few more instructions than a mono compressor. However, I would like a little more information before proceeding by replacing my pairs of mono compressors with stereo ones.

What is the difference in functionality between a mono compressor and a stereo compressor?

From what I understand, a stereo compressor will act like a mono compressor, but also limit both channels if either channel enters into a higher limiting band.

What is the difference in the algorithm used that allows the stereo compressor to use only a few more instructions?

I am not familiar with how the compression algorithm is implemented, but from my assumption above about the difference between a mono and stereo compressor, I would expect the stereo compressor to use about twice as many instructions as a mono compressor. Since that is not the case, I am curious about what is actually using the majority of the cycles.

The exact elements I am comparing is in Dynamics Processors -> Peak -> Standard Resolution ->Lower Range -> No Post Gain -> Mono/Stereo ->No Ext Detect -> Peak. It is running on a ADAU1442.

Audio Signal Processors

compressor

adau1442

SigmaDSP Audio Processors

audio

EZAdministrator Reply
Apr 29, 2019 00:00

This question has been closed by the EZ team and is assumed answered.

J3627 Reply
Jun 4, 2025 00:00

There is no answer...

J3627 Reply
Jun 4, 2025 00:00

I have the same question, using a "Stereo Peak with Ext. Detect and Gain Output (No Post Gain)", which has no documentation. Pressing F1 on the block goes to Peak (No Gain) which says nothing about it.

DaveThib Reply
Jun 4, 2025 00:00

Hello J3627,

Thanks for digging this out up out of the ashes of old posts! Looking at the date this was very early in the history of EngineerZone and things were still being figured out as in what to do if a post is old and unanswered? Then this is also before I was involved with supporting these parts and managing this forum space. So now I can actually provide some answers!!

This would actually be a good YouTube video for me to make some day because some diagrams would help but let me try with just words.

I am actually the right person to answer this because I have designed several good old analog compressors in a past life.

A compressor that is called a "Feed Forward" type will take the audio and split it, as in a "Y" or Mult. One of them goes to the gain change element where the gain is changed which we call compression or expansion.

The other split goes to what we call the "Sidechain".

The job of the sidechain is to figure out the level of the audio coming in but does a lot more than that. It will rectify the audio to make it into a DC signal. Then it applies a time constant to charge up something, in the analog days it was a resistor and capacitor, in a DSP it simply takes a portion of the signal and adds it to the previous accumulation and keeps adding it up in a memory location. The size of the portion it takes will change how fast it goes up in level. Then there will also be a mechanism to let it drain down at a certain rate. If the input goes low then it starts to drain rather than accumulate.

This value is then used to determine what the signal level is. Then from that you use a table of values to figure out how much gain reduction should be applied for that signal level.

This is the compressor curve. So if the level is XdB then apply -3dB or whatever the table says for the current sidechain level. Let's say it is -6dB needs to be applied to the audio....

Now let's jump back to the start where we had the signal split and go to the gain change element. In good old analog compressors this was a VCA or an optical method or a FET, something to change the gain of a signal. With a DSP we simply multiply!! That is what a DSP does well. So you need to know what the gain factor is. There are web sites that will calculate this for you. For this example I kept it simple. Remember your theory, +6dB of voltage is a doubling of the voltage. So if you go -6dB you halve the voltage or in this case you multiple by 0.5 !! Poof! you have compressed the signal by 6dB.

This is so simple in a DSP. The gain change element is a multiply instruction. You take the incoming audio sample and multiply it by the gain factor you figured out from the sidechain level and the compressor curve table. For one channel it is one multiply. If you have a stereo compressor then you have to fetch the second channel's data and do one more multiply so it takes a few more instructions to fetch, multiply and store the second channel's data.

Now there are differences in how you deal with the sidechain. For a stereo compressor you take the two channels, add them into a mono signal and send that to the sidechain. Then you come up with a single gain factor and do the two multiplies.

A few analog compressors and a few of our DSP compressors have a dual-mono mode. I think we have one that does this? This is bad for a stereo signal. Because something panned to one channel can make one channel reduce its gain. This will make anything panned to the phantom center move out of the center position. For a stereo signal this is really bad. So you want one sidechain. If you need to use dual mono then pull out two compressors from the library. In the good old analog world there was a stereo/mono button so you could use it as two compressors for two different signals not a stereo signal. Anyhow,...

Now we have several options in the library for "External Detector". This is the sidechain input. It is brought out so it is up to you to put in the "Y". This gives you tons of flexibility!! You can EQ the signal going into the sidechain to make it more or less sensitive to certain frequencies. This is what is often done to make a De-esser to remove sibilance in a vocal. Or you can make it not react to bass notes which for a stereo mix is useful.

Then you also could take the sidechain input from the actual output of the compressor! This is called a "Feed-Back" style of compression. You need to use a feedback cell to do this in the DSP. All great old classic analog compressors like the 1176 is a feedback style!

Then the time constants I talked about is where you get the options for RMS or Peak etc. The one thing a DSP compressor can do that an analog compressor can never do is instantaneous limiting! You can do it in the DSP. We also have a hold time where you can hold a setting before it starts to decay and in an analog world it starts to decay as soon as the input signal goes down in level.

Post Gain, this is simply an amplifier, in the case of a DSP it is a multiply command, to change the gain by a fixed value after the gain change element. So in the DSP it is after the multiply using the gain factor derived from the sidechain and the gain table, the signal is multiplied by a certain amount that you specify. It is often you squash the signal a lot to get that super compressed sound but then you need to make it louder so you add post gain.

I guess I need to put on my professor hat and make a compressor theory video. It is funny because I do teach as an adjunct at two universities and I have found that many of these audio engineering students do not know anything about how compressors work. Oh well...

I hope this answers your questions?

Dave T

KJBob Reply
Jun 4, 2025 00:00

Hi all,

Here's an example of how this particular compressor reacts to disparate signals in its two inputs. The test circuit I built interleaves the two channels, alternating between -6 dB and +3.5 dB on each. The compressor is set for a hard limit of about -6 dB.

The input level vs. time for one channel is shown below. The long low interval is where the other channel goes high, with shoulders in between when both channels are low. This way we can see how the two channels interact.

cletnick said:
From what I understand, a stereo compressor will act like a mono compressor, but also limit both channels if either channel enters into a higher limiting band.

The output shows exactly this -- the sidechain selects the higher input level to compress both channels. We see this effect in the middle of this trace when the second channel receives its high input.

Dave, a compressor theory video would be a great help to the community. One can learn a lot by playing around with SigmaStudio, experimenting with sidechains and such. I'm happy to see your video on having SigmaStudio troubleshoot itself.

Best regards,

Bob

Stereo-comp-activity_sch.png
Stereo-comp-activity_sch.png
7711.Input.png
7711.Input.png
6518.Output.png
6518.Output.png
TomCAnalog Reply
Jun 7, 2025 00:00

Dave and KJBOB:

Both - most excellent explanations, demonstrations and educational responses!!!

Looking forward to that video!

TomC

J3627 Reply
Jun 13, 2025 00:00

DaveThib said:
I hope this answers your questions?

I don't think so?

I just wanted to know if the "Stereo" versions of the compressors adjust the gain of both channels together, or independently.

I think if they were independent and just meant to optimize computation, it would be expressed in the UI using "grow algorithm" rather than the word "stereo", but I wanted to be sure.

I measured it and it looks like they are adjusted together.

DaveThib Reply
Jun 13, 2025 00:00

Hello J3627,

I did but it was buried in the long response:

DaveThib said:
Now there are differences in how you deal with the sidechain. For a stereo compressor you take the two channels, add them into a mono signal and send that to the sidechain. Then you come up with a single gain factor and do the two multiplies.

A stereo compressor really has to adjust the gain of both channels exactly the same otherwise the phantom center channel will shift around which is irritating to the listener.

If someone does not care about this then they just need to use two mono compressors.

So yes, all the stereo compressors and grown ones adjust the gain the same for each channel.

Dave T