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: Dynamic Range plugin (Read 7980 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Dynamic Range plugin

Will there be a x64 version of Dynamic Range plugin for Foobar v2.0

 

Re: Dynamic Range plugin

Reply #1
I would welcome an update component, despite all the shortcomings. But unless someone does it from scratch (algorithm implemented here: https://github.com/magicgoose/simple_dr_meter/ ... @magicgoose is that you?) - then you can probably forget about it: The old one is from 2011 (about same time as last time you heard anything from Pleasurize Music I guess?), and had to be retrieved from archive.org after the developer abandoned it.

Re: Dynamic Range plugin

Reply #2
I would also like to see that component, though we probably never will.



Re: Dynamic Range plugin

Reply #5
With masstagger:

Masstagger | Add | Format value:

Destination field name: PLR_ALBUM
Formatting pattern:

Code: [Select]
$puts(tpfs,$replace(%replaygain_album_peak_db%,.,, dB,))$puts(lufs,$sub(-2300,$sub($replace(%replaygain_album_gain%,.,, dB,),500)))$puts(plr,$sub($get(tpfs),$get(lufs)))$puts(plr_round,$ifgreater($right($get(plr),2),49,$add($get(plr),100),$get(plr)))$left($get(plr_round),$sub($len($get(plr_round)),2))

EDIT: https://foobar-users.de/index.php?topic=5454.msg28295#msg28295

Re: Dynamic Range plugin

Reply #6
With masstagger:

Masstagger | Add | Format value:

Destination field name: PLR_ALBUM
Formatting pattern:

Code: [Select]
$puts(tpfs,$replace(%replaygain_album_peak_db%,.,, dB,))$puts(lufs,$sub(-2300,$sub($replace(%replaygain_album_gain%,.,, dB,),500)))$puts(plr,$sub($get(tpfs),$get(lufs)))$puts(plr_round,$ifgreater($right($get(plr),2),49,$add($get(plr),100),$get(plr)))$left($get(plr_round),$sub($len($get(plr_round)),2))

where us this code added do you need masstagger instaled

Re: Dynamic Range plugin

Reply #7
Select files, choose Tagging->Manage Scripts from context menu which calls Masstagger, the code goes in Formatting Pattern box, etc. :

Re: Dynamic Range plugin

Reply #8
IMHO completely unnecessary now we have True Peak, LUFS-I and PLR available natively in Foobar.
Users of "Dynamic Range" component want to to know crest factor value, not loudness or peaks.


Re: Dynamic Range plugin

Reply #10
Exactly, LUFS-I and PLR are industry standard measurements for perceived loudness of programme material., DR was only ever used by an obsolete component and an obsolete website.

Re: Dynamic Range plugin

Reply #11
Crest factor is a parameter of a waveform, such as alternating current or sound, showing the ratio of peak values to the effective value.

Re: Dynamic Range plugin

Reply #12
Exactly, LUFS-I and PLR are industry standard measurements for perceived loudness of programme material., DR was only ever used by an obsolete component and an obsolete website.

Incidentally  the higher DR the better the song sounds (always!!!!). LUFS and PLR are just industry measures that say little about real music in the file. Take original audio of any artist with DR12 and than take "remastered" one with DR5. Lower the level of "remaster" by 10dB. What will you get? The file will still be DR5. But LUFS and PLR of that file will grow by 10dB......while nothing has changed in the audio. You only changed the place where 0dB is. So those "standards" are made maybe for those companies but certainly not for the listeners as they do not provide useful information about dynamics in the song. My head will still ache while listening to "remaster" no matter how many LUFS they artificially create in it because it will still be only 5dB in real dynamics.
As for PLR -it is better than LUFS with files that peak below 0dB but it becomes unreliable with files that peak above 0dB....accidentally most files nowadays are waaay above 0.
So DR is still the only good measure of dynamics. No matter what shortcomings it has, what mistakes the coder made (if any)...it is just better than those other two.

Re: Dynamic Range plugin

Reply #13
I know, there is a controversy by experts about this. As non-expert, I refer to empirical data. All of my Media Library DR and PLR data are comparable (PLRs are in all cases slightly higher). IMHO, this is an academic discussion in the ivory tower.


Re: Dynamic Range plugin

Reply #15
So DR is still the only good measure of dynamics.

Great, your mind is made up!

Yes.
Because DR measures dynamic of the track and LUFS/PLR  "are industry standard measurements for perceived loudness of programme material". They say much less about dynamics of the track than DR. They show how loud the track is. They surely help people keep all their tracks at the same level so people can change the volume on the amp less often but....once again....do not provide useful information about dynamics of the tracks. The fact that something is deliberately made-up as some industry standard by that industry does not make it useful to music listeners. As far as I know it helps producers or TV broadcasters or streaming platforms.

Re: Dynamic Range plugin

Reply #16
LUFS and PLR are different units. LUFS is loudness. PLR is pretty the same idea as DR: Crest=Peak−Average, a ratio that describes dynamics. PLR uses LUFS as Average, DR uses RMS. It has been discussed, that PLR might fail at very high True Peak values.



Re: Dynamic Range plugin

Reply #19
Yes of course. I was asking whether it actually does what it is an acronym for.

It does so when peak is digital full scale, but otherwise not?


Re: Dynamic Range plugin

Reply #21
I know, there is a controversy by experts about this. As non-expert, I refer to empirical data. All of my Media Library DR and PLR data are comparable (PLRs are in all cases slightly higher). IMHO, this is an academic discussion in the ivory tower.

I just have checked 5 random albums from my collection and the differences between DR and PLS sometimes are 4dB, which seems quite a lot (ex. 8 vs 12). Sometimes they are 1or 2dB, which seems OK.
Maybe someone could write a command that would display PLR if TruePeak is below 0 and LUFS when TruePeak is above 0.

Re: Dynamic Range plugin

Reply #22
The calculation of PLR seems ok, its from https://wiki.hydrogenaud.io/index.php?title=Foobar2000:Titleformat_Examples#Peak_to_Loudness_Ratio_.28PLR.29
I oppose your proposed manipulation of a calculation method. PLR and DR methods are valid approaches to the problem of Loudness War.

Re: Dynamic Range plugin

Reply #23
The calculation of PLR seems ok, its from https://wiki.hydrogenaud.io/index.php?title=Foobar2000:Titleformat_Examples#Peak_to_Loudness_Ratio_.28PLR.29
I oppose your proposed manipulation of a calculation method. PLR and DR methods are valid approaches to the problem of Loudness War.

I did not propose to manipulate the calculation of any of those 3 measures. But since we most probably will never get 64bit DR plugin and PLR/LUFS are not perfect I just proposed that someone who can write/use syntax delivers a "custom measure" (call it what you will) to be displayed in FB column. I do not intend to make people substitute official measures with it. It could just be helpful for those who want to use it (like me). If I could write such a thing I would do it myself. It would look like: If(TruePreak<=0,PLR,LUFS). If someone does not want to use it he just does not put it in his Columns. That is all. LUFS will still be LUFS, PLR will still be PLR and DR will probably eventualy die out with 32bit version of FB.

Re: Dynamic Range plugin

Reply #24
Mr.Fox, have implemented in your Cue Corrector the DR calculator some months ago.

The generated report looks identical to the foobar plugin.

If he rewrote it for his software, we could ask him if he plans to make a new 64bit plugin for foobar.

The best thing would be for Peter to add the ability to calculate it natively in foobar, so as to have by design the DR in LU and in db.