[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Audio Compressor

From: Doug Stewart
Subject: Re: Audio Compressor
Date: Tue, 18 Aug 2020 11:44:25 -0400

On Tue, Aug 18, 2020 at 11:26 AM Renato S. Yamane <> wrote:
Em ter., 18 de ago. de 2020 às 15:12, Doug Stewart <> escreveu:
On Tue, Aug 18, 2020 at 9:41 AM Renato S. Yamane <> wrote:
Is there an Audio Compressor available in Octave?

I'm compressing my noises in the worst way, as you can see in the "while" condition on the example below.

In my way, the peaks will be "clipped", and I would like to avoid my stupid workaround:

crest_factor = 6;
typenoise = noise(10*44100, 1, 'pink');
[z, p, k] = butter(4, [100/(44100/2), 500/(44100/2)]);
sos = zp2sos (z, p, k);
filtered = sosfilt(sos, typenoise);
normalized = filtered / (rms(filtered) / 10^(-crest_factor/20));

Now I'm making an stupid workaround, as the audio file must be in
a range from -1 to +1:

while (normalized(normalized > 1) || normalized(normalized < -1))
  normalized(normalized > 1) = 1;
  normalized(normalized < -1) = -1;
  normalized = normalized / (rms(normalized) / 10^(-crest_factor/20));

audiowrite ('AudioFile.wav', normalized, 44100);
There are many ways to do Audio Compression.
Tell us more about what you want to accomplish.

Hi, thanks for your feedback.
I just need to the user define the crest factor (first line of the code above) and the script must generate the noise (wav file) with the respective crest factor without clipping.
I'm expecting the user define the Crest Factor between -6 to -12dB.

Many thanks,

But crest factor and clipping are 2 independent things. you can have a crest factor of some value  and still have clipping or no clipping.

DASCertificate for 206392

reply via email to

[Prev in Thread] Current Thread [Next in Thread]