IPB

Welcome Guest ( Log In | Register )

GXLame - Low-bitrate MP3 encoder., Dedicated thread for discussion.
The Sheep of DEA...
post Apr 23 2010, 20:06
Post #1





Group: Developer
Posts: 174
Joined: 16-April 06
Member No.: 29596



This is a snapshot of my work on "GXLame." GXLame is an MP3 encoder based off of LAME v3.98.4 and v3.99b0 which has been heavily optimized for high-quality, low-bitrate VBR encoding. It is similar in concept to other popular encoders at these bitrates such as some AAC codecs, Vorbis mods, and so forth at bitrates down to 56kbps. This codec does not rely on aggressive lowpassing or resampling to acheive these low bitrates, and the quality aims to be acceptable at much lower bitrates than have come to be expected of the standard. Here's a rough idea of what to expect:

CODE
On a continuous scale from V 0 (lowest bitrate) to V 100 (highest quality), with V20 as the default:
V100: 256kbps
V90: 224kbps
V80: 185kbps
V70: 162kbps
V60: 146kbps
V50: 128kbps
V40: 112kbps
V30: 96kbps
V20: 85kbps
V10: 74kbps
V0: 64kbps (actually 56kbps @ 32KHz; auto resampling to 32Khz takes place at V5 and below)

The range 0-35 is where the most tuning took place. The codec accepts input from stdin and can be used in foobar2000 (and many other audio rippers/managers/converters) by following any of the guides for LAME, but with a different commandline. For instance, one can easily import CD audio into foobar2000 and convert the tracks with the simple commandline: GXLame-t5.3 -S - %d
For greatly increased encoding speed, add "-f". To target a different quality level, add "-Vx" ('x' here means a number like 30, which would produce average bitrates somewhat close to 96kbps according to the above table).
CODE
GXLame 32bits version GXLame-t5 (9 Aug 2011)

This version contains debugging options.

usage: GXLame [options] <infile> [outfile]

    <infile> and/or <outfile> can be "-", which means stdin/stdout.

RECOMMENDED:
    GXLame input.wav output.mp3

OPTIONS:
    -b bitrate      (Not recommended) set the bitrate, default 85 kbps
    -h              highest quality, but slower (not recommended).
    -f              fast mode, slightly lower quality (but still very good)
    -V n            quality setting for VBR.  default n = 20 (near 85 kbps)
                    100 = highest quality, biggest files. 0 = smallest files
    --preset type   type must be "medium", "standard", "extreme", "insane",
                    or a value for an average desired bitrate and depending
                    on the value specified, appropriate quality settings will
                    be used.
                    "--preset help" gives more info on these

    --priority type  sets the process priority
                     0,1 = Low priority
                     2   = normal priority
                     3,4 = High priority

    --longhelp      full list of options

    --license       print License information

This is an early test release. Although some great progress is being made, it is not completely tuned, stable, or optimized. Then again, codecs never are and probably never will be. I want to gather user feedback, so use this puppy to compress whatever audio you will. Please note that lossy transcoding is an especially bad idea with GXLame. It relies so heavily on the psymodel and noise shaping that any artifacts present in the original--even inaudible ones in a transparent encode--may rebound here with a great vengeance. Particular culprits are transient smearing and additional high frequency distortion. If you must transcode, at least resample to a different frequency first (for instance, add "--resample 48" to the commandline when re-compressing/transcoding standard CD audio).

Grab a look at the changelog and older versions in the uploads thread here. Be sure to provide your opinions, discussions, impressions, test results, and whatever other witty banter you might deem applicable in this thread!

Right now, go forth and test it on your music, soundtracks, speech tracks (for speech, I recommend GXLame -V0 -mm --resample 16) -- I'm looking for tests for any regressions that might have been introduced in t5.3 since t5.2.

This post has been edited by The Sheep of DEATH: Sep 1 2011, 03:41
Attached File(s)
Attached File  GXLame_t5.3.zip ( 180.48K ) Number of downloads: 433
 


--------------------
Copy Restriction, Annulment, & Protection = C.R.A.P. -Supacon
Go to the top of the page
+Quote Post
 
Start new topic
Replies
IgorC
post May 6 2011, 07:40
Post #2





Group: Members
Posts: 1506
Joined: 3-January 05
From: Argentina, Bs As
Member No.: 18803



Thank You,
Nice to see new version. It looks good at first sight. It really has less warbling but maybe at cost of some noise.
Will get a try to it in these days.
It is particularly interesting for me bitrate 96 kbps (V30) .
Don't know if it is worth to compare to some of the LAME versions (settings) or other MP3 encoders which are tuned for low bitrates.
Go to the top of the page
+Quote Post
The Sheep of DEA...
post May 7 2011, 09:11
Post #3





Group: Developer
Posts: 174
Joined: 16-April 06
Member No.: 29596



QUOTE (IgorC @ May 6 2011, 01:40) *
Thank You,
Nice to see new version. It looks good at first sight. It really has less warbling but maybe at cost of some noise.
Will get a try to it in these days.
It is particularly interesting for me bitrate 96 kbps (V30) .
Don't know if it is worth to compare to some of the LAME versions (settings) or other MP3 encoders which are tuned for low bitrates.


Great news! A comparison would certainly be useful. I've compared to LAME a lot, but no other MP3 codecs at these rates.

Anyway, let me sneak through an early-stage t5.
GXLame-t5:
- Synced (selectively) with LAME 3.99b0
- Small ath minval bugfix (introduced in t4)
- Better normalization of quality between quiet and "noisy" audio (needs testing!)
- Fast mode (-f) is much faster (now on par with aotuv venc builds) with better quality approaching that of default mode
- Changes in low bitrate mapping to be more geometrically consistent and to take advantage of new quality normalization at even lower bitrates:
QUOTE
V100: 256kbps
V90: 224kbps
V80: 185kbps
V70: 162kbps
V60: 146kbps
V50: 128kbps
V40: 112kbps
V30: 96kbps
V20: 85kbps
V10: 75kbps
V0: 64kbps (actually 56kbps @ 32KHz
; auto resampling to 32Khz takes place at V5 and below)


GXLame-t4.5 is still the recommended version for actual use, while t5 is a new branch. Although t5 it is less mature than t4.5, it may produce better overall quality in some (few? most? 'all?') cases, but more testing is needed. It would be very helpful if you could compare it to t4.5 (or the popular t3, for that matter) on normal music. A comparison of average bitrates (at V20, for instance) between these versions would also be welcome, as would a comparison of normal and fast mode. As usual, grab it in the release post.

Again, let me be clear...
GXLame-t4.5 is the recommended version. It is 'r1' for GXLame. GXLame-t5 hasn't been tuned to the extent that t4.5 has been. (However, if you can, please do test it and compare the quality of t5 vs t4.5 on a variety of music).


--------------------
Copy Restriction, Annulment, & Protection = C.R.A.P. -Supacon
Go to the top of the page
+Quote Post

Posts in this topic
- The Sheep of DEATH   GXLame - Low-bitrate MP3 encoder.   Apr 23 2010, 20:06
- - Canar   Fascinating. How easily backported are your change...   Apr 23 2010, 20:29
|- - The Sheep of DEATH   QUOTE (Canar @ Apr 23 2010, 14:29) Fascin...   Apr 23 2010, 20:57
- - dv1989   QUOTE (The Sheep of DEATH @ Apr 23 2010, 20...   Apr 23 2010, 23:28
|- - The Sheep of DEATH   QUOTE (dv1989 @ Apr 23 2010, 17:28) Not n...   Apr 24 2010, 07:29
- - gaekwad2   Quick impression: Less warbling and distortion tha...   Apr 24 2010, 15:33
- - [JAZ]   I don't pretend to be rude but... Do you hav...   Apr 24 2010, 16:24
|- - The Sheep of DEATH   QUOTE ([JAZ] @ Apr 24 2010, 10:24...   Apr 24 2010, 22:53
|- - gaekwad2   QUOTE (The Sheep of DEATH @ Apr 24 2010, 23...   Apr 25 2010, 01:26
- - Canar   I have to disagree [JAZ]. The results speak for th...   Apr 24 2010, 19:31
- - shadowking   There biggest problem will be low volume , solo/ja...   Apr 25 2010, 02:48
|- - The Sheep of DEATH   QUOTE (shadowking @ Apr 24 2010, 20:48) T...   Apr 25 2010, 22:14
|- - gaekwad2   QUOTE (The Sheep of DEATH @ Apr 25 2010, 23...   Apr 26 2010, 02:04
|- - The Sheep of DEATH   In response to the samples I received so far! ...   Apr 27 2010, 14:18
- - stereotype   QUOTE (The Sheep of DEATH @ Apr 23 2010, 13...   Apr 25 2010, 02:54
- - [JAZ]   @Stereotype: in GXLame, 0..35 is the low bitrate r...   Apr 25 2010, 12:28
- - Steve Forte Rio   very interesting project. Hopefully it is backward...   Apr 25 2010, 19:57
- - Canar   Nice! I'm tempted to try hack-in support f...   Apr 27 2010, 15:24
|- - The Sheep of DEATH   QUOTE (Canar @ Apr 27 2010, 09:24) Nice...   Apr 29 2010, 02:11
- - gaekwad2   The noise is greatly reduced in t2, now the bigges...   Apr 30 2010, 13:03
|- - Soap   QUOTE (gaekwad2 @ Apr 30 2010, 08:03) The...   Apr 30 2010, 13:06
|- - [JAZ]   QUOTE (Soap @ Apr 30 2010, 14:06) Why are...   Apr 30 2010, 19:41
- - Canar   I do intend to do a bit of listening testing on th...   Apr 30 2010, 16:26
- - The Sheep of DEATH   From yesterday: QUOTE GXLame-t3. Changelog: - Sli...   Apr 30 2010, 21:44
- - lvqcl   I noticed that gxlame doesn't like quiet sampl...   May 1 2010, 11:09
|- - The Sheep of DEATH   QUOTE (lvqcl @ May 1 2010, 05:09) I notic...   May 1 2010, 19:40
- - lvqcl   Bitrate vs quality settings for LAME 3.98.4, LAME ...   May 1 2010, 18:50
|- - dv1989   QUOTE (lvqcl @ May 1 2010, 18:50) LAME 3....   May 1 2010, 21:16
- - lvqcl   QUOTE (The Sheep of DEATH)Could you direct me to t...   May 1 2010, 20:05
- - lvqcl   QUOTE Does this version have a different default V...   May 2 2010, 08:26
- - dv1989   Thanks for the answer! I wonder how it'll ...   May 2 2010, 11:55
- - lvqcl   QUOTE (dv1989)I wonder how it'll compare in li...   May 2 2010, 20:36
- - Aleron Ives   Forgive my ignorance, but if the VBR new in 3.98 h...   May 3 2010, 01:24
- - Steve Forte Rio   Sorry, but were I can download LAME 3.99 alpha 6 e...   May 3 2010, 11:56
- - dv1989   Google's first result for "LAME 3.99a6...   May 3 2010, 12:15
- - Steve Forte Rio   Oh, thank you)   May 3 2010, 12:20
- - lvqcl   current version is alpha 7 vbr-new behavior was t...   May 3 2010, 13:21
|- - The Sheep of DEATH   QUOTE (lvqcl @ May 3 2010, 07:21) current...   May 9 2010, 10:57
- - lvqcl   Killer samples for GXLame-t4 -V 30: mama_original...   May 21 2010, 18:43
- - The Sheep of DEATH   Hi. So I see vorbis got another new release recent...   May 5 2011, 06:22
- - IgorC   Thank You, Nice to see new version. It looks good...   May 6 2011, 07:40
|- - The Sheep of DEATH   QUOTE (IgorC @ May 6 2011, 01:40) Thank Y...   May 7 2011, 09:11
- - The Sheep of DEATH   Just for the record (in case I'm not around fo...   Aug 15 2011, 20:10
|- - holmus   QUOTE (The Sheep of DEATH @ Aug 15 2011, 19...   Aug 19 2011, 15:44
|- - C.R.Helmrich   I'm also interested in the performance of the ...   Aug 20 2011, 13:55
|- - moozooh   QUOTE (C.R.Helmrich @ Aug 20 2011, 16:55)...   Aug 20 2011, 18:14
- - IgorC   After conducting the last public test I've und...   Aug 21 2011, 23:23
- - moozooh   Ah, I erroneously assumed C.R.Helmrich was asking ...   Aug 23 2011, 13:46
- - IgorC   Short test. 10 first samples from last public tes...   Sep 1 2011, 05:50
|- - The Sheep of DEATH   Excellent, this is what I was looking for! Tha...   Sep 1 2011, 20:49
|- - IgorC   QUOTE (The Sheep of DEATH @ Sep 1 2011, 16...   Sep 2 2011, 02:44
|- - lvqcl   QUOTE (The Sheep of DEATH @ Sep 1 2011, 23...   Sep 3 2011, 09:13
- - IgorC   Another short test. 10 samples from the last publi...   Sep 3 2011, 09:50
- - lvqcl   I thought that ABR is still preferrable for LAME a...   Sep 3 2011, 10:45
- - IgorC   You're right. ABR is recommended for LAME at l...   Sep 3 2011, 11:20
|- - The Sheep of DEATH   QUOTE (IgorC @ Sep 3 2011, 05:20) You...   Sep 3 2011, 21:55
|- - lvqcl   QUOTE (The Sheep of DEATH @ Sep 4 2011, 00...   Sep 3 2011, 22:39
|- - IgorC   QUOTE (The Sheep of DEATH @ Sep 3 2011, 17...   Sep 3 2011, 22:53
|- - The Sheep of DEATH   Ahaha, thanks. I was thinking of V20, in the middl...   Sep 4 2011, 04:40
|- - lvqcl   QUOTE (The Sheep of DEATH @ Sep 4 2011, 07...   Sep 4 2011, 06:27
|- - The Sheep of DEATH   QUOTE (lvqcl @ Sep 4 2011, 00:27) QUOTE (...   Sep 4 2011, 07:49
|- - IgorC   QUOTE (The Sheep of DEATH @ Sep 4 2011, 03...   Sep 4 2011, 08:04
- - darkbyte   Nice encoder. I'm waiting for the lame_enc.dll...   Oct 2 2011, 14:58
- - Yuri   This encoder is great. Sounds really good with h...   Jan 21 2012, 04:16
- - Freya   Firstly respect to you for coming out with such a ...   Mar 15 2012, 10:36
|- - The Sheep of DEATH   QUOTE (Freya @ Mar 15 2012, 04:36) Firstl...   Mar 26 2012, 06:23
- - LithosZA   Are you restricted to 16Kbps? MP3 will blow up at ...   Mar 15 2012, 11:45
|- - Freya   QUOTE (LithosZA @ Mar 15 2012, 10:45) Are...   Mar 15 2012, 12:36
- - LithosZA   QUOTE It has to be .mp3 format I'm afraid, oth...   Mar 15 2012, 14:07
- - njsain   Is the source available for GXLame? I would like t...   Oct 31 2012, 17:52


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: 18th April 2014 - 05:12