R128GAIN: An EBU R128 compliant loudness scanner |
R128GAIN: An EBU R128 compliant loudness scanner |
Jan 5 2011, 19:38
Post
#1
|
|
![]() Group: Members Posts: 396 Joined: 13-June 10 Member No.: 81467 |
I've just uploaded on sourceforge a first version of r128gain, an EBU R128 (http://tech.ebu.ch/loudness) compliant loudness scanner:
http://sourceforge.net/projects/r128gain/files/
|
|
|
|
![]() |
Jan 12 2011, 12:58
Post
#2
|
|
|
Group: Members Posts: 698 Joined: 6-March 10 Member No.: 78779 |
I think you both have a valid point.
I also think that it is not very probable, that just because there is a tool now and some forum people decide to agree on a R128 tagging format, that there will be only a fraction of RG's device and player support anytime soon. It was different, when David started, because it filled a gap at its time, for which there were no solutions. Until RG evolves into something allowing versioning, it can take ages. It might even never happen, since ID3 is such a mess. (The world of tagging could be such a better place without mp3.) => For an user with complete control over his own music library, it could be an attractive hack to rescan his library and write R128 estimated, but RG compatible, tags to his music collection. He would then have the benefits of both worlds, probably better loudness estimation due to gating, and instant playback support for most available hardware. RG enabled players don't really care what RG means or how the values were calculated. They just apply gain and prevent clipping. Jdoering's approach to just use ref_pink.wav to get a relative offset between both approaches is very reasonable. PS An additional tag could indicate, that the values are R128 based. A user could then choose to rescan all tracks, which do not have that, yet. This post has been edited by googlebot: Jan 12 2011, 13:17 |
|
|
|
Jan 12 2011, 13:14
Post
#3
|
|
![]() Group: Members Posts: 396 Joined: 13-June 10 Member No.: 81467 |
=> For an user with complete control over his own music library, it could be an attractive hack to rescan his library and write R128 estimated, but RG compatible, tags to his music collection. He would then have the benefit of both worlds, probably better loudness estimation due to gating, and instant playback support for most available hardware. RG enabled players don't really care what RG means or how the values were calculated. They just apply gain and prevent clipping. That's exactly what I've tried to say. With R128GAIN you can do this just out of the box. Jdoering's approach to just use ref_pink.wav to get a relative offset between both approaches is very reasonable. I agree. |
|
|
|
Jan 13 2011, 11:23
Post
#4
|
|
![]() ReplayGain developer Group: Developer Posts: 4589 Joined: 5-November 01 From: Yorkshire, UK Member No.: 409 |
Jdoering's approach to just use ref_pink.wav to get a relative offset between both approaches is very reasonable. I agree.You can argue for or against the inclusion of an additional or different correction factor. It could be based on calculations from a large sample set, or from some theoretical presumption that one or other calculation is predictably and quantifiabley "wrong" with pink noise vs almost everything else. The latter might be justifiable, but the former wrecks the idea of having a real reference level. If you're comparing two loudness measurements, neither of which have a reference level, then you're stuck with comparing results from a large sample set. But if one or both have properly defined reference levels, then that should be unnecessary - and will only reveal inaccuracies in one or other algorithm with the chosen sample set. Presumably you want to remove such inaccuracies. Hard coding them into the conversion factor doesn't seem right. But like I said - you could argue it either way. I think unless there's strong evidence to the contrary, the simple approach, "just use ref_pink", is the one to stick with. I think (I've always thought!) that a version tag might be useful. I think existing tags must keep their existing meanings. Using a new calculation method with the same reference level is absolutely fine. I think inter-sample peaks might be better in a separate tag, not in the existing peak tags. Some processing (e.g. typically that within software players) cares about the values of the actual sample data, and doesn't care at all about inter-sample overs. The player may do things differently if the real samples go above 0dB FS (e.g. introduce soft or hard limiting, or soft clipping) which may decrease quality if applied when it's only inter-sample values that go above 0dB FS. (In practice it's rare for ReplayGained audio to have significant inter-sample overs but no on-sample overs - "loud/squashed" audio like that tends to get turned down by ReplayGain to a level where there's no chance of any values above 0dB FS either on or between samples) Cheers, David. |
|
|
|
Jan 13 2011, 15:41
Post
#5
|
|
|
Group: Members Posts: 581 Joined: 17-August 09 Member No.: 72373 |
You can argue for or against the inclusion of an additional or different correction factor. It could be based on calculations from a large sample set, or from some theoretical presumption that one or other calculation is predictably and quantifiabley "wrong" with pink noise vs almost everything else. The latter might be justifiable, but the former wrecks the idea of having a real reference level. The statistical processing in RG and the gate in R128 introduce non-linear behaviors that are difficult or impossible to compare mathematically or by using a single reference. This motivates the empirical/statistical approach. Here's another (longer) study that takes a statistical approach. Loudness measurement implementation variations are considered including one with gating. This post has been edited by Notat: Jan 13 2011, 15:42 |
|
|
|
pbelkner R128GAIN: An EBU R128 compliant loudness scanner Jan 5 2011, 19:38
googlebot Didn't try the tool, yet, but had a look at th... Jan 5 2011, 20:13
pbelkner QUOTE (googlebot @ Jan 5 2011, 21:13) Did... Jan 5 2011, 21:32
C.R.Helmrich Wow, thank you so much for this tool! I was al... Jan 5 2011, 23:23
pbelkner QUOTE (C.R.Helmrich @ Jan 6 2011, 00:23) ... Jan 6 2011, 00:46
C.R.Helmrich QUOTE (pbelkner @ Jan 6 2011, 01:46) It i... Jan 6 2011, 15:23
pbelkner QUOTE (C.R.Helmrich @ Jan 6 2011, 16:23) ... Jan 6 2011, 16:03
googlebot QUOTE (pbelkner @ Jan 6 2011, 16:03) What... Jan 7 2011, 21:34
pbelkner QUOTE (googlebot @ Jan 7 2011, 22:34) I a... Jan 7 2011, 22:17
googlebot QUOTE (pbelkner @ Jan 7 2011, 22:17) It s... Jan 7 2011, 22:35
pbelkner QUOTE (googlebot @ Jan 7 2011, 23:35) PS ... Jan 7 2011, 23:21
C.R.Helmrich QUOTE (pbelkner @ Jan 8 2011, 00:21) Many... Jan 8 2011, 14:29
pbelkner QUOTE (C.R.Helmrich @ Jan 8 2011, 15:29) ... Jan 10 2011, 17:38
pbelkner QUOTE (pbelkner @ Jan 10 2011, 18:38) The... Jan 10 2011, 18:01
C.R.Helmrich Exactly, and if you pull out the "/n" in... Jan 10 2011, 18:20
Fandango On a completely other note... What about patents? ... Jan 6 2011, 01:53
mudlord QUOTE (Fandango @ Jan 5 2011, 18:53) On a... Jan 6 2011, 13:22
cpchan QUOTE (mudlord @ Jan 6 2011, 08:22) The o... Jan 6 2011, 13:44
mudlord QUOTE (cpchan @ Jan 6 2011, 07:44) QUOTE ... Jan 6 2011, 13:46
Notat Congratulations on this!
I know that BS.1770 ... Jan 6 2011, 02:37
mudlord What is the license for the tool? Jan 6 2011, 03:42
A_Man_Eating_Duck i can't for the life of me get this app to jus... Jan 6 2011, 08:14
pbelkner QUOTE (A_Man_Eating_Duck @ Jan 6 2011, 09... Jan 6 2011, 09:34
pbelkner QUOTE (Fandango @ Jan 6 2011, 02:53) On a... Jan 6 2011, 09:19
mudlord QUOTE (pbelkner @ Jan 6 2011, 02:19) It... Jan 6 2011, 13:20
pbelkner QUOTE (mudlord @ Jan 6 2011, 14:20) QUOTE... Jan 6 2011, 15:26
Soap QUOTE (pbelkner @ Jan 6 2011, 09:26) Both... Jan 6 2011, 15:53
cpchan QUOTE (Soap @ Jan 6 2011, 10:53) ffmepg i... Jan 6 2011, 16:09
pbelkner QUOTE (Soap @ Jan 6 2011, 16:53) QUOTE (p... Jan 6 2011, 16:13
Soap QUOTE (pbelkner @ Jan 6 2011, 10:13) QUOT... Jan 6 2011, 16:21
pbelkner QUOTE (Soap @ Jan 6 2011, 17:21) QUOTE (p... Jan 6 2011, 16:49
saratoga QUOTE (pbelkner @ Jan 6 2011, 10:49) QUOT... Jan 6 2011, 18:37
cpchan QUOTE (saratoga @ Jan 6 2011, 13:37) That... Jan 7 2011, 01:39
Zao Note that "use" in mudlord's post is... Jan 6 2011, 13:29
cpchan QUOTE (Zao @ Jan 6 2011, 08:29) If you ev... Jan 6 2011, 13:48
Zao QUOTE (cpchan @ Jan 6 2011, 13:48) QUOTE ... Jan 6 2011, 13:52
cpchan QUOTE (Zao @ Jan 6 2011, 08:52) If more k... Jan 6 2011, 13:59
Zao Even if the end artifact is a program, this preven... Jan 6 2011, 13:47
cpchan QUOTE (Zao @ Jan 6 2011, 08:47) Even if t... Jan 6 2011, 13:52
Zao QUOTE (cpchan @ Jan 6 2011, 13:52) What i... Jan 6 2011, 13:54
Zao If a developer uses a library with one of the usua... Jan 6 2011, 14:02
cpchan QUOTE (Zao @ Jan 6 2011, 09:02) If a deve... Jan 6 2011, 14:14
lvqcl Please remember that QUOTE (pbelkner @ Jan 6 ... Jan 6 2011, 14:10
Zao You cannot always dynamically link to a library, a... Jan 6 2011, 14:16
cpchan QUOTE (Zao @ Jan 6 2011, 09:16) You canno... Jan 6 2011, 14:33
mudlord QUOTE (cpchan @ Jan 6 2011, 08:33) QUOTE ... Jan 7 2011, 07:19
googlebot QUOTE (mudlord @ Jan 7 2011, 07:19)To avo... Jan 7 2011, 10:46
2Bdecided QUOTE (googlebot @ Jan 7 2011, 09:46) No ... Jan 7 2011, 17:45
GHammer Seven of 38 posts on software licensing.
Geesh... Jan 7 2011, 04:39
mudlord QUOTE (GHammer @ Jan 6 2011, 21:39) Seven... Jan 7 2011, 07:14
romor Bad talk. You are free to see his posts if you wan... Jan 7 2011, 15:57
Soap forget it. Jan 7 2011, 16:43
staale Hi,
Just wanted to add that we've released ou... Jan 7 2011, 17:08
googlebot Forget this, too. Else the joke doesn't work o... Jan 7 2011, 17:02
jangk Hello,
back to audio issues again.
Thank you pbel... Jan 7 2011, 17:27
pbelkner QUOTE (jangk @ Jan 7 2011, 18:27) Am I mi... Jan 7 2011, 18:13
jangk QUOTE (pbelkner @ Jan 7 2011, 18:13) QUOT... Jan 7 2011, 19:13
pbelkner QUOTE (jangk @ Jan 7 2011, 20:13) Anyhow,... Jan 7 2011, 19:56
mudlord QUOTE How about you program your own lib or shut u... Jan 7 2011, 18:57
jdoering Please pardon the noob here; hopefully I'm kee... Jan 8 2011, 00:28
googlebot Completely agree! One doesn't really have ... Jan 8 2011, 01:51
pbelkner QUOTE (jdoering @ Jan 8 2011, 01:28) But ... Jan 8 2011, 09:32
Notat I have it on good authority that the calculation c... Jan 8 2011, 18:42
googlebot A fully standard compliant single-pass outline is ... Jan 8 2011, 19:40
pbelkner v0.3 released
I've just uploaded the new vers... Jan 9 2011, 18:47
googlebot QUOTE (pbelkner @ Jan 9 2011, 18:47) CODE... Jan 12 2011, 20:26
pbelkner QUOTE (googlebot @ Jan 12 2011, 21:26) QU... Jan 13 2011, 10:26
googlebot Works perfectly, great job! Even for multichan... Jan 10 2011, 09:58
googlebot Just out of curiosity, where does that 0.4 come fr... Jan 10 2011, 18:35
jdoering QUOTE (googlebot @ Jan 10 2011, 09:35) Ju... Jan 10 2011, 19:27
googlebot Duh. My bad! Jan 10 2011, 21:40
Fandango I have a proposal.
New standard tag fields:
EBU_... Jan 11 2011, 23:14
Notat QUOTE (Fandango @ Jan 11 2011, 15:14) Wit... Jan 12 2011, 04:11
Fandango QUOTE (Notat @ Jan 12 2011, 04:11) QUOTE ... Jan 13 2011, 16:21
pbelkner QUOTE (Fandango @ Jan 13 2011, 17:21) But... Jan 13 2011, 17:01

2Bdecided QUOTE (pbelkner @ Jan 13 2011, 16:01) EBU... Jan 13 2011, 17:24
2Bdecided QUOTE (Fandango @ Jan 13 2011, 15:21) Mos... Jan 13 2011, 17:20
Fandango PS: I'd say that using GAIN in your prefix is ... Jan 12 2011, 02:02
jdoering I had been hoping that the written tags were being... Jan 12 2011, 06:40
pbelkner QUOTE (jdoering @ Jan 12 2011, 07:40) I h... Jan 12 2011, 10:21
jdoering QUOTE (pbelkner @ Jan 12 2011, 01:21) QUO... Jan 12 2011, 21:24
pbelkner QUOTE (jdoering @ Jan 12 2011, 22:24) I t... Jan 13 2011, 11:01
jdoering Just compared r128gain output versus ReplayGain fo... Jan 12 2011, 10:18

C.R.Helmrich QUOTE (pbelkner @ Jan 12 2011, 14:14) QUO... Jan 12 2011, 18:27


Notat QUOTE (C.R.Helmrich @ Jan 12 2011, 10:27)... Jan 13 2011, 02:57


jdoering QUOTE (Notat @ Jan 12 2011, 17:57) QUOTE ... Jan 13 2011, 06:21


C.R.Helmrich QUOTE (jdoering @ Jan 13 2011, 07:21) I... Jan 13 2011, 10:25


pbelkner QUOTE (C.R.Helmrich @ Jan 13 2011, 11:25)... Jan 13 2011, 10:37
pbelkner QUOTE (googlebot @ Jan 12 2011, 13:58) PS... Jan 12 2011, 17:07
googlebot How large are the expected differences? Is there a... Jan 12 2011, 18:46
C.R.Helmrich True. I guess for the averaging we should leave ou... Jan 12 2011, 19:00
Raiden What is so special about pink noise? How does pink... Jan 13 2011, 11:44
googlebot Pink noise has equal energy over all octaves. It... Jan 13 2011, 12:02
jangk Thank you Notat for the link to AES "Loudness... Jan 13 2011, 13:57
benski I'm with David.
I think we should verify the ... Jan 13 2011, 17:27
Fandango So if the old tags are used, how do I know whether... Jan 13 2011, 18:22![]() ![]() |
|
Lo-Fi Version | Time is now: 25th May 2013 - 22:35 |