HydrogenAudio

Lossless Audio Compression => WavPack => Topic started by: buktore on 2007-05-22 11:54:53

Title: What is a proper way to replaygain my wavpack lossy+correction?
Post by: buktore on 2007-05-22 11:54:53
I encoded & replaygain anything in foobar2000. Normally I would use either true lossless or lossy(OGG) depent on what type of music and how much i like & future need of them.

But my harddisk space a become more and more lower. So I start to see the beauty in wavpack lossy+correction files. and burn my correction files to DVD while kepping lossy to listen. and still have lossless copy if i need them.

But i found that when i replaygain my hybrid wavpack files. the result is a bit difference between with and without correction file.

The quesion is. what is the corect way to replay gain them(replaygain them before or after moving away correction files) if...

1. I listen the whole CD in lossy files.

2. There is some track in lossless(lossy+correction) and the rest is lossy.

I know the differents is very small. but i still want to know anyway. 

English is not my language. So I'm sorry if there is some grammer mistake or anything. And I hope you get my point.

Thanks.
Title: What is a proper way to replaygain my wavpack lossy+correction?
Post by: Alex B on 2007-05-22 13:40:42
If you mainly listen to the lossy versions perhaps you should hide the correction files before running the replay gain analyzer.

As you said the difference is marginal, but sometimes the lossy versions have a bit higher peak volume levels. In theory a playback gain setting that prevents the peaks from clipping will work better if the peak values are exactly correct. I don't know if the difference can be audible.


Edit: typo
Title: What is a proper way to replaygain my wavpack lossy+correction?
Post by: Fandango on 2007-05-22 15:30:28
That's an interesting problem, actually there should be two sets of replaygain values, one for lossy and one for lossless decoding.

Either it should be something like adding "_wvc" to the RG tag field names for the lossless values or even tagging the wvc files themselves.
Title: What is a proper way to replaygain my wavpack lossy+correction?
Post by: DARcode on 2007-06-10 21:20:37
That's an interesting problem, actually there should be two sets of replaygain values, one for lossy and one for lossless decoding.

Either it should be something like adding "_wvc" to the RG tag field names for the lossless values or even tagging the wvc files themselves.
Tried ABXing WVGAIN'd files both w/ and w/o the correction files and couldn't spot any difference, anyway this is an interesting suggestion, can it be done David? I suppose such a change wouldn't be backwards compatible with older decoders.
Title: What is a proper way to replaygain my wavpack lossy+correction?
Post by: shadowking on 2007-06-11 03:33:17
This isn't a problem if you both .wv + .wvc are always used. Also no issues if you only use lossy .wv. Only when you RG wv+wvc then move the wvc the values are less 'accurate'. I don't believe this can be heard or needs adjustment. Those peak values are used for transcoding with RG and most users transcode from lossless. Clipping is no issue with this encoder so again differences are negligeable.

Personally , I RG the lossless version then move the .wvc for DVD archiving and I never had a problem with this.
Title: What is a proper way to replaygain my wavpack lossy+correction?
Post by: bryant on 2007-06-11 07:18:50
I encoded one of my standard file sets (143 short samples) in fast mode at the minimum lossy bitrate and did a ReplayGain analysis on both the lossless and lossy versions. This should be the worst case for differences, and I saw a maximum difference of about 0.06 dB in the track gain value, which is completely insignificant (and about half the time the two values were identical).

The peak values varied more, with the lossy version generally higher than the lossless. In one case the track was heavily clipped and distorted, but the lossless peak value was only 0.88 of full-scale. In the lossy version the peak was 1.00, so that's a pretty big difference. However, at 320 kbps and normal mode the peak was reduced to only 0.91, and that's much more typical.

When playback level is set by the peak value (instead of just the regular gain value) then there could be a barely audible difference between the lossy and lossless versions, although I think this is still arbitrary and insignificant. However, having a ReplayGain peak value that is greater than the actual peak value could conceivably cause a problem with a program that decided it didn't have to check for clipping based on that value.

One solution to this would be to have wvgain scan both the lossless and lossy versions for the peak value only, and simply store the higher of the two versions. This would be trivial to implement by having the scanner simply use two contexts, although I think it would have a significant cost in speed so I would want to make it optional.
Title: What is a proper way to replaygain my wavpack lossy+correction?
Post by: 2Bdecided on 2007-06-11 10:44:55
I agree with bryant. The difference in estimated perceived loudness between lossless and lossy is insignificant. (That's still the case with mp3 IMO, but other people obsess about it more than me!). So ReplayGain_Track_Gain and ReplayGain_Album_Gain are just fine.

I would assume (though I bet there's a sample somewhere to prove me wrong) that the lossy peak is normally higher than the lossless peak - especially for loud / heavily compressed tracks.

If you are using ReplayGain to equalise the loudness of your music, and are using a sensible target volume (e.g. the default 89dB) then the stored peaks aren't relevant very often - especially for loud / highly compressed tracks - because the negative ReplayGain value will have reduced the amplitude of the track well away from clipping already.

If you use a higher target volume, or push the pre-amp up (same effect), or have dynamic music which has positive ReplayGain values but still has digital full scale samples, then the peak values are used to prevent clipping.

So, where it matters, I'd err on the side of caution, and store the larger peak. However, unless someone shows otherwise, I bet the larger peak is very often / almost always in the lossy version, so you could just scan that.

The downside to this is that people playing the lossless version will (if they use a higher target volume, or push the pre-amp up (same effect), or have dynamic music which has positive ReplayGain values) sometimes reduce the amplitude more than necessary. If you're playing the lossless versions, maybe this will be audible sometimes. If you're transcoding, it's probably irrelevant because you'll have to account for different peaks on the mp3 or ogg or whatever anyway, so will change the gain yet again after transcoding.

Hope this helps. It probably doesn't!

Cheers,
David.
Title: What is a proper way to replaygain my wavpack lossy+correction?
Post by: GeSomeone on 2007-06-11 13:15:16
Hope this helps. It probably doesn't!
David.

Your reply together with Bryant's leads to the conclusion that it would be best to store just the the values for the lossy part. The replaygain will not significantly differ and for the peak value you're on the safe side.
Also the higher the chosen lossy quality is, the smaller the difference becomes.
Title: What is a proper way to replaygain my wavpack lossy+correction?
Post by: buktore on 2007-06-11 16:18:28
And i thought no one gonna came up with answer.. 

Thanks for the nice info guys.