Compressor Noise Floor Question

Hi,

Could someone explain how the “Noise Floor” parameter of the built-in compressor works. According to the manual “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.”

What does “unduly amplified” mean? Is the audio below the Noise Floor not being processed? If this is the case, shouldn’t the graph show that the audio below the noise floor is treated differently to that above it.

Cheers,

Chris

see the gap between “no right” and “no desire” on the WAV attached …

I think you’re right : if the graph was truly accurate the knee should change shape when the noise-floor slider was changed on Audacity’s native compression.

[ Maybe this thread should be shifted to feature request forum].

Audio below the noise floor setting is processed. The previous description in the Manual which I think is accurate said:

Sets the signal level below which the compressor holds the gain constant while waiting for the signal level to come back up above the set level. This is mainly useful when compressing speech, because it prevents the gain increasing during pauses and so over-amplifying the background noise. This setting isn’t a threshold below which compression is not applied; move the slider to extreme left (or below the actual noise floor) to allow gain changes during pauses.

However the Manual editors thought this begged more questions than it answered so opted for simpler text.

Gale

Trebor, I moved your follow up request for shorter release times to a new Adding Features topic.

Gale

Thanks for the replies but I’m still not clear on what’s happening to audio below the Noise Floor threshold.

Sets the signal level below which the compressor holds the gain constant while waiting for the signal level to come back up above the set level. This is mainly useful when compressing speech, because it prevents the gain increasing during pauses and so over-amplifying the background noise. This setting isn’t a threshold below which compression is not applied; move the slider to extreme left (or below the actual noise floor) to allow gain changes during pauses.

You’re right about this not being clear! The quote says that the gain is held constant but at what level? And it also says that it isn’t a threshold so that audio below the Noise Floor value is being compressed somehow - but how?

Maybe I’ll have a look at the source code and see if that sheds any light on the process.

Cheers,

Chris

The precise behaviour depends on all of the other settings, but the general idea is the same in all cases.

What a compressor does is to “squash down” (compress) the loud parts (high amplitude) in the track.
Depending on other settings, that will either, make the overall maximum level lower so that you then have room to amplify the track more, or, the effect will automatically amplify the result. In ether case, after amplifying the track, lower level sounds will be louder than in the original.

In most cases, making lower level sound louder is exactly what you want, but you probably don’t want very low level background noise during “silences” to become louder. Normally you would only want the medium to low level sounds to be louder, not the “very low level - should be silent” sounds.

The “Noise floor” setting helps to achieve that by slightly suppressing very low level sound.
Even so, the noise level will often increase to some extent, but this “suppression” helps to prevent the noise level from rising too much.

Exactly how much “suppression” occurs, depends on all of the other settings, and is not separately adjustable. The only adjustment available for “noise suppression” is the level at which it happens (set by the “Noise Floor” slider).

Once again, thanks for the explanation, but I’m still hoping for something more technical.

Perhaps I should add that I’ve studied music and music technology (including C/C++ programming and DSP) and work in audio post. One part of my current work involves editing recorded radio shows for podcasting. These shows often include noisy phone interviews and are replayed on a national broadcaster that has fairly stringent QC so that’s why I’m interested in what’s happening to the background noise when I use the compressor.

When you say “The precise behaviour depends on all of the other settings” that seems a bit unusual and not what I would expect.

Could you give some examples of how this is meant to work?

Cheers,

Chris

Then you could do a Paul L and rewrite a less than satisfactory effect for us so that it behaves more like it would be expected to :slight_smile:

I think the practical effects are clear. Assuming you don’t want noise rising in pauses, but it happens, move the slider to right, though it would be better to get the noise floor down in the first place.


Gale

Ha! I’ve actually been thinking of doing just that. At the moment I’m having a look at the source code of various different compressors. I thought I’d try and get a “vanilla” version going first - it would just have the standard controls - Threshold, Ratio, Attack, Release and Gain.

I’ve also been trying to get a build working on a more recent version of OSX (but that’s a whole other story).

Excellent question!!
I think it would be a lot easier to understand what the Noise Floor function does if somebody would please explain it more in “audio engineering” terms, instead of via (what seems to me) a vaguely purpose-oriented description that is better suited to serve as a dumbed-down explanation that we could tell to curious people who do not actually use Audacity. Standard audio engineering nomenclature can be cross-referenced for definitions.

So anyway… Gale, Trebor, et al, I am slow. …like a 5-minute attack and a 1-hour release… Here are my current wonderings:

Idea #1: The Noise Floor feature behaves as an expander below the Noise Floor’s Threshold. The range of the expansion is equal to the amount of make-up gain employed. The ratio of the expansion is equal to the compression ratio employed. (Draw a graph in your head.) Everyone either knows what an expander does or they can just look it up online.

Idea #2: Noise Floor Threshold gets implemented only upon make-up gain, creating a gap in the dynamic range, between the “noise” below the Noise Floor Threshold and the quietest post-comp amplified (make-up gain) signal. Basically, all signal below the NFT would stay the same, while all signal above the NFT would get amplified according to make-up gain. If no make-up gain is employed, then the NF feature does nothing. RMS compression has user-defined makeup gain (2 choices: none or normalize), allowing the user to not invoke the NF feature. Unfortunately, Peak compression does not provide any such choice, forcing the user to normalize, and thereby always invoking the NF feature.
*** Edit: Actually, it’s not that bad. I just realized that this method would be like using a gate instead of an expander. Also, I removed the cheers. ***

Idea #3: Some wakky combination of the two…

*** Edits… ***
Idea #4: The Noise Floor feature behaves as an expander between the Noise Floor Threshold and the Compression Threshold.

To follow or participate in a discussion regarding a possible change to the Audacity Manual’s description of the Noise Floor feature, you can go here:
https://forum.audacityteam.org/t/compressor-noise-floor-description-for-manual/38790/1