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: GT3b2 with HF Reduction (Read 10325 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

GT3b2 with HF Reduction

I've included the HF boost reduction technique I used in QKTune beta 3.2 into the current GT3b2, as a proof of concept.

You can download the binary here:
http://www.hydrogenaudio.org/forums/index....ndpost&p=188227

The nice pre-echo handling of the original GT3b2 may be slightly worse.  Start at -q 5 and compare this with the original GT3b1/GT3b2 and see whether the HF boost is there or not. 

GT3b2 with HF Reduction

Reply #1
I can't test it for the moment, but could you tell me what kind of HF boost is expected to be corrected. Is it the HF boost/equalisation problem, or the HF boost/noisy-coarse classical rendering (hear with the paganini.wav sample for exemple)?

This last problem seems to be linked to coupling (i.e. disapear after -q 5,99), whereas the last one might be audible at higher bitrate too.

Thanks

GT3b2 with HF Reduction

Reply #2
Quote
I can't test it for the moment, but could you tell me what kind of HF boost is expected to be corrected. Is it the HF boost/equalisation problem, or the HF boost/noisy-coarse classical rendering (hear with the paganini.wav sample for exemple)?

It is mostly the first problem I think....hmm...excessive 'brilliance' of transients?  The samples that I and a few others have tested are ones which have hi-hats and cymbals.

I know the noisy-coarse problem you speak about and I think I can (very faintly) hear it on the paganini.wav sample you provided in 1.0.1.  I didn't seem to detect any difference with the HF reductions though with ears of mine, that doesn't really say much.

Quote
This last problem seems to be linked to coupling (i.e. disapear after -q 5,99), whereas the last one might be audible at higher bitrate too.


hmm  which one is linked to coupling? 

My HF reduction technique address excessive energy in high frequency caused by (what I think is) lossy (point) stereo.

GT3b2 with HF Reduction

Reply #3
Quote from: QuantumKnot,Feb 27 2004, 03:40 AM
Quote from: guruboolez,Feb 27 2004, 12:31 PM


hmm  which one is linked to coupling? 

My HF reduction technique address excessive energy in high frequency caused by (what I think is) lossy (point) stereo.

The second one.

When you said 'start at -q5', does it mean that we have to follow the test with -q6, -q7..., or with -q4, -q3...? (sorry if it sounds stupid, but I didn't follow HA during a whole week, and I probably miss some important informations).

GT3b2 with HF Reduction

Reply #4
Quote
When you said 'start at -q5', does it mean that we have to follow the test with -q6, -q7..., or with -q4, -q3...? (sorry if it sounds stupid, but I didn't follow HA during a whole week, and I probably miss some important informations).

I have been following HA and that question came up in my mind as well.  To makes it a proper merge between QKTb3.2 and GT3b1(2) QK will have to try to apply his tunings to the higher settings (please do ). 

@QuantumKnot:  Do you feel your ears are up to it, though?
gentoo ~amd64 + layman | ncmpcpp/mpd | wavpack + vorbis + lame

GT3b2 with HF Reduction

Reply #5
Quote
The second one.

When you said 'start at -q5', does it mean that we have to follow the test with -q6, -q7..., or with -q4, -q3...? (sorry if it sounds stupid, but I didn't follow HA during a whole week, and I probably miss some important informations).

That's ok. 

Theoretically, these changes should reduce HF boost in all quality ranges, even though when I tuned it in QKTune beta 3.2, I used q 4.  This is because the changes are not quality-dependent. 

I suggested people start with q 5 because that is where the benefits of Garf's tunings start to occur so we have (hopefully) a combination of good pre-echo handling and low HF boost.  I want to see if this technique can improve other tuned encoders as well, not just my own.

But yeah, my feeling is that it will work on all quality levels that use lossy stereo coupling (q < 6).  So feel free to try it on q 1,2,3,4, which is the 1.0.1 tuning range (ie. poor pre-echo handling).

GT3b2 with HF Reduction

Reply #6
Quote
Quote
When you said 'start at -q5', does it mean that we have to follow the test with -q6, -q7..., or with -q4, -q3...? (sorry if it sounds stupid, but I didn't follow HA during a whole week, and I probably miss some important informations).

I have been following HA and that question came up in my mind as well.  To makes it a proper merge between QKTb3.2 and GT3b1(2) QK will have to try to apply his tunings to the higher settings (please do ). 

@QuantumKnot:  Do you feel your ears are up to it, though?

This is only a partial merge of QKTb3.2 and GT3b1/2.  QKTb3.2 includes two tunings:  pre-echo tuning (q 2 to 5) and HF boost reduction (all q).  I've only included the second of these in GT3b2 since I want to see how independent it is of my encoders

It is not a big task to merge everything of QKTb3.2 with GT3b2 so we have good pre-echo handling from q 2 to 10 but I just want to be sure I've got my own tunings right first.

To give you an idea on how easy it is to merge my HF reduction tuning to GT3b2 (or any other Vorbis encoder), it involves the replacing of the psy.c source file.....done.


GT3b2 with HF Reduction

Reply #8
Many thanks.  Looks like GT3b2 is benefitting from the changes (which is what I had hoped) as the HF boost of the original version would have been apparent.  Just to be sure, a comparison with the original GT3b1 would be helpful too.


GT3b2 with HF Reduction

Reply #10
Those are very encouraging results    Did you hear any stereo imaging problems? Those are the most likely problems that I fear most, since I am messing around with the stereo setup.

Anyway it looks like GT3b1, the cream of Vorbis encoders, just got creamier

GT3b2 with HF Reduction

Reply #11
Quote
Those are very encouraging results    Did you hear any stereo imaging problems? Those are the most likely problems that I fear most, since I am messing around with the stereo setup.

Frankly, not at all, only HF boost, pre-echo, and some distortion give me essential clues to distinguish.

Anyway, it's always nice to see the impressive encoders like this.  It seems that Vorbis is going to be mature.

GT3b2 with HF Reduction

Reply #12
Many thanks for your invaluable tests.

Well, my supervisor is coming back on Monday so I will have much less time to work on this.  I'll fine tune things a bit more over the weekend and then upload the source code on Sunday so everyone can see what I've done.

Hopefully others who have more experience and expertise can improve on this further.  My biggest hope is to see Vorbis do well in future listening tests.

GT3b2 with HF Reduction

Reply #13
Just make sure that Monty see this code (inform him via PM about this sourcecode).

 

GT3b2 with HF Reduction

Reply #14
I’m in holidays, and I don’t have access to my main computer, soundcard and headphone. The only thing I can do is using my portable for listening tests (and his crap AC97 chip and poor circuitry). It’s disturbing, but I’ll try to do my best.

First, I’ve tested the GT3/QK3mix [mix to be short] using –q5 with a sample of mine, I didn’t posted yet. Vorbis have some noise troubles with it. Problems are not awful, just audible, and I don’t know if the problem is simply a consequence of pre-echo, or to something deeper.

I.   Hosokawa - Atem-lied (-q 5)

GT3b2 is inferior to the GT3mix: noise is more aggressive and disturbing. GT3mix is not noise-free: the gap between two bells ‘dring’ is filled by a noisy signal. I sounds like traditional smearing (whereas GT3b2 has maybe problems directely into the ‘dring’ signal, and not only between).
Sample is available in the upload forum (or will follow very soon)
EDIT: http://www.hydrogenaudio.org/forums/index....ndpost&p=188327



II.   Brahms3 (-q 6)

I’ve posted this sample more than one year ago. It’s a symphonic recording, a bit noisy (radio recording, but officially released in CD by EMI). Vorbis used to react strangely, adding noise even at very high bitrate (320 kbps).
Due to my current hardware setting, I didn’t test very high presets, limiting my performance at –q6.

Both GT3b2 and GT3mix have audible difference compared to reference. More noise. I couldn’t say which one was cleaner. I’ve tried to ABX them directly in order to find a slight difference: failed (11 out of 30, pval = 0.951).
But someone else should try with this sample. By increasing the volume of the amp (my portable computer is too short here), some differences might appear between the two encoders.
=> there’s still a noise problem affecting vorbis even at high bitrate.
Sample should be available on http://membres.lycos.fr/guruboolez/AUDIO/samples




III.   Rossi - Sinfonia grave a 5 (-q 4)

I’ve selected this sample in order to evaluate the possible progress of GT3mix with the coarse sound with classical music – coarse sound apparently linked to channel coupling. Therefore, I’ve used –q4 setting. The sample has nothing exceptional. I’ll upload it on request only.

First comment: 5 kbps differentiate the 2 encodings (mix is 128 kbps, whereas GT3b2 AND 1.01 are at 132 kbps). Not a very big difference, but it’s the biggest one of the three samples/setting of this short test.

Quality: GT3b2 suffers as usual of coarse problems. Unstable increase in noise, deteriorating the purity and nuances of the instruments. I’ve gave 3.0/5 as notation.
GT3mix suffers from the same problem, but the amount of the distortion isn’t as high. I’ve some troubles to evaluate the difference (no high anchor is my test), and gave 3.5/5 to the GT3mix encoding.
ABXed both files directly with success but I need concentration: 15 out of 20, pval = 0.021



CONCLUSION: three files at three different settings are not enough to conclude anything. But it seems that GT3mix reduces some problems, without full correction. One noise problem is still fully present at high bitrate (see Brahms3.wav). Short in time, I didn’t tested pre-echo. Didn’t find stereo problems (but my current hardware conditions are not ideal for detecting this kind of problem).

GT3b2 with HF Reduction

Reply #15
QuantumKnot, I only want to thank you for all your work you put in oggvorbis! It makes me happy to see that you improve the codec with each new release!
Great work! you should join the xiph-team!

Big_Berny

GT3b2 with HF Reduction

Reply #16
Many thanks to guruboolez for his listening tests.  The term 'reduce' is definitely the appropriate one here since I'm not really fixing the source of the problem but rather, trying to compensate for it which means my settings may not be optimal and more tuning is needed.  Also, I only focused on reducing one type of HF boost. 

Unfortunately, I have no answer at this time for how to fix the coarse and grainy noise that appears in classical music.  I suspect there is no easy way of compensating for it  (in a consistent way) and one will have to look into the code deeply.  But after the experimenting I've personally done, there are a few things I discovered:

1. Most of these problems seem to have little to do with stereo coupling.  I've replaced point stereo with lossless coupling and stilll, I get the HF boost.  Nothing seems to be wrong with lossless coupling either since I've checked the coupling and decoupling code and everything should decouple right.  Hence I believe point stereo is magnifying the problem but is not the cause of it.

2. Since the HF boost is present in both point and lossless stereo, then the source of the problem either lies in the floor generation, the floor removal, or the residue quantisation.  I'm leaning towards perhaps the third process as being the cause since it is entirely consistent with what other people on the vorbis-dev mailing list suspect....unusually low SNR in high frequencies causing a high increase in energy due to quantisation noise.

GT3b2 with HF Reduction

Reply #17
btw. Has anyone heard any change when raising the volume with guruboolez' brahms' sample?

GT3b2 with HF Reduction

Reply #18
Quote
btw. Has anyone heard any change when raising the volume with guruboolez' brahms' sample?

My Brahms3 listening result with maximum volume at quality=6.
Quote
ABC/HR Version 0.9b, 30 August 2002
Testname: Brahms3

1R = C:\test\Brahms3\brahms3-q6.wav     (180kbps)
2L = C:\test\Brahms3\brahms3-q6hfr.wav  (179kbps)
3L = C:\test\Brahms3\brahms3-q6atb1.wav (186kbps)
4R = C:\test\Brahms3\brahms3-q6mtb2.wav (245kbps)

---------------------------------------
General Comments:
I concentracted only on noise boosting.
---------------------------------------
1R File: C:\test\Brahms3\brahms3-q6.wav
1R Rating: 2.5
1R Comment:
---------------------------------------
2L File: C:\test\Brahms3\brahms3-q6hfr.wav
2L Rating: 2.0
2L Comment: Worst? Difference between sample1 and this sample is subtle.
---------------------------------------
3L File: C:\test\Brahms3\brahms3-q6atb1.wav
3L Rating: 3.0
3L Comment: Better than sample1 but there really is difference between sample1 and this sample.
---------------------------------------
4R File: C:\test\Brahms3\brahms3-q6mtb2.wav
4R Rating: 4.0
4R Comment: Best of all. I took the longest time to abx this sample from the original.
---------------------------------------
ABX Results:
Original vs C:\test\Brahms3\brahms3-q6.wav
    8 out of 8, pval = 0.004
Original vs C:\test\Brahms3\brahms3-q6hfr.wav
    8 out of 8, pval = 0.004
Original vs C:\test\Brahms3\brahms3-q6atb1.wav
    9 out of 10, pval = 0.011
Original vs C:\test\Brahms3\brahms3-q6mtb2.wav
    10 out of 13, pval = 0.046


QuantumKnot, you can probably abx this sample from the original at top volume even though this is a classical sample. It's easy to hear the difference. All I did was concentrate on the background noise level.

GT3b2 with HF Reduction

Reply #19
As guys said, Brahms3 isn't hard to ABX to me, either.(15/15)

GT3b2 with HF Reduction

Reply #20
It's a very quiet sample and I started getting distortions on my crappy sound card when I boosted the volume.

GT3b2 with HF Reduction

Reply #21
QuantumKnot, after all this testing, is your version of GT3b2 still an experimental release and not suitable for archiving, or can you say it has proved itself to be good for music storage?

GT3b2 with HF Reduction

Reply #22
Quote
QuantumKnot, after all this testing, is your version of GT3b2 still an experimental release and not suitable for archiving, or can you say it has proved itself to be good for music storage?

I think it should be good enough for archiving since the bitrates are relatively high.  There was a report somewhere that my HF reduction is causing some extra distortion at the very low bitrate (q 0 and 1) so avoid that range for now.  But QKTune beta 3.2 seems to have stood the test of time at q 4 and from the testing here, GT3b2 with HF reduction is, at the minimum, better than the original GT3b2.

You might want to check out John33's merge of QKTune beta 3.2 and GT3b2.  Should be good enough from q 3 to 10