Music Player Network

Previous Thread
Next Thread
Print Thread
Simulating fast compressor curves #3005524 08/28/19 06:33 PM
Joined: Feb 2010
Posts: 4,233
Theo Verelst Offline OP
MP Hall of Fame Member
OP Offline
MP Hall of Fame Member
Joined: Feb 2010
Posts: 4,233
In the longs existing pursuit of winning some loudness battles there's probably since always been the matter of fast responding compressors in the audio path.

I've been working on a complicated DSP setup where the subject is of interest, too, but from another perspective.

My point is, little is understood about why fast compression settings do not work great in the digital domain, under normal circumstances. It has to do with two main things:

* knowledge of the audio signal between samples
* realistic "capturing" of the right compressor curve by the sampling plugin or DSP block

The main issue with fast settings is that higher frequencies in the audio signal will trigger the digital equivalent of the analogue sidechain signal path, and the digital simulation of the amplitude detector (RMS or peak, usually) has just a few samples to decide on either the peak values of subsequent audio peaks or the accurate average. This combines with the problem that it's hard to accurately know the audio signal between the samples, where statistically speaking most likely the "peaks" reside.

There's science involved, but if you don't run at at least 96kHz for instance, the resultant of the fast compressor envelope changing the volume quickly and the high frequency components in the audio signal will easily cause serious aliasing distortion.

In essence the comparison between analog fast compressor and a digital one with the same compression settings is very unfavorable for the digital one.

Theo V.

Re: Simulating fast compressor curves [Re: Theo Verelst] #3005532 08/28/19 07:05 PM
Joined: Jan 2000
Posts: 7,741
Anderton Offline
MP Hall of Fame Member
Offline
MP Hall of Fame Member
Joined: Jan 2000
Posts: 7,741
Wouldn't properly implemented look-ahead take care of this?

Re: Simulating fast compressor curves [Re: Theo Verelst] #3005557 08/28/19 10:27 PM
Joined: Feb 2005
Posts: 138
Mike Rivers Offline
Senior Member
Offline
Senior Member
Joined: Feb 2005
Posts: 138
Something that a lot of people don't realize is that if you try to change the level too fast, it will violate Nyquist's law and create a level change, even though momentary, that has a period exceeding half the sample rate. If it occurs before A/D conversion, like with an analog compressor between the source and the converter input, it should get filtered down to something that the converter can handle. But once it's digital, it's possible to create aliasing by trying to jerk the samples around too fast.

I'm not sure this is what's happening in your setup, but it's something to think about. Algorithms that create harmonics, like "Toob Saturation" or "Distortion," need to be sure to not generate harmonics that are above the Nyquest frequency. By avoiding generating harmonics that would come out as some other frequency than a multiple of the input frequency, they can make the generated harmonics sound like they're supposed to sound.

Re: Simulating fast compressor curves [Re: Theo Verelst] #3005604 08/29/19 07:18 AM
Joined: Feb 2010
Posts: 4,233
Theo Verelst Offline OP
MP Hall of Fame Member
OP Offline
MP Hall of Fame Member
Joined: Feb 2010
Posts: 4,233
There are hard to understand issues with the sampling problem, and just like electronics with non-linear and time-varying characteristics, they can be hard to "cover: theoretically, even by experts. It's possible, though, but that wasn't my point here.

Digital simulations simply are far off the ideas that people have about "the perfect compressor", and honestly for experts it's predictable how they will tend to sound, in many dimensions.

To me that sound is usually unbearably ugly, unfortunately for so many attempts ar "perfect" digital productions!

Re: Simulating fast compressor curves [Re: Mike Rivers] #3005642 08/29/19 05:04 PM
Joined: Jan 2000
Posts: 7,741
Anderton Offline
MP Hall of Fame Member
Offline
MP Hall of Fame Member
Joined: Jan 2000
Posts: 7,741
Originally Posted by Mike Rivers
Something that a lot of people don't realize is that if you try to change the level too fast, it will violate Nyquist's law and create a level change, even though momentary, that has a period exceeding half the sample rate. If it occurs before A/D conversion, like with an analog compressor between the source and the converter input, it should get filtered down to something that the converter can handle. But once it's digital, it's possible to create aliasing by trying to jerk the samples around too fast.


Aha! That explains something I've always wondered about. I've often mentioned how running at high sample rates can make amp sims and virtual instruments sound better. I knew that could also make limiters sound better, but never knew why. Now I do. Thanks!

Re: Simulating fast compressor curves [Re: Anderton] #3005805 08/30/19 07:49 PM
Joined: Feb 2010
Posts: 4,233
Theo Verelst Offline OP
MP Hall of Fame Member
OP Offline
MP Hall of Fame Member
Joined: Feb 2010
Posts: 4,233
The lookahead (small) delay gives you some more time to analyse the signal, but to properly compute the accurate in-between samples maxima, theory dictates a small delay wouldn't be enough for all cases...

Also, you'd still have to chose how to resolve the problem that the side chain frequency range combined with the full audio range will lead to aliasing.

T

Re: Simulating fast compressor curves [Re: Theo Verelst] #3005813 08/30/19 09:23 PM
Joined: Jul 2008
Posts: 13,429
J. Dan Offline
Bannination Free Since '08
10k Club
Offline
Bannination Free Since '08
10k Club
Joined: Jul 2008
Posts: 13,429
What about destructive? I.e. Processing a whole track rather than real time?


Dan

Acoustic/Electric stringed instruments ranging from 4 to 230 strings, hammered, picked, fingered, slapped, and plucked. Analog and Digital Electronic instruments, reeds, and throat/mouth.

Moderated by  Anderton 

Powered by UBB.threads™ PHP Forum Software 7.7.3