Skip to main content


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: Loudness normalizing spreadsheet for compilations (Read 6901 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Loudness normalizing spreadsheet for compilations

From this thread:
Level mix compilation based on very dynamic track?

Simple spreadsheet to help with compilations where very dynamic tracks are mixed with various others (compressed or high levels). This will re-figure ReplayGain Track gain to level the perceived loudness for the entire compilation without clipping the most dynamic track.

Loudness normalizing spreadsheet for compilations

Reply #1
Due to some serious misunderstandings on my part (ReplayGain's "Peak_Value" tag being an integer value for one), this needed some major revisions. If anyone tried it out with say, an MP3 that goes over full scale, it would totally break.. I finally had the chance to properly try it out this weekend and noticed it was mostly broken unless the tracks met a certain criteria. Not really useful, in other words!

Changes include:
- integer to dB conversion column (still not sure I have the excel syntax right for that formula, it works now from what I can tell).
- adjusted peak value in dB clolumn
- some corrected formulas and formatting

Loudness normalizing spreadsheet for compilations

Reply #2
Hot Soup,

I think there are still some problems with your spreadsheet.

The task is pretty straightforward: Figure out what the track peaks would be after applying ReplayGain, then reduce all the ReplayGain values to avoid clipping the track with the highest peak. Your spreadsheet isn't doing this.

Starting with a blank sheet, the spreadsheet needs these columns:

(optional) track name / number

ReplayGain track gain

ReplayGain track peak

peak in dBFS.
e.g. cell D3 is "=20*LOG(C3)"

peak in dBFS after ReplayGain.
e.g. cell E3 is "=B3+D3"

maximum peak in dBFS after ReplayGain
cell F3 is "=MAX(E$3:E$102)"

new ReplayGain track gain
e.g. cell G3 is "=B3-$F$3"

That's it.

If the "maximum peak after ReplayGain" is less than 0, you don't need to do anything to avoid clipping because the original values did not clip - but in this case using the new values calculated by the spreadsheet will increase the loudness of a compilation that wasn't going to clip.

Some people prefer to leave a little headroom between the peak sample amplitude and digital full scale. If so, just add Headroom like this...
cell G3 is "=B3-$F$3-Headroom"

I have a feeling you can express this in Excel more elegantly than I can.

Hope this helps.


P.S. if you want to check the resulting track peaks, you can add...
new peak in dBFS
e.g. cell H3 is "=G3+D3"

new peak
e.g. cell I3 is "=10^(H3/20)"

Loudness normalizing spreadsheet for compilations

Reply #3
Wow. Yes, I can see I still didn't really grasp this. And what's more, it's embarrassing to have spent the time making a tool to help, only to have that further aid in my confusion. But thanks!!! I think I have it cleaned up now.

New version courtesy of 2Bdecided, with some cell formatting done by me.

Loudness normalizing spreadsheet for compilations

Reply #4
- made headroom more user-adjustable
- removed some embedded properties

This should be the last version. If a moderator could delete previous versions, I'd appreciate it.
Thanks for everyone's help.

Loudness normalizing spreadsheet for compilations

Reply #5
The Christmas season always demands more compilations. I've revisited this spreadsheet tool and found it was easier to use ReplayGain plus preamp gain to slide a compilation up or down, instead of recalculating each track's gain and manually editing the RG metadata.

And who doesn't love spreadsheets, am I right?

New this version
- simplified entry: enter desired headroom and a preamp value is calculated for you.
- expanded collection size for much larger compilations, if desired.

Hopefully someone might still find this useful.

SimplePortal 1.0.0 RC1 © 2008-2021