Help - Search - Members - Calendar
Full Version: Ogg Vorbis GT3 beta 2
Hydrogenaudio Forums > Lossy Audio Compression > Ogg Vorbis > Ogg Vorbis - Tech
Garf
Source:

http://sjeng.org/ftp/vorbis/libvorbis-1.0gt3b2.tar.gz

This is based off RC3+patches. I did this because there are some issues with 1.0, that originated between RC3 and 1.0, and that I haven't been able to track down yet. Because it's based on RC3 it's lacking some stuff that's in 1.0, but that doesn't seem to be relevant for high bitrates. I can't guarantee there won't be any regressions compared to 1.0 or GT3b1 though, but it should improve the (HF) noise issues people have been having.

It's tuned from -q4 to -q10.

Edit: And don't try anything but 44.1/48kHz stereo either. And test it before you encode your entire collection, I have no idea how good it works.

Because it's based on RC3 and not 1.0, it is not going to be plug-in compatible in applications. You'll need to make adjustments to the encoder tools (back to RC3 interface) to get it to work. This is major pain in the ass, which is why I didn't upload an executable, I'll let someone else cope with that.

Obviously, I'll want to get back to 1.0 for the next beta, but I want to see what results this gives, and I've worked on it anyway and I know people like to toy with a new version, so there you go.
Case
Here's win32 binary of oggenc.
guruboolez
Thank you, Case.
I've just tried on an easy but unvalid sample (short_block_test_2), in order to check the behaviour for this new GT3 build on pure and ideal attacks. In this special conditions, GT3b2 is clearly worse than the beta1 (very good, this one).

GT3b1 -q5 = 485 kbps
GT3b2 -q5 = 327 kbps

I need to try on valid samples, like castanets.wav or others passage.
Garf
QUOTE(guruboolez @ Mar 30 2003 - 04:33 PM)
Thank you, Case.
I've just tried on an easy but unvalid sample (short_block_test_2), in order to check the behaviour for this new GT3 build on pure and ideal attacks. In this special conditions, GT3b2 is clearly worse than the beta1 (very good, this one).

GT3b1 -q5 = 485 kbps
GT3b2 -q5 = 327 kbps

I need to try on valid samples, like castanets.wav or others passage.

Transient behaviour in general is going to be a bit less responsive than beta 1, although with noticeable bitrate savings and, I think, no real disadvantage for normal music.
guruboolez
I tried on the easiest sample after short_blocks : castanets2.wav

CODE
ABC/HR Version 0.9b, 30 August 2002
Testname:

1R = C:\Temp\castanets2\castanets2 GT3b2 Q5.wav
2R = C:\Temp\castanets2\castanets2 GT3b1 Q5.wav
3R = C:\Temp\castanets2\castanets2 PCVS Q5.wav

---------------------------------------
General Comments:

---------------------------------------
1R File: C:\Temp\castanets2\castanets2 GT3b2 Q5.wav
1R Rating: 2.0
1R Comment: fort pré-écho.
---------------------------------------
2R File: C:\Temp\castanets2\castanets2 GT3b1 Q5.wav
2R Rating: 4.0
2R Comment: très léger écrasement des attaques.
Duretés assez étranges et inaccoutumées sur certaines attaques.
---------------------------------------
3R File: C:\Temp\castanets2\castanets2 PCVS Q5.wav
3R Rating: 1.0
3R Comment: pré-écho très élevé. Tout est écrasé, comme dédoublé avec un léger délai.
---------------------------------------
ABX Results:
Original vs C:\Temp\castanets2\castanets2 GT3b2 Q5.wav
   10 out of 10, pval < 0.001
Original vs C:\Temp\castanets2\castanets2 GT3b1 Q5.wav
   11 out of 12, pval = 0.003
Original vs C:\Temp\castanets2\castanets2 PCVS Q5.wav
   10 out of 10, pval < 0.001


Include : a post-CVS encoding at -q5 (oggdropXPD 1.6.11c).

Progress between GT3b2 and Post-CVS : less pre-echo, but too easy to ear, and really annoying. GT3b1 is obviously the best, though I can ABX it without real difficulties. Intersesting to note : bitrate is smaller with beta1, for a much higher quality.

PostCVS = 166 kbps
oggGT3b1 = 197 kbps
oggGT3b2 = 205 kbps
Garf
QUOTE(guruboolez @ Mar 30 2003 - 04:48 PM)
Intersesting to note : bitrate is smaller with beta1, for a much higher quality.

Gah, that's bad news. No good then.
Cobra
QUOTE(Garf @ Mar 30 2003 - 03:53 PM)
QUOTE(guruboolez @ Mar 30 2003 - 04:48 PM)
Intersesting to note : bitrate is smaller with beta1, for a much higher quality.

Gah, that's bad news. No good then.

Keep working Garf, all true Ogg Vorbis zealots (like me) are with you!
guruboolez
I tried now on a short sample (early but not too sharp percussions).

oggenc PostCVS -q 5 : 154 kbps
oggenc GT3b1 -q 5 : 162 kbps
oggenc GT3b2 -q 5 : 175 kbps

CODE
---------------------------------------
1R File: C:\Temp\Cabaniles\Cabanilles - Batalla Imperial PCVS Q5.wav
1R Rating: 3.5
1R Comment:
---------------------------------------
2R File: C:\Temp\Cabaniles\Cabanilles - Batalla Imperial GT3b2 Q5.wav
2R Rating: 3.0
2R Comment:
---------------------------------------
3R File: C:\Temp\Cabaniles\Cabanilles - Batalla Imperial GT3b2 Q5.wav
3R Rating: 3.5
3R Comment:
---------------------------------------
ABX Results:
Original vs C:\Temp\Cabaniles\Cabanilles - Batalla Imperial PCVS Q5.wav
   10 out of 12, pval = 0.019
Original vs C:\Temp\Cabaniles\Cabanilles - Batalla Imperial GT3b2 Q5.wav
   10 out of 12, pval = 0.019
Original vs C:\Temp\Cabaniles\Cabanilles - Batalla Imperial GT3b2 Q5.wav
   9 out of 16, pval = 0.402


On ABA test, it wasn't too difficult to hear a difference, but really difficult to differenciate the 3 encoding. With ABX, the third sample (GT3b2) was much harder to perform (good beginning [8/12], ruined by a bad ending). Less noise with this sample.

P.S. I had to put the volume on a excessive level in order to perform this test.
guruboolez
[COLOR=red]Sorry for flooding wink.gif

Tried on harpsichord.

oggenc PostCVS -q 5 : 201 kbps
oggenc GT3b1 -q 5 : 216 kbps
oggenc GT3b2 -q 5 : 208 kbps

CODE
---------------------------------------
1R File: C:\Temp\fugue\Fuga BWV 868 PostCVS Q5.wav
1R Rating: 4.0
1R Comment:
---------------------------------------
ABX Results:
Original vs C:\Temp\fugue\Fuga BWV 868 PostCVS Q5.wav
   8 out of 10, pval = 0.055
Original vs C:\Temp\fugue\Fuga BWV 868 GT3b2 Q5.wav
   10 out of 10, pval < 0.001
Original vs C:\Temp\fugue\Fuga BWV 868 GT3b1 Q5.wav
   9 out of 10, pval = 0.011

certaine distorsion sur le troisème échantillon


On ABA test, postCVS was immediatly perceptible (kind of pre-echo, or distorsion). Can't distinguish GT3 series.
With ABX, all were abxable, especially on noise (though I focused on distorsion for the last one, GT3b1). I obtained the best ABX result with GT3b2. And again, GT3b2 was the biggest file [EDIT : not true] :-/
Garf
QUOTE(guruboolez @ Mar 30 2003 - 05:21 PM)
With ABX, all were abxable, especially on noise (though I focused on distorsion for the last one, GT3b1).

Did you find that GT3b2 had less or more noise than GT3b1?
guruboolez
QUOTE(Garf @ Mar 30 2003 - 04:33 PM)
QUOTE(guruboolez @ Mar 30 2003 - 05:21 PM)
With ABX, all were abxable, especially on noise (though I focused on distorsion for the last one, GT3b1).

Did you find that GT3b2 had less or more noise than GT3b1?

Well, it's not easy to say (and I have now other samples in memory...). On harpsichord, there's a kind of mixture between pre-echo on the moment of attack, and the development of the note, noisy and sometimes distorted.

Other sample : JUMP, 30 seconds. I listened three passages :

1/ the electric introduction (first three seconds)
2/ short-spaced drums (13.3-14.5)
3/ cymbals (14.5-15.0)

1 · INTRODUCTION
CODE
---------------------------------------
1L File: C:\Temp\Jump. Jump GT3b2 Q5.wav
1L Rating: 4.5
1L Comment: légère différence.
---------------------------------------
2R File: C:\Temp\Jump. Jump Post CVS.wav
2R Rating: 3.0
2R Comment: stridence en arrière plan
Souffle assez marqué sur chaque impulsion de la (guitare ?)
---------------------------------------
3R File: C:\Temp\Jump. Jump GT3b1 Q5.wav
3R Rating: 3.0
3R Comment: mêmes remarques qu'en [2]
---------------------------------------
ABX Results:
Original vs C:\Temp\Jump. Jump GT3b2 Q5.wav
   7 out of 8, pval = 0.035
Original vs C:\Temp\Jump. Jump Post CVS.wav
   8 out of 8, pval = 0.004
Original vs C:\Temp\Jump. Jump GT3b1 Q5.wav
   8 out of 8, pval = 0.004


beta1 and CVS are really close, and they share the same flaw (short impulsion of noise after each guitar (?) note). GT3b3 is near perfection (as RC3)

2 · DRUMS :

CODE
1R File: C:\Temp\Jump. Jump Post CVS.wav
1R Rating: 2.0
1R Comment: pre-echo
---------------------------------------
2L File: C:\Temp\Jump. Jump GT3b2 Q5.wav
2L Rating: 3.5
2L Comment: pre-echo
---------------------------------------
3L File: C:\Temp\Jump. Jump GT3b1 Q5.wav
3L Rating: 2.5
3L Comment: pré-écho + bruit, comme en [1]
---------------------------------------
ABX Results:
Original vs C:\Temp\Jump. Jump Post CVS.wav
   8 out of 8, pval = 0.004
Original vs C:\Temp\Jump. Jump GT3b2 Q5.wav
   6 out of 10, pval = 0.377
Original vs C:\Temp\Jump. Jump GT3b1 Q5.wav
   8 out of 8, pval = 0.004


Again, GT3b2 is the best. As with harpsochord, I can't analyse and describe the exact flaw of CVS/GT3b1 : is it pre-echo, or noise ? Attacks sound different, and a bit annoying to me.
Gt3b2 is not transarent, but need more concentration for ABXing (I performed quick tests).


3 · CYMBAL

CODE
1R File: C:\Temp\Jump. Jump GT3b1 Q5.wav
1R Rating: 3.5
1R Comment: cymbale bruitée, écrasée.
---------------------------------------
2L File: C:\Temp\Jump. Jump Post CVS.wav
2L Rating: 3.5
2L Comment: idem
---------------------------------------
3R File: C:\Temp\Jump. Jump GT3b2 Q5.wav
3R Rating: 4.5
3R Comment: légère & incertaine différence
---------------------------------------
ABX Results:
Original vs C:\Temp\Jump. Jump GT3b1 Q5.wav
   8 out of 8, pval = 0.004
Original vs C:\Temp\Jump. Jump Post CVS.wav
   8 out of 8, pval = 0.004
Original vs C:\Temp\Jump. Jump GT3b2 Q5.wav
   6 out of 8, pval = 0.145


Identity between Post-CVS and GT3b1 : same flaw on cymbal and similar sound. The micro-details are covered by a generated noise. GT3b2 is again near-transparency.



These 30 seconds may be sufficient to proove that final vorbis codec version has a general behaviour that facilitates ABX tests, and make transparency quite impossible at -q5, and in some case, -q 8. RC3, and therefore GT3b2, doesn't suffer by it.
Nevertheless, on strong attacks, GT3b1 is obviously the best vorbis codec I never seen.

Post CVS = 180 kbps
GT3b1 = 203 kbps
GT3b2 = 208 kbps
R.A.F.
The bitrate-increase from GT3 beta 1 to beta 2 is really dramatical:

Album "Aerosmith - Big Ones"

total length encoded with b1 at -q6 : 121,616 MB
total length encoded with b2 at -q6 : 137,388 MB = + 12,97 % (!)

And with other albums it´s similar.
fragtal
QUOTE(Garf @ Mar 30 2003 - 05:33 PM)
QUOTE(guruboolez @ Mar 30 2003 - 05:21 PM)
With ABX, all were abxable, especially on noise (though I focused on distorsion for the last one, GT3b1).

Did you find that GT3b2 had less or more noise than GT3b1?

I did a short abxing on Castanets.flac. I compared a 1.0 -q6 with a GT3b2 -q5. I just took care of the noise (not preecho or something else).

The result was 10/10

The GT3b2 has less noise than the 1.0.

I'll do another test comparing GT3b1 with GT3b2 and report my results later today.
guruboolez
QUOTE(R.A.F. @ Mar 31 2003 - 04:09 AM)
The bitrate-increase from GT3 beta 1 to beta 2 is really dramatical: (...)
And with other albums it´s similar.

I haven't really tried on many tracks. I've just encoded one movement of a very recent symphonic recording (Beethoven, fifth Symphony by Sir Simon Rattle, released in 2003) :

CODE
PostCVS : 146 kbps
GT3b1 : 147 kbps
GT3b2 : 164 kbps


+12% between beta1 and beta2.


Noise is considerably reduced. I focused my hearing on the pre-symphonic beginning (noise, chairs, etc...). PostCVS and GT3b1 were immediatly betrayed by a small electric noise in the background.

The two files were in consequence easy to ABX. Nevetheless, the GT3b2 was different too :

CODE
---------------------------------------
1R File: G:\Track No07 GT3b1.wav
1R Rating: 4.2
1R Comment:
---------------------------------------
3R File: G:\Track No07 PCVS.wav
3R Rating: 4.2
3R Comment:
---------------------------------------
ABX Results:
Original vs G:\Track No07 GT3b1.wav
   15 out of 16, pval < 0.001
Original vs G:\Track No07 GT3b2.wav
   15 out of 20, pval = 0.021
Original vs G:\Track No07 PCVS.wav
   15 out of 16, pval < 0.001


The GT3b2 is not neutral at -q5. A small amount of noise, which gave a small coloration is added :
CODE
1 of   1, p = 0.500
 1 of   2, p = 0.750
 1 of   3, p = 0.875
 1 of   4, p = 0.938
 1 of   5, p = 0.969
 2 of   6, p = 0.891
 3 of   7, p = 0.773
 4 of   8, p = 0.637
 5 of   9, p = 0.500
 6 of  10, p = 0.377
 7 of  11, p = 0.274
 8 of  12, p = 0.194
 9 of  13, p = 0.133
10 of  14, p = 0.090
11 of  15, p = 0.059
12 of  16, p = 0.038
13 of  17, p = 0.025
13 of  18, p = 0.048
14 of  19, p = 0.032
15 of  20, p = 0.021


I did only one mistake on the 15 last tests.

Therefore, the GT3b2 is a bit noisy, but this noise is less annoying and perceptible than the CVS based codecs.
fragtal
There are the anounced results of my second abxing.

castanets.flac
version.................GT3b1.........vs..........GT3b2
bitrate (-q5).......215kbps...................208kbps
encspeed...............6x............................3x

IMHO the huge difference btw. the encoding speed is due to the fact that oggenc only counts entire seconds. In the case of GT3b2 it is slightly slower and just takes a bit more time and counts two seconds.

As I did in the test before I ONLY concentrated on the noise. This time it was harder. I got a:

16/19 --> 84%
Guessing Prob: 0,5%

The GT3b1 has more noise and it (the GT3b1-noise) sounds a bit more coarse (to me wink.gif)

Keep on tuning Garf! I'd love to see a final GT3 for archieving smile.gif!

fragtal

EDIT: Damn the not working tabs
guruboolez
I tried to ABX mpc (1.14) --standard. Bitrate is similar on the whole track to GT3b2 -q5 (168 kbps vs 164 kbps).

CODE
ABX Results:
Original vs C:\Temp\pre-orchestral\Track No07 (2.1).oggGT3b2.wav
   14 out of 20, pval = 0.058
Original vs C:\Temp\pre-orchestral\Track No07 (2.1).mpc5.wav
   9 out of 20, pval = 0.748


No noise (for me) with mpc standard, small noise with oggenc GT3b2.

I tried to check higher settings for GT3b2 (Q7 ; 226 kbps) :

CODE
1R = C:\Temp\pre-orchestral\Track No07 (2.1).oggGT3b2.wav
2R = C:\Temp\pre-orchestral\Track No07 (2.1).oggGT3b2 Q7.wav

---------------------------------------
General Comments:

---------------------------------------
1R File: C:\Temp\pre-orchestral\Track No07 (2.1).oggGT3b2.wav
1R Rating: 3.4
1R Comment:
---------------------------------------
2L File: C:\Temp\pre-orchestral\Track No07 (2.1).wav
2L Rating: 4.2
2L Comment:
---------------------------------------
ABX Results:
Original vs C:\Temp\pre-orchestral\Track No07 (2.1).oggGT3b2.wav
   13 out of 16, pval = 0.011
Original vs C:\Temp\pre-orchestral\Track No07 (2.1).oggGT3b2 Q7.wav
   22 out of 30, pval = 0.008


I had to put more attention than with Q5 in order perceive a difference. And there is a (very small for me) difference.
guruboolez
I accidentally found the first sample where GT3b2 is really worse than GT3b1, on other things than pre-echo. I hear an obvious and unpleasant distorsion on this harpsichord sample. Especially, between 2.5-5.0 seconds.

Bitrate (whole track) at -q 5 :

Oggenc PostCVS = 201 kbps
Oggenc GT3b1 = 229,2 kbps
Oggenc GT3b2 = 215 kbps


ABX results : 12/12 for beta2 and 6/12 for beta 1.
bubka
is it me or does this one seem to encode slower... not that its a problem biggrin.gif great work garf
fragtal
QUOTE(fragtal @ Mar 31 2003 - 03:38 PM)
castanets.flac
version.................GT3b1.........vs..........GT3b2
bitrate (-q5).......215kbps...................208kbps
encspeed...............6x............................3x

IMHO the huge difference btw. the encoding speed is due to the fact that oggenc only counts entire seconds. In the case of GT3b2 it is slightly slower and just takes a bit more time and counts two seconds.

yep, see?

I already postet the same experience.
Garf
It's based on older code, so it's indeed quite a bit slower. Based on the results here this seems to be a 'dont use' version anyway.
neoufo51
So Garf, hows the progress on GT3?

Not to be pushing you to another release, but what can we expect for beta3?

I'm not sure what else can be done until the next official release, so will we see a beta3 before the next release on the CVS?
Garf
Beta 3 needs 2 things:

1) adaptive way of encoding transients (I worked out the idea, and Dibrom told me APS works similarly, but no code written yet)

2) Pin down noise issue

I have no idea when I will have time for this.
Delirium
Garf, do your tunings (when they turn out to be good) end up getting merged into the official Vorbis CVS? I'm guessing most people use the official Xiph releases, so if you manage to improve quality, it'd be nice if more than just the people who read HA could take advantage of it.
Garf
They do, at least if I release them publicly, which I didn't do with beta 1.
joel
--
never mind
mad_arab
I'm using the official version atm, would it be a good idea to switch to one of these betas? Using -q8
verloren
QUOTE(mad_arab @ Dec 11 2003, 12:19 PM)
I'm using the official version atm, would it be a good idea to switch to one of these betas? Using -q8

It's definitely worth switching. The official version has not been tuned at settings above about q6, so it starts to get hugely wasteful of bits by q8. Though I don't hink Garf paid a lot of attention to levels quite that high, q5 and q6 were improved, and these improvements should have had a knock-on effect. So it's likely you could use the new version at q7 and not notice any difference, except smaller files!

But I'd suggest something more - if you want to stay with ogg (a fine decision IMHO) then try encoding with the new Garf version at q6 - I suspect you won't notice any difference, except for significantly smaller files. You could probably get away with q5 even, but if you have enough room for the existing q8 then new q6 should be a big enough improvement!

Cheers, Paul
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2009 Invision Power Services, Inc.