Probably a silly dynamics question

  • Thread starter Thread starter mixsit
  • Start date Start date
But he said throw out attack and release, not threshold.

If you leave everything below the threshold alone and only affect the wave above the threshold, you will be changing the rise and slope of the wave. If you did it perfectly, it would probably sound like crap because of the distortion of the wave.
Assuming a threshold above -inf (dBFS), yes, you're right. I was instead assuming the original proposal:
mixsit said:
Would there be a way to reduce the dynamic range of a signal by simple ratio and not include time' and threshold?

I may be missing something really basic here. But if you were to scale each sample's level value by say .5 would that make for a transparent dynamic range reduction with out the attack and release artifacts of a compressor?
and that he still meant the same thing in his last post when he specified applying the compression "to each sample". This would mean an infinitly small threshold (or at least one set below the noise floor) in order to apply the compression to the the whole signal uniformly.

That said, though, I do need to correct my last post on one other important thing. The output makeup gain will balance out the effects of such global compression and make it "invisible" only if the output gain is acting like a typical analog amplification circuit and actually multiplying the output voltage.

I'm not sure - I just don't know - if your typical output gain on a digital compression plug acts like that or whether it's a simple additive volume control (like simple peak normalization.) If it's simple additive volume - e.g. if when it's set to 12dB it simply adds 12dB to each sample - then the compressed signal will sound compressed and have less dynamics, even when you do try to equate the relative playback volume to the original uncompressed signal.

G.
 
So, assuming a "perfect" compression algorithm or circuit that added no noise, coloration or artifacting, an even, equal overall change in compression ratio across the board, when adjusted for playback volume should sound no different than the original, because the compression, when applied that way, really is nothing more than an evenly applied difference in signal gain.

The only issue that I have with this is that I would think this process would soften the impact of transients considerably and take away the punch from instruments such as the drums.
 
The only issue that I have with this is that I would think this process would soften the impact of transients considerably and take away the punch from instruments such as the drums.
I'm only working on brain experiment here, so I'm not claiming gospel, but I would think that as long as the relative difference in volume stays the same, that their basic "character" stays the same, resulting in a simple halving (for 2:1) of volume.

For example, lets say you have a transient with an amplitude of 12 dB with a crest factor of 6 dB over a signal average amplitude of 6dB. applying 2:1 across the board would drop the average signal level to 3dB and the transient to 6dB.

Now, one can argue that the transient mow only has a crest factor of 3dB and is therefore "softened". But it's still a transient of twice the amplitude as the average level, so it should still have the same relative punch, I would think.

The catch is that now, everything is at a lower volume. We could say that things will sound different because of psychoacoustic factors such as the Fletcher-Munson curves and loudness weighting as tied to volume, but I think that just kind of masks the purpose of the question, so I've been ignoring that by assuming that one corrects for the volume difference with output gain.

This is where my correction/caveat comes in. If in a digital plug the output gain is just a fixed peak volume normalizer that adds a fixed number of dB to every sample, then yes the result will sound more compressed than and different from the original and some of the transient punch will be lost. because if, say, you simply add 6dB to the signal to bring the transient back up to it's original level of12dB, you are now bringing the average signal level up to 9dB instead of it's original 6dB. IOW, an additive volume correction will raise the volumes of everything equally, but the 2:1 compression will still be there, therefore keeping the crest factors halved. And your thought would be correct.

If, however one is using a classic analog (pre)amp circuit design or emulator for the makeup gain, it will multiply the output voltage and not just add a fixed number of dBs, and all relations will remain the same as in the original signal (again assuming for argument a clean linear amplification with no frequency artifacting, noise, etc.), in which case one should not theoretically hear a difference.

So, I see it depending a lot on how you look at it and on what kind of makeup gain your using. IMHO, but open to discussion/correction :o.

G.
 
But you would be changing the angle of the slope of the wave. Wouldn't that sound different?
 
But you would be changing the angle of the slope of the wave. Wouldn't that sound different?
I don't think it would.

Let's say you had a simple triangle wave (just for easy example) with an amplitude of 6dB. Use 2:1 compression to cut it's amplitude to 3dB. The slope has indeed changed drastically. But in effect all that "slope" represents is a change in amplitude to a signal of fixed frequency. There's no difference between what that compression did to it and what a simple amplitude decrease would also do.

G.
 
But he said throw out attack and release, not threshold.

You guys are a bit scary to read cuz I don't get most of it, but if you set a compressor's threshold without any attack and release, you'll just get this instantaneous gain change, right? Like a sudden cranking down on the gain/level knob. Really natural sound, but instantly noticeable change in gain. Like when you're riding the moving walkway at the airport and you don't step off the end quickly enough. It would be worse than a too-fast attack in terms of changing the sound, right?
 
I don't think it would.

Let's say you had a simple triangle wave (just for easy example) with an amplitude of 6dB. Use 2:1 compression to cut it's amplitude to 3dB. The slope has indeed changed drastically. But in effect all that "slope" represents is a change in amplitude to a signal of fixed frequency. There's no difference between what that compression did to it and what a simple amplitude decrease would also do.

G.
You're gonna make me break out Reaktor again aren't you? :mad:

I mean, weren't you irritated enough the last time? :p :D
 
The real answer is, it depends on the frequency. Low frequency sounds require more time for it to complete one cycle (i.e start from 0, go to +1, go back down to 0, go down to -1, and go back up to 0 again)... or in degrees, to start from 0, go to 90, then 180 (which is the same as 0) then 270 (or -90 if you will) and back to 360 (same as 0).

(snip)

1 Herz (Hz) is defined as the frequency of sound that makes full cycle in 1 second. So, 50Hz will take 1/50th of a second, 200Hz will take 1/200th of a second, 3kHz will take 1/3000th of a second to complete one full circle and so on.

So, once you start looking at this, and you take simple wav file recorded at 44.1kHz, you realise that 1 sample cannot accurately represent any frequency in the audible spectrum :)

Okay, so the low E on my guitar vibrates at about 82 Hz (when it's in tune :)) and I record at 44.1 KHz, so 1/82 of 44.1 is about 538 samples. It takes 538 samples to capture one cycle of sound at 82 Hz.

So I went into my software and measured out 538 samples of a low E on my guitar and played it back. It sounded nothing like a guitar. More like a transient, like something being struck. It was percussive rather than tonal. Conclusion: one cycle of samples isn't enough to recognize an instrument. Which turns partly on the listener - I think that's one of the things Oretez said in his post.

So I asked a less than useful question originally. I shouldn't have asked how many samples it takes to recognize an instrument; I should have asked how many milliseconds it takes *me* or *you* to recognize an instrument.

So I tried listening to that same guitar note for .3 sec, then .2 sec, then .1. It sounded like a guitar, but it was no test, because I knew what I was listening to. But it sounded like a guitar. I'm not interested in entering the aural Olympics. This all started because I was wondering how much information there is in a sample. Now I know. Virtually none, unless it's connected to hundreds and thousands of other samples.
 
Okay, so the low E on my guitar vibrates at about 82 Hz (when it's in tune :)) and I record at 44.1 KHz, so 1/82 of 44.1 is about 538 samples. It takes 538 samples to capture one cycle of sound at 82 Hz.

So I went into my software and measured out 538 samples of a low E on my guitar and played it back. It sounded nothing like a guitar. More like a transient, like something being struck. It was percussive rather than tonal. Conclusion: one cycle of samples isn't enough to recognize an instrument. Which turns partly on the listener - I think that's one of the things Oretez said in his post.

So I asked an imprecise question. I shouldn't have asked how many samples it takes to recognize an instrument; I should have asked how many milliseconds it takes *me* or *you* to recognize an instrument.

So I tried listening to that same guitar note for .3 sec, then .2 sec, then .1. It sounded like a guitar, but it was no test, because I knew what I was listening to. But it sounded like a guitar. I'm not interested in entering the aural Olympics. This all started because I was wondering how much information there is in a sample. Now I know. Virtually none, unless it's connected to hundreds and thousands of other samples.
Yes, and that's exactly what one cycle of any waveform would sound like... very, very short. In fact in this instance that sound would last exactly 1/82nd of a second :) For you to hear if that one cycle sounds like a guitar, you'll need to loop it and have a listen.

But again, we come back to the point that acoustic sounds are complex animals and they evolve over time. Look at the recording of your guitar in an audio editor or DAW, and I am pretty sure you'll see differences from cycle to cycle. It is in fact this difference, that gives us clues as to what a given instrument is. It is also this aspect that makes us use adjectives such as "organic", "complex" and "evolving" when describing the sound of a particular instrument.
 
You guys are a bit scary to read cuz I don't get most of it, but if you set a compressor's threshold without any attack and release, you'll just get this instantaneous gain change, right? Like a sudden cranking down on the gain/level knob. Really natural sound, but instantly noticeable change in gain.
No, it would be very unnatural because you would be changing only the top and bottom parts of each wave. So you would be adding harmonics that weren't there before, which is distortion.

What you need a compressor to do is turn down the waves that go above the threshold, not turn down the parts of the waves that go over the threshold. When you mess with the parts of the waves, you are changing what they are, not just the volume.

I think you are having a hard time visualizing how really, really, small and insignificant any single wave is, much less any of the hundreds of samples needed to make one.

A compressor with an attack of 1ms (which is pretty fast) will let 44 samples go past before it start trying to turn the gain down. With the release set at 50ms (again, pretty quick) 2205 samples will go past before it starts trying to recover.
 
You guys are a bit scary to read cuz I don't get most of it, but if you set a compressor's threshold without any attack and release, you'll just get this instantaneous gain change, right? Like a sudden cranking down on the gain/level knob. Really natural sound, but instantly noticeable change in gain. Like when you're riding the moving walkway at the airport and you don't step off the end quickly enough. It would be worse than a too-fast attack in terms of changing the sound, right?

You're gonna make me break out Reaktor again aren't you? :mad:

I mean, weren't you irritated enough the last time? :p :D
Lol, dobro, I'm not sure I exactly follow your moving walk analogy, but I like it! :) But yeah, what you're saying about compression with no (by which I assume you mean instantaneous) A/R being basically just a gain change is correct.

Where it gets confusing, and where sonic differences come in (outside of A/R artifacts) is when the threshold causes some parts of some waves to be affected and others not. I think this is where Farview chimed in several posts ago and lead to the question about slope change.

When all slopes (i.e. the entire waveform) are affected by the same gain change ratio, the relation of the slopes to each other stays the same, and the "character" of the waveform does not change other than the change in overall amplitude. To continue that example of the triangle wave, the characteristic triangular shape of the triangle does not change - it's still a triangle - nor does it's frequency. the only change is in the overall amplitude. Now, if the threshold were set so that the top half of the triangle only were compressed, then that would change the triangle's shape and therefore change the triangle's "timbre ".

This is where we hear many timbre changes caused by typical compression techniques (which virtually never have a -inf threshold setting ;) ); the "slope" changes in the waveform are not uniform across the board; therefore, lik with the triangle example, timbre changes are heard because the basic character of the waveform has been altered..

And George: I am open to correction on this as I am indeed going strictly on theory and thought here, and perhaps there's a factor I'm forgetting - though I feel pretty good about it. But if/when you do pull Reaktor out all I ask is that you make sure to separate out the working theory from any artifacts introduced by faults in the Reaktor software itself. (We gotta get Sanity Clause to get you a B&K test tone generator and oscilloscope for Christmas ;) :D)

G.
 
And George: I am open to correction on this as I am indeed going strictly on theory and thought here, and perhaps there's a factor I'm forgetting - though I feel pretty good about it. But if/when you do pull Reaktor out all I ask is that you make sure to separate out the working theory from any artifacts introduced by faults in the Reaktor software itself. (We gotta get Sanity Clause to get you a B&K test tone generator and oscilloscope for Christmas ;) :D)

I am actually not arguing with you. I too want to see (hear?) what the end result of this calamity would be :D

OK, I am thinking this shouldn't be that hard to built. Basically I'll need to setup an array that reads each sample of a given file into an array element, then calculate the values of each element and get the average. Then affect the amplitude by a given amount by using this average as a pivot point if you will.

Hmmm. Will try this over the weekend. Will need to keep the audio file short and likely mono for simplicity's sake. This certainly will need to be an offline process.

Hmmm...
 
OK, I am thinking this shouldn't be that hard to built. Basically I'll need to setup an array that reads each sample of a given file into an array element, then calculate the values of each element and get the average.
or you could just take a signal and run it through the dynamics processor in your DAW like I described on page 1 of this thread. ;)

Maybe I'll try this myself and post some results. Dinner first....

G.
 
You could do it with a graphical dynamics processor plug set to a simple ratio and a threshold set low enough to cover the entire dynamic range of the input signal.

In practice I know that Adobe and Sony platforms contain such plugs natively, and give you both look-ahead and the ability to set A/R times to 0ms. And I assume most other DAW platforms have similar native plugs. How musical the results will be is a question, but it shouldn't be too difficult to set one up and try it. Maybe a little slight of hand in the manual settings might be needed to handle stuff below the nominal bottom range of the plug (e.g. -100dBFS in Audition and -80dBFS in Sound Forge), but chances are that's going to be below the signal's noise floor anyway.
You mean this? Hmmm... not sure if Cubase has something like this :confused: I gotta look.
 
There's an idiosyncratic definition of an atom of water
There is no such thing as "atom of water". Water is a chemical molecule consisting of two hydrogen atoms and one oxygen atom. Unless I am confused as to what you're alluding to. :confused:
 
You mean this? Hmmm... not sure if Cubase has something like this :confused: I gotta look.
Yeah. I ran a quick test using Sound Forge's version of it in (of course) Sound Forge. I used an actual music file with good dynamics and frequency usage, and tried it at 2:1 and 1.5:1 compression in two different tests.

Makeup gain is definitely needed because when setting the threshold down at -80dBFS (which is as low as the plug will go), the overall volume is crunched way low. When you figure a peak at 0dBFS at 2:1 with a threshold of -80 is going to be crunched down to a maximum peak of -40dBFS with everything else much smaller and actually down near the noise floor. That's why I tried a second test at 1.5:1, just to make the result a bit more audible.

But the results either way are pretty much the same-sounding as the original, with the exception of the real low stuff around -80 and below (the end of reverb tails and the noise floor itself) now being emphasized because they are not getting the compression.

I want to refine the test little before I publish. I want to try the Adobe plug - which goes down to -100dB on the threshold - and also refine the makeup gain settings to try and get a more accurate playback volume match, but so far it looks like pretty much what I was predicting, I think. I'll work on it more tomorrow.

G.
 
Test Results

OK, I worked with the dynamics processing tools a bit more this morning, and it appears that my original analysis was correct, that applying equal compression across the board with instant A/R and no threshold simply creates a lower volume version of the original. If you adjust by simple analog amplifier volume on playback, you'll hear basically the same thing (but noisier because the extensive gain required is really pushing up the noise level also), but if you try to bring the volume back up with digital volume normalization, the compression will reveal itself and the entire wave will have that compression applied to it, for the reasons I described in the earlier post.

Here's the test details:

First, it's actually kind of difficult to cleanly execute in practice, because when you crunch with an extremely low threshold, the wave gets *really* tiny. When trying to apply 2:1 compression with a threshold of -99.9dBFS, two major artifact sources came into play; the signal and the noise were of such similar levels that the whole thing became noisy to listen to, and the loss of bits used results in quite a bit of granularity of sound, especially on the transients.

These are both artifacts that are not caused by the compression itself, but rather are side effects caused by the noise in the signal I used and by the nature of the digital format. I could have probably avoided both by using a simple test tone instead of a real music recording, but I wanted to throw something real and "stressful" at the test.

For these reasons, I wound up leaving the threshold at -80dBFS and setting compression at 1.5:1 instead of 2:1. This helped keep the noise floor fromm getting too much in the way, made the resulting wave amplitude a little larger so that "granularity" was minimized, yet still provided plenty of compression to enough of the waveform to make a proper demonstration.

I started with a ~30 second intro of an actual mix I worked on a few years ago as the test signal. I then peak normalized it to -0.1dBFS, just so I knew I had a standard volume to adjust the result to later (this was only a change in peak level of about 0.03dB from the original.) Then I compressed at 1.5:1, with 0 A/R, a threshold of -80dBFS and no makeup gain. Here's a screenshot of the dynamics tool with the settings I applied to the file:

comp_test_gdp.jpg


I then put together a single file that contains, in sequence, the original 30sec sample, the raw result after the compression was applied, and then the compressed version re-peak-normalized to the same as the original. There's approx. 1 sec of gap between each sample. I then converted back to MP3 just for sake of uploading/downloading ease.

You can find this file and listen to (and look at) all three samples for yourself by clicking here.

G.
 
Last edited:
Noisewreck said:
OK, I am thinking this shouldn't be that hard to built. Basically I'll need to setup an array that reads each sample of a given file into an array element, then calculate the values of each element and get the average. Then affect the amplitude by a given amount by using this average as a pivot point if you will.

Hmmm. Will try this over the weekend. Will need to keep the audio file short and likely mono for simplicity's sake. This certainly will need to be an offline process.

Hmmm...
Hey this is fantastic. I was happy just to see the idea finally starting to get conveyed, let alone thinking it could actually happen!
You know, for these purposes I'm not sure you'd need to go all the way down into the noise floor. Starting somewhere down within the musical part of the signal might be more to the point. But, it looks like you have already run into an interesting consequences. With even at 2:1 ratio it's a lot of total reduction, and perhaps the want of a soft knee curve ultimately? What do you think?
southSide Glen said:
But the results either way are pretty much the same-sounding as the original, with the exception of the real low stuff around -80 and below (the end of reverb tails and the noise floor itself) now being emphasized because they are not getting the compression.
 
Glen that clip is interesting. A couple questions- Does that plug allow you to go to 'zero on attack and release, and did you have to do it off-line? (edit; Oops, didn't look at the jpg..

Just mention also, I just realized (re-realized :)) my raw live multi track was got my wheels turning on this again in the first place. This stuff has huge and often sharp dynamic swings. (Thus the initial impetus for this broad low ratio.
 
Last edited:
Back
Top