Welcome Guest ( Log In | Register )

Flaw in ReplayGain spec
post May 12 2002, 11:04
Post #1

Mad Scientist

Group: Developer (Donating)
Posts: 4901
Joined: 24-September 01
Member No.: 13

It occured to me today that there is a problem with the current ReplayGain spec, or rather, my proposal for doing it in Vorbis.

The issue is combining replaygain and clipping prevention.

If applying the replaygain would cause the track to clip, clipping prevention kicks in, and reduces the level. This will make the output loudness different from the ideal, 'equal' level.

When running in radio/track mode, there is no way around this, since you don't know in advance what you are going to encounter. The best you can do is set the default level low enough so you can hope it'll never happen. I believe this was the idea (among possibly other things) behind setting the default level to K-20 in the new MPC decoders? (Frank? )

If the implementation in the current Vorbis players is correct, a similar effect can be reached by setting the preamp in the plugin to -6dB or so.

In album gain, you could avoid this from happening for the entire album you're listening to, since you already ReplayGain-processed them in group and thus know what is coming up, however, my current proposal poses problems for doing this: You would need to read in all files that belong to the album, read in the peak values, and remember the largest, and use that as the peak value for the individual tracks.

This is what I originally envisioned, however, looking back, this is both ugly, cumbersome and it may not even be possible in some player/plugin architectures.

I think the correct solution would probably be to store an album-peak value.

It would be trivial to implement in the ReplayGain tools, and require only minimal changes in the players without all the uglyness the current method would require (which isn't done correctly by anyone anyway).

The disadvantage is that it requires another tag. However, since the Vorbis people seem to have gotten a bit more enthousiastic about ReplayGain lately, perhaps that isn't so much of a problem.

I believe it's valuable to do this, as it may post a real problem in practise. Moreover, the proposal as it is now is broken by design in this regard, and I'd prefer to fix it while it's still fixable.

Also, the ReplayGain proposal on David's site doesn't mention anything about this? Is there another way to address this problem?

There's two other issues with the current spec that I'd like to discuss about while it's still possible.

1) Change RG_* into REPLAYGAIN_*
This was proposed by Segher, with the idea that someone looking at the tags and that doesn't know what they are can at least google to find out, whereas you'd be left clueless with the current 'RG'. I think this idea is valuable and good.

2) Source/version tag
I didn't include one originally because I saw no way to keep it consistent if you allow the user to edit the tags (you can't require them to know the spec...), and because I didn't see the RG calculations being improved for quite a while. Unfortunately, Frank Klemm has already proven me wrong on the latter. I don't see a way to make such a tag actually _work_ though.

I'd like feedback from everyone about all of this. Is it worthwhile to change the current proposal and fix some of the above issues?

Go to the top of the page
+Quote Post
Start new topic
post May 15 2002, 15:33
Post #2

Mad Scientist

Group: Developer (Donating)
Posts: 4901
Joined: 24-September 01
Member No.: 13

There has been a huge discussion about this on #vorbis, and it wasn't nice.

Basically, the vorbis people seem to want to throw out this system altogether.

Monty basically thinks everything but the radio gain value should be thrown out. His arguments were that you can 'clip' this value to take the peak into account, and that the audiophile settings are redundant because they can be inferred from combining the tags of the individual tracks.

If you look at my post that started the thread, you'll see the reason I proposed a change was exactly that that is impossible in most players, and adds a lot of unnecessary complexity in those where it could be done.

Losing the radio peaks means losing ReplayGain functionality when you manually reduce preamp (i.e. increase headroom). Losing the album peaks causes problems with _all_ of the above. Moreover, it seems that this tag is wanted for purposes outside of ReplayGain.

When Monty was done, the Xiph.org CEO went as far as to say that Vorbis should drop ReplayGain support completely, as 'it's really a player issue', going on to explain it can be done by letting the players do all calculations and storing the results in a database etc etc...

Needless to say, I'm not happy with this. The entire goal of my proposal was to make ReplayGain a) work b) easy to support in players. The above nukes both of these goals, and without them, I don't see ReplayGain for Vorbis gaining a lot of support, if any.

I don't really know what to do with my proposal either. It doesn't seem a good idea to continue it if the Vorbis people are so heavily opposed to it, but on the other hand, a lot of people, (including me) want this feature, and it just plain _works_ right now. Updating it to the changes I proposed here would be trivial in both the players and tools.

The players only need to change their reading of RG_* into REPLAYGAIN_*, AUDIOPHILE/RADIO into ALBUM/TRACK and use the REPLAYGAIN_ALBUM_PEAK tag when it's present and we're in album gain mode instead of the REPLAYGAIN_TRACK_PEAK one.

The tools need to change RG_* into REPLAYGAIN_, AUDIOPHILE/RADIO into ALBUM/TRACK, write out the new tag, and include an autoconvert option which converts files from the old format.

So, if anyone has an interest in keeping using the current Vorbis ReplayGain, the current suggested format looks like:


But beware! Because this needs the obviously unacceptable amount of four tags, the Vorbis people will come and haunt you at night for such blashphemy.

Peter, Magnus and zinx, I'll leave it up to you whether you want to update your stuff to the new proposal, or wait for the Vorbis people to come up with a working proposal of their own.

Personally, I've had enough of this for the next two months. I have to fight with David over each tag I leave out, and I have to fight with the Vorbis people over each tag that gets in. This is no situation to be in and I see no reason to keep wasting my time with it.

Go to the top of the page
+Quote Post

Posts in this topic
- Garf   Flaw in ReplayGain spec   May 12 2002, 11:04
- - SometimesWarrior   I think an album (peak) gain value would be good t...   May 12 2002, 13:42
- - Garf   QUOTE Originally posted by SometimesWarrior I thi...   May 12 2002, 13:47
- - Case   Seems like Garf has valid points. I don't believe ...   May 12 2002, 15:58
- - DSPguru   QUOTE Originally posted by Garf It already is in ...   May 12 2002, 17:12
- - Garf   QUOTE Originally posted by DSPguru shouldn't thi...   May 12 2002, 18:12
- - DSPguru   unfortunate name ? come-on.. hehe.. btw, the fix...   May 12 2002, 18:31
- - Garf   QUOTE Originally posted by DSPguru as for "human...   May 12 2002, 23:22
- - Garf   Another thing would be renaming AUDIOPHILE to DISK...   May 13 2002, 11:41
- - 2Bdecided   You know my thoughts on most of this, but my opini...   May 13 2002, 14:31
- - john33   Interesting how things run full circle!! I propo...   May 13 2002, 14:31
- - Garf   QUOTE Originally posted by 2Bdecided 2) Source/v...   May 13 2002, 15:24
- - Garf   QUOTE Originally posted by john33 Interesting how...   May 13 2002, 15:27
- - Garf   On the pratical side, I'm considering REPLAYGAIN...   May 13 2002, 16:04
- - Frank Klemm   QUOTE Originally posted by Garf On the pratical s...   May 13 2002, 17:36
- - Garf   QUOTE Originally posted by Frank Klemm 4 == ssc...   May 13 2002, 17:59
- - john33   KISS rules, I think! john33   May 13 2002, 22:12
- - Garf   There has been a huge discussion about this on #vo...   May 15 2002, 15:33
- - john33   This is really rather sad! I thought that part o...   May 15 2002, 16:33
- - sam   I think your idea's Garf are great - clear, simple...   May 15 2002, 16:34
- - Lear   Only incuding radio gain does indeed seem to be a ...   May 15 2002, 18:32
- - Case   I have even better idea. Let's store all the tags ...   May 15 2002, 19:34
- - HotshotGG   QUOTE it seems that this tag is wanted for purpose...   May 15 2002, 20:56
- - Garf   QUOTE Originally posted by HotshotGG What exact...   May 15 2002, 21:57
- - Garf   QUOTE Originally posted by Lear You might then j...   May 15 2002, 22:04
- - john33   The ReplayGain values are the 'property' of a part...   May 15 2002, 22:13
- - JohnV   Also, even if there's going to be replaygain calcu...   May 15 2002, 22:17
- - gnoshi   Couple of thoughts.. I use replaygain; I use ogg;...   May 16 2002, 01:14
- - Garf   QUOTE Originally posted by gnoshi On tags in gene...   May 16 2002, 08:06
- - Lear   QUOTE Originally posted by Garf So, if anyone has...   May 20 2002, 09:52
- - 2Bdecided   Is almost the same discussion happening in two thr...   May 20 2002, 11:19
- - Lear   QUOTE Originally posted by 2Bdecided Is almost th...   May 20 2002, 13:39
- - 2Bdecided   All other things being equal, assuming a complete ...   May 20 2002, 17:50
- - Lear   I'll try to keep this short, since we seem to agre...   May 20 2002, 18:16
- - Garf   QUOTE Originally posted by Lear OK, I've mostly ...   May 20 2002, 18:45
- - sam   QUOTE Originally posted by Lear But there's anoth...   May 20 2002, 19:27
- - Lear   QUOTE Originally posted by Garf A little note: V...   May 20 2002, 19:36
- - sam   QUOTE Originally posted by Lear Considering the a...   May 20 2002, 19:42
- - 2Bdecided   sam, that's just the point. the track isn't 89dB ...   May 21 2002, 10:32
- - matthijsln   QUOTE Originally posted by 2Bdecided It's the cal...   May 21 2002, 10:54
- - Case   QUOTE Originally posted by matthijsln I'm going t...   May 21 2002, 11:06
- - 2Bdecided   Case, I think you missunderstood his question. or...   May 21 2002, 12:33
- - Case   QUOTE Originally posted by 2Bdecided I think you ...   May 21 2002, 13:02
- - sam   QUOTE Originally posted by 2Bdecided that's just ...   May 21 2002, 13:20
- - 2Bdecided   OT: That's really bizarre - we both live in Essex,...   May 21 2002, 14:02
- - sam   QUOTE Originally posted by 2Bdecided OT: That's r...   May 21 2002, 14:22
- - Lear   QUOTE Originally posted by 2Bdecided sam, that's...   May 21 2002, 14:30
- - Case   QUOTE Originally posted by Lear Really, my sugges...   May 21 2002, 14:41
- - 2Bdecided   I appologise if I've sounded harsh to anyone in th...   May 21 2002, 16:17
- - Lear   And Case saw a quite good reason to keep it the wa...   May 21 2002, 16:25
- - 2Bdecided   Great! back to the issue in hand... what are the ...   May 21 2002, 16:53
- - Garf   QUOTE Originally posted by sam Also, storing a +...   May 21 2002, 18:25
- - Garf   QUOTE Originally posted by 2Bdecided Great! back...   May 21 2002, 18:47
- - Emmett_v2   Quoth Garf: "Beats me. I'm no longer willing to d...   May 21 2002, 19:48
- - Garf   First, thanks for the speedy reply! QUOTE Origina...   May 21 2002, 21:03
- - Emmett_v2   Quoth Garf: "I don't feel it justified to call th...   May 21 2002, 22:19
- - john33   I have no wish to get heavily involved in this dis...   May 21 2002, 23:11
- - HotshotGG   QUOTE You don't have to tell us that - most of the...   May 22 2002, 00:25
- - Lear   QUOTE Originally posted by Garf Lear, if updating...   May 22 2002, 15:09
- - Garf   QUOTE Originally posted by Emmettfish Quoth Garf:...   May 22 2002, 18:19
- - Garf   QUOTE Originally posted by john33 I have no wish ...   May 22 2002, 18:24
- - john33   To Lear - Thanks. And, to Garf - You're welcome!   May 22 2002, 18:45
- - lijil   Although my technical audio knowlege and programmi...   Jun 22 2002, 22:17
- - Garf   QUOTE Originally posted by lijil It is still hum...   Jun 23 2002, 08:36
- - mijj   This discussion on VorbisGain suggests there may b...   Jul 22 2002, 02:16
- - Lear   QUOTE Originally posted by mijj This discussion o...   Jul 22 2002, 11:22
- - Jon Ingram   QUOTE Sort of. There has been discussions about ad...   Jul 22 2002, 12:42
- - mijj   < ... mijj contributes with a confidence and co...   Jul 22 2002, 17:57
- - rjamorim   QUOTE Originally posted by mijj < ... mijj con...   Jul 22 2002, 20:01
- - smok3   a question: when turning on RG in mpc winamp dec...   Jul 23 2002, 03:08
- - mijj   ... and speaking of tags ... ... how come whoever...   Jul 26 2002, 16:25
- - Case   QUOTE Originally posted by smok3 when turning on ...   Jul 26 2002, 19:21
- - greenirft   I don't quite understand what the deal with th...   Aug 27 2002, 16:27
- - SometimesWarrior   I love how this thread keeps getting resurrected f...   Aug 27 2002, 20:57

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:


RSS Lo-Fi Version Time is now: 29th November 2015 - 21:28