[Flac-dev] Large compression test

Josh Coalson xflac at yahoo.com
Fri Aug 3 21:21:28 PDT 2001

A large test I ran on flac 1.0 recently finished so I thought
I'd post the results.  I took about 60 CDs, totalling around
30 gigs uncompressed, and compressed them all using all 10 of
flac's default compression modes (-0 through -9).  The CDs are
of a wide variety of music; I think the only major genres not
represented are country and rap (freudian slip).  Anyway, the
raw numbers:

Opt  Uncompressed    Compressed    Ratio  Encode Time
---  ------------   -----------   ------  -----------
-0    18705533061   30308309960   0.6171      3:49:31
-1    18296233794   30308309960   0.6036      3:56:11
-2    18213733462   30308309960   0.6009      4:15:55
-3    17947006657   30308309960   0.5921      4:29:18
-4    17492915245   30308309960   0.5771      4:58:26
-5    17447297373   30308309960   0.5756      5:37:22
-6    17435250044   30308309960   0.5752      5:48:08
-7    17414666580   30308309960   0.5745     10:58:38
-8    17385832738   30308309960   0.5736     13:43:05
-9    17350388508   30308309960   0.5724    282:30:39

Yes, that last one is almost 12 days.  You probably noticed
that the compression difference is about 0.1% from -8,
which is why I say -9 is more theoretical than practical.

The test ran on a PIII-600 and I used -V for all the tests,
so the runtime without -V would be a tiny bit less for
-7 -8 -9 and noticibly faster for the lower modes.  And
I'm glad to say that there were no verify errors and the
decoded WAVs compared exactly to the originals every time.

The range of ratios ranged from 0.20 for some jazz tracks
(quiet Ella Fitzgerald stuff) to 0.78.  The hardest
stuff to encode was constistently by the band Dream
Theater (the ultimate in progressive rock), even harder
than death metal like Cannibal Corpse.  Classical, jazz,
chant were almost always below 0.5.  Rock, techno, world
music usually fell in the range 0.5-0.7.  A ratio of
0.2 like with some of the jazz and classical tracks means
a bitrate of under 300kbps which is not bad for lossless.

The other interesting thing is that the sweet spot seems
to be more near -4 than -5.


P.S. My next project is to rip and encode all my CDs and
store the CD metadata in a database.  I've got a nice
schema worked out and a better hash than CDindex for
creating a primary key from the CD TOC.  If there's
interest I can publish the code for the little TOC
reader + key generator (UNIX only, gotta love ioctl).

Do You Yahoo!?
Make international calls for as low as $.04/minute with Yahoo! Messenger

More information about the Flac-dev mailing list