Re: Creating files with RMS gain level instead of Peak

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

 



Måns,

Perhaps the following information will explain what I am seeing.

Files

1. http://substrate.com/rms/sox,noise,white,stereo,24b,96000Hz,m12dBFSpeak,tpdf,10s.wav

Stereo white noise created by SoX; a 24bit 96kHz file at -12dBFS Peak and 10s duration, dithered with TPDF dither to 24 bits.
SoX invocation: "sox -V -b 24 -r 96000 -n sox,noise,white,stereo,24b,96000Hz,m12dBFSpeak,tpdf,10s.wav synth 10 whitenoise whitenoise gain -12 dither"


2. http://substrate.com/rms/rx6,noise,whiteuniform,stereo,24b,96000Hz,m12dBFSrms,tpdf,10s.wav

Stereo white noise created by iZotope RX6; a 24bit 96kHz file at -12dBFS RMS and 10s duration, dithered with TPDF dither to 24 bits.



Screenshots

3. http://substrate.com/rms/filestats_sox.png

Brief RX6 analysis of the SoX file; notice the peak level is -12dBFS while the RMS level is -13.76dBFS.


4. http://substrate.com/rms/filestats_rx6.png

Brief RX6 analysis of the RX6 file; notice the peak level is -10.24dBFS while the RMS level is -12dBFS.


5. http://substrate.com/rms/rx6_whiteuniform.png

An FYI shot of the RX6 dialog box to point out that it only allows amplitude specifying as RMS; there is no way to enter a peak value.


6. http://substrate.com/rms/rx6_whitechoices.png

An FYI shot to show that RX6 offers 4 flavors of white noise. I chose white uniform for this exercise because that appears to match what SoX produces. As a side question, it would be nice if someone here could confirm what flavor of white noise SoX produces.


To recap what I am trying to do, so that my original question is not lost: I want SoX, ideally natively via some appropriate command-line switch, to output a white noise file with a specific RMS amplitude. 


Thanks.


On Sun, Jul 8, 2018 at 8:39 AM, Måns Rullgård <mans@xxxxxxxxx> wrote:
Jeremy Nicoll - ml sox users <jn.ml.sxu.88@wingsandbeaks.org.uk> writes:

> On 2018-07-07 21:47, Måns Rullgård wrote:
>> Jeremy Nicoll - ml sox users <jn.ml.sxu.88@wingsandbeaks.org.uk> writes:
>
>>> Yes.  So does that mean that the OP should use something like the
>>> 'stat' effect to find out the peak RMS level of the audio file,
>>> then work out how much gain or attenuation is needed, then use
>>> a 'gain' effect with that calculated value?
>
>> No, he should just use the gain effect.  It adjusts both RMS and peak
>> values by the same amount because that is what happens when you multiply
>> each sample by a fixed amount, which is what the gain effect does.
>
> Yes, I understand that gain is gain, but he has to decide how much
> gain to apply.  If he's previously done that in terms of a pre-gain
> peak level, but now wants to bring RMS levels to a certain point,
> he surely has to find out what the file's RMS levels are first
> then decide how much to modify it by?

The question posed was how to obtain an RMS gain of -12 dB.  The answer
is that RMS gain is equal to peak gain, so "gain -12" will perform the
desired function.  If the question were how much gain to apply in order
to obtain a specific RMS level, then of course the initial value would
have to be known.

--
Måns Rullgård

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Sox-users mailing list
Sox-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sox-users

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Sox-users mailing list
Sox-users@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/sox-users

[Index of Archives]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Photo Sharing]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux