Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Normalize to 0db (NOT ReplayGain) (Read 5395 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Normalize to 0db (NOT ReplayGain)

I would like to know if there is a plugin to automatically normalize my mp3s (peaks) to 0db or 0.1db. I'm not talking about about gain control, I'm talking about simple old peak normalization.
The reason I need this is because I'm in music production and I use foobar to preview sample files, which are often 24/32bit wavs, uncompressed, with peaks hitting as low as -18db. And then you could have a sample with peaks hitting 0db; you can see how playing these files can fry you ears if you don't have your hand on the volume control.

I want this either at the output (without modifying the files) or a process that normalizes each file.
Or if it's possible with ReplayGain - but it has to be without any AGC or compression.

Thank you.

Re: Normalize to 0db (NOT ReplayGain)

Reply #1
Have you tried using the replay gain scanner on them, setting replaygain processing to 'prevent clipping according to peak' and then turning the 'with RG' preamp up to the maxium?


Re: Normalize to 0db (NOT ReplayGain)

Reply #3
I will try this now, but I'm not all that familiar with ReplayGain so I need to know that it won't introduce any post processing or artifacts since I currently use foobar for all sorts of things; one of them being comparing the difference between 2 mastered files. So I would really need ReplayGain to not do anything other that simple normalizing, otherwise it will be affecting my judgment when listening.

Or in other words: I can import 2 files into Audition and process both with 'normalize to 0db', save .wav and listen in foobar. That's what I want, but I have gazillion files to do this and I'd rather have a plugin in foobar that does this at the output without touching the .wav files, rather than overwriting the original un-normalized file (as in the Audition example).

would a DSP work ~ https://www.foobar2000.org/components/view/foo_r128norm

I've seen this, but this statement puzzles me: "normalizing audio tracks using a running windowed calculation of the EBU R-128 standard". This appears to me something similar as ReplayGain Automatic Gain Control?

Re: Normalize to 0db (NOT ReplayGain)

Reply #4
I see the term 'normalize' used everywhere regarding wav/mp3 listening, when in reality they are talking about some form of gain control. I would like to add one thing to the above post so there is zero confusion: PEAK NORMALIZATION: scan the file, find the peak, set the peak to 0dbFS, i.e.: https://docstore.mik.ua/orelly/web2/audio/figs/aud.0411.gif

Thank you :)

Re: Normalize to 0db (NOT ReplayGain)

Reply #5
Replaygain does only apply continuous gain to a whole file, the same as normalization. There is no 'anything else' it's doing. If by automatic gain control you mean something that changes the applied gain over time, replaygain doesn't do that. However the R128norm component does change the gain over time so is not suitable.

The only problem is trying to get the replaygain processing to apply the *same* constant gain as 'normalise to 0db' in Audacity would. ReplayGain scanning already finds the peak dB across the whole file, so you just need to push that up to 0db. I believe if you turn the preamp right up and turn on 'prevent clipping' it basically does this, so should be roughly the same as 'normalise to 0db' as long as it wouldn't need more than 20db of gain.

Re: Normalize to 0db (NOT ReplayGain)

Reply #6
there's also a 'temporary' replaygain DSP, would that work? ~
Quote
"...experimental ReplayGain DSP does that. But it doesn't want to break gapless playback so it allows the scanner to only run for a bit shorter duration then the output buffer contains data. If the scanning fails entirely it will use the same adjustment as was used for the previous track."
~ https://hydrogenaud.io/index.php?topic=118430.msg977362#msg977362
Quis custodiet ipsos custodes?

Re: Normalize to 0db (NOT ReplayGain)

Reply #7
Replaygain can be used to normalize to 0 dB. On conversion or realtime on playback with fb2k. Files need to be scanned and have replaygain info written to tags. Then with settings Source mode - track, Processing - prevent clipping according to peak, Preamp with RG info - +20 dB almost all files will be normalized to  0dB. When converting, ReplayGain settings are in Processing section.
You can also  normalize mp3 without reencoding with function "Apply gain to file content".  Settings: Apply track ReplayGain, Target volume - 110 dB, Make files louder only, Lower adjustment to prevent clipping.  Notice that when changing mp3 volume without reencoding, it only can be changed in steps 1.5 dB.

Re: Normalize to 0db (NOT ReplayGain)

Reply #8
Maybe it's possible only with hardware, software always perform some compression.

Re: Normalize to 0db (NOT ReplayGain)

Reply #9
You could also do this with the "Apply Max No-Clip Gain for Each File" option in the old Mp3gain 1.2.5 full install that included the VB mscomctl.ocx/comdlg32.ocx/msvbvm60.dll files.  This also wrote an APEv2 tag to the file that allowed it to be reversed to the original value if desired, losslessly.

Re: Normalize to 0db (NOT ReplayGain)

Reply #10
i have the exactly same requirement as the OP. what i want is very simple - for example, if the ReplayGain scanner scans the PEAK as 0.745162(-2.55dB), then apply the RP GAIN tag as +2.55dB automatically. I'm surprised that there is no option to do this in ReplayGain scanner components. Anyone has any idea?

The MP3Gain mentioned in #9 is only applicable to MP3 files, as it seems. Is there any tools in Foobar that can do the same?

thanks a lot!!!



Re: Normalize to 0db (NOT ReplayGain)

Reply #13
I installed the Case version. I'm having trouble finding the DSP. Where can I find it?

thank you very much
The same place all DSPs are listed:  Preferences->Playback->DSP Manager, Available DSPs.  Moving it over to the "Active" list will enable it;  if it has settings, they will show after clicking the "..." button to the right after it's on the active list.

Re: Normalize to 0db (NOT ReplayGain)

Reply #14
I installed the Case version. I'm having trouble finding the DSP. Where can I find it?

thank you very much
The same place all DSPs are listed:  Preferences->Playback->DSP Manager, Available DSPs.  Moving it over to the "Active" list will enable it;  if it has settings, they will show after clicking the "..." button to the right after it's on the active list.
thank you
wagner reatto

Re: Normalize to 0db (NOT ReplayGain)

Reply #15
Case, could you give us a description of how the foo_dsp_normalizer actually works?  There are no settings for it, and the effect is very subtle, almost unperceptible, when placed at the end of a DSP chain.  Thanks!

Re: Normalize to 0db (NOT ReplayGain)

Reply #16
I made a quick and simple component to do what @dumbbird (and I recall other people in the past) asked. It simply uses the ReplayGain track peak value and scales the audio signal so that peak hits 0.0 dBFS.
If peak value is missing and the file is normal local file its peak value will be automatically scanned first so that the DSP can do its work. This scanning only happens in memory, files won't be tagged or anything.

The peak normalization obviously only works if there are no other DSPs active as it relies on the peak of the track. Any extra DSPs can change that. CD sourced lossless music will most likely already have peaks hitting digital fullscale so there's nothing to do, or only require miniscule adjustment which is inaudible.

Note that this component makes zero sense to use during playback. It may make some remote sense with converter, but not really sure how. If the intention is to make lossy files, the peaks will change and it's useless to try to control them prior to encoding. And who would want to scale tracks this way to encode them losslessly.

I only made the component as it only took a few minutes to write, which was faster than asking why on earth people want 0 dBFS normalization.

Re: Normalize to 0db (NOT ReplayGain)

Reply #17
Thanks Case for the details, your key remark being, "The peak normalization obviously only works if there are no other DSPs active as it relies on the peak of the track. Any extra DSPs can change that. CD sourced lossless music will most likely already have peaks hitting digital fullscale so there's nothing to do, or only require miniscule adjustment which is inaudible."

Re: Normalize to 0db (NOT ReplayGain)

Reply #18
I only made the component as it only took a few minutes to write, which was faster than asking why on earth people want 0 dBFS normalization.
Haha, quote of the week.

In the ReplayGain component thread you wrote that scanning may not finish in some cases - this doesn't apply here?

 

Re: Normalize to 0db (NOT ReplayGain)

Reply #19
This component has no time limits for its scanning.