|
| |
Mp3 War
This
text is a small summary of a text I made for
personal use on early July 98 using my home
language. Since this text was more than 6
descriptive pages, Ill try to include as
much as I can. Pls do not link, copy, post part
or all text without permission. Michael
Hondrosmos (mymailbox@iname.com)
1) Encoders Categories
2) The "Cost"
of Compression
3) The
Results
4) Today ?
All
mp3 compressors are divided to 3 main categories:
1. Fraunhofer Group: fundamental
company that helped a lot for the mp3 development. It also makes
hardware encoders.
Encoders:
i) L3Enc 2.72:
Fraunhofers Dos Encoder (the only pure Dos encoder)
. Due to the difficult (command line) user interface,
there are many Front-Ends for Windows (i.e. L3Enc Win
Manager) .
ii) L3Enc 3.0: Recent 32 bit version. Its
not compatible with previous version command line set.
iii) Fraunhofer libraries (dll): Fraunhofer .dll
files . When installed they can be detected from Settings
-> Control Panel -> Multimedia -> Advanced ->
Audio Compression. All applications using these libraries
make exactly the same .mp3 files (with the same
characteristics). The only thing they change is GUI. You
can find them searching the Internet for l3codec.zip
or l3codecp.exe . These libraries does not support
more than 128 kbps.
iiia) OptiCom mp3 Producer (professional): Windows
application. The Pro versions supports more than 128 Kbps
.
iiib) Mp3 Compressor 0.9f : Pirate program -illegally-
using these .dlls . You can find it by searching
for «Mp3Compr09f» . It supports command line, but it
cannot change its bitrate (from command line).
iiic) The rest: CodeAxe etc: All the other
programs using these libraries .
iiid) Audio Grabber etc: CD DA programs (CD audio
extraction) using libraries to save directly to mp3.
However it is better to extract to Wav and then encode it,
rather than extract directly to mp3, because CD-Rom drive
works much more time (the speed degrades from 20x to 0.2x
).
2. Xing Group: Popular company
for its audio/video products, cards etc. Developed its own
algorithms and projects for .mp3 .
Encoders:
i) Xing Mpeg Compressor
3.20: Windows application. Uses MMX technology to
speed up process. It uses command line (but it is
undocumented).
ii) Tompg: Primal Xing version. Dos text mode but
works under Win95. You can find it searching for «tompg»
. Although a lot older than Xing 3.2 , the mp3 resulting
files are exactly the same.
iii) The Rest: Cosmo Mpx Encoder, Mpeg Creator,
YunaSoft Encoder, Mplifier 0.54 ?.a. The common pint
is the use of Xing application. Most of them work with
Tompg and other versions - even unregistered - of Xings
Mpeg encoders. All of them produce exactly the same file
type.
iv) Xing Mp3 Compressor 1.00: The newest Xing
product. With obvious audio improvements, retrieving less
CPU resources (with respect to ToMpg & Xing Mpeg
Compr.), Its command line is L3enc compatible (using x3enc.exe)
. H win application does not support all bitrate rate (i.e.
160 Kbs) but the Dos command line (x3enc) does. The only
FAST program that we can run it in background with no
noticeable interruptions..
3. ISO coders: All the other
programmers, teams that tried to realise the mp3s ISO
standard (which is freeware and can be found at Fraunhofer site)
.
The most popular encoders are:
i) Mpeg Encoder 0.07 (SoloH).
The first totally legal free encoder. One from the oldest
encoders. Used by many people as point of reference
because of its high quality compression. It does not
support command line.
ii) BladeEnc 0.54. Dos text mode but works under
Win95 and supports Drag n Drop. Also supports L3enc
command line emulation. The program is freeware and its
source code is given to Cd-Copy 4.504 (so CD-Copy
is the first CD Grabber with integrated mp3 encoder. It
does not need any libraries or external program). The
shareware version is full .
iii) 8hz Encoder 1.1b: Primal version. You can
find source code of previous versions in its site.
Supports command line .
iv) The Rest: Make-it-Mp3 etc: There are so many
out there and they are growing fast ...!
The Cost of
Compression
It is obvious that the only mp3 -
or any other compression - disadvantage is the loss of «information»
(apart from the fact that we are loosing the audio-cd format so
we cannot play songs to typical cd players).
From time to time we see many
benchmarks (i.e. www.mp3bench.com) but you cannot find anywhere a
research for mp3s detailed «behavior». So this is the
reason of my research.
The thesis of these tests is
the following:
Since we know that
we will have loss of information, we will examine how .mp3
«sounds» like , not how «looks» like under an
oscilloscope with a pink , white -or whatever- noise,
square or triangles waves etc.. All tests are audio
acoustic comparing results without any «laboratory
examination». If you disagree upon these thesis then do
not read the rest.
My «tools» consists of:
1) Pentium 233 MMX 64MB Ram.
2) Sound Cards tested: Opti 931,
SB Awe32 Asp, SB 16, SB 64 OEM, SB 64 Gold .
3) Hi-Fi with: Rega Planar 3 / RB-300,
Stanton 681, CD Marantz 63 MKII KIS, Amp Marantz PM80 MKII ,
Audio Spectrum - Artemis (Greek floor based hi-fi speakers using
SEAS cones).
For the test purpose I encoded
many , many samples . Since my project was to transform all my
Vinyl & CD collection to mp3, I extracted songs from more
than 400 vinyl records or Cds. So I had the opportunity to listen
to many samples. From all this experience I separated the samples
I found some differences with the originals.
Finally I kept 3 .wav which I used
as pilot samples to make further experiments:
Wav1 : Digitally recorded trechno-rave song with high freq drums
.
Wav2 : Vinyl recorded jazz song with long tailed physical drums (snares,
cymbals).
Wav3: Vinyl recorded jazz song with long tailed female vocals .
Generally the sound of an 128 kbps
mp3 file can be heard pleasantly. But if we focus with great
attention to sound weaknesses we will lead to 3 major categories:
1. Hi-Freq Cut. Most
of encoders using a software cut-off. If the cut-off freq is low
(16 Khz) or the program is not well constructed , it results to a
muddy, blurred trebles. Anyway this is the smallest weakness .
2. Trebles phasing:
Mostly Fraunhofer encoders results strange distortion in high
frequencies. For example I observed that songs which have many
long physical drums (snares or cymbals) the trebles sounds as
they ve been processed by a phaser or such device:
Continuous phase and volume increases - decreases . The
phenomenon is more audible in vinyl recordings. Generally this
phenomenon is present mostly to encoders using Joint Stereo . So
avoid - if possible - Joint Stereo mode and prefer (pure) Stereo.
All tests below made with pure Stereo mode (when I had the
ability to choose)
3. Vocals phasing: Mostly
Xing encoders results strange distortion in upper-middle
frequencies. Songs that have long tailed vocals without any other
instruments (female or other hi-freq), the vocals vibrates and we
can notice a small whistle between vocal maneuvers , «s»s
or phonemes. This phenomenon is also noticeable in other cases
like: solo acoustic or electric-jazz guitar, wind instruments (trumpet
, sax etc) .
Ironically, most of 3rd
category encoders (3rd party ISO), that includes the
ISO standard without any patents or variations does not present
such phenomena very noticeable. The main reason is that the two
mentioned companies (Fraunhofer / Xing) are oriented mostly for
low bitrated applications (Internet Radio, Video/Audio) where we
demand low throughput. Encodings below 56Kbs have much more
better results using the above mentioned companies products.
The Results
As mentioned above I used 3 wav (one for each
phenomenon). I did not took under consideration program's GUI (how user-friendly it is) , but only how well it bypass all
mentioned phenomena and how fast do it (plus time variable). All
variables are equally weighted. So Grad1 are my results.
In case you are not care about time Grad2 are the results
without time element.
Pat.: Patent type (Fraunhofer,
Fraunhofer dll, Xing, 3rd ISO )
Time: Test1.wav (28 sec) on P/233 MMX under Win95
Speed: (10=fast, 1=slow) [ Sqrt( Sec(min) / Sec(i) ) x 10 ]
C1: Hi-freq clarity (10=unnoticed, 1=distortion)
C2: Trebles Phasing (10=unnoticed, 1=distortion)
C3: Vocal Phasing (10=unnoticed, 1=distortion)
Grad1: Average grade
Grad2: Average grade without Time variable.
I. 128 Kbs
| Program |
Pat. |
Time
|
Spee
|
C1
|
C2
|
C3
|
Grad1
|
Grad2
|
Notes
|
| L3Enc 2.71 |
Fraun |
1:15
|
3,3
|
8
|
6
|
10
|
6,8
|
8,0
|
Dos, Batch
|
| L3Enc 2.71 -hq |
|
2:53
|
2,2
|
8
|
6,5
|
10
|
6,7
|
8,2
|
|
| Mp3 Compressor 09f (q) |
Fr. dll |
0:34
|
4,9
|
8
|
6
|
10
|
7,2
|
8,0
|
|
| Mp3 Compressor 09f |
Fr. dll |
1:15
|
3,3
|
8
|
6
|
10
|
6,8
|
8,0
|
Batch
|
| Opticom |
Fr. dll |
0:37
|
4,6
|
8
|
6
|
10
|
7,2
|
8,0
|
|
| Opticom (hq) |
Fr. dll |
1:15
|
3,3
|
8
|
6
|
10
|
6,8
|
8,0
|
|
| Xing Mpeg Encoder 3.10 |
Xing |
0:09
|
9,4
|
8
|
9
|
6
|
8,1
|
7,7
|
|
| Xing Tompg |
Xing |
0:08
|
10,0
|
8
|
9
|
6
|
8,3
|
7,7
|
Dos
|
| Cosmo Mpx Encod. |
Xing |
0:12
|
8,2
|
8
|
9
|
6
|
7,8
|
7,7
|
|
| Mpeg Encoder 0.07a |
ISO |
5:00
|
1,6
|
9
|
9
|
8
|
6,9
|
8,7
|
CD, Free
|
| BladeEnc 0.54 |
ISO |
2:35
|
2,3
|
9
|
9
|
9
|
7,3
|
9,0
|
Free, Dos, Batch
|
| 8Hz 0.11b |
ISO |
2:21
|
2,4
|
9
|
8
|
8
|
6,8
|
8,3
|
Free, Batch
|
| |
|
|
|
|
|
|
|
|
|
- All other programs belong to the
1st or 2nd encoders category, the sound behavior (C1, C2, C3) will be the same as the «Fr.dll» / «Xing»
programs. The only difference is GUI and elapsed time .
If we equally weight all
variables the best encoder is Xings Tompg. If we do not
care about time then the best is BladeEnc 0,54 . Finally in case
we work only with vocals (or similar sounds) the optimal choice
is Mp3 Compressor 0.9f (or L3Enc 2.71 as dos equivalent).
The comparison table lead us to
one conclusion: There is not perfect encoder. If you looking for
something better increase bitrate. The differences over the 3
categories seems to be equalized and minimized above 160 Kbs.
II. 160 Kbs
In this bitrate level .mp3s
are about 24% bigger so the compression rate follows down to 1:9
(instead of 1:11 @ 128 kbps). Unfortunately Fraunhofer dll (with
all supported programs) do not allow compression greater than 128Kbs.
All categories tends to extinguish their weakness. Again here, BladeEnc 0,54 presents
less faults than the rest and Tompg remains the fastest best
choice.
| Program |
Pat. |
Speed
|
C1
|
C2
|
C3
|
Grad1
|
Grad2
|
Notes
|
| L3Enc 2.71 |
Frauh. |
3,3
|
8
|
7
|
10
|
7,1
|
8,3
|
Dos
|
| Opticom |
Fr. dll |
4,6
|
8
|
7
|
10
|
7,4
|
8,3
|
|
| Xing Mpeg Encoder 3.10 |
Xing |
9,4
|
8
|
9
|
8
|
8,6
|
8,3
|
|
| Xing Tompg |
Xing |
10,0
|
8
|
9
|
8
|
8,8
|
8,3
|
Dos
|
| Mpeg Encoder 0.07a |
ISO |
1,6
|
9
|
9
|
9
|
7,2
|
9,0
|
CD, Free
|
| BladeEnc 0.54 |
ISO |
2,3
|
9
|
9
|
10
|
7,6
|
9,3
|
Dos, Free
|
| 8Hz 0.11b |
ISO |
2,4
|
9
|
*9,5
|
*9
|
*7,5
|
*9,2
|
Free
|
(*) 8hz : Starts with a pop in the
beginning of the .mp3
III. 190 Kbs (not translated .
similar results)
Generally encoders weakness are more audible in vinyl (or
analogue recorded) 60s, classic rock, jazz or similar
sounds (with many solo vocals, snares and wind instruments). If
you want to encode something like that prefer 160 kbps or more.
Out of List Programs:
1. Sound Limit 1.5 : ISO
program. Failed both C2 & C3. GUI but not friendly (does not
save previous used paths or settings), does not support command
line.
2. Ampeg 4.3: Dos ISO encoder. File format incompatibility
and few available settings.
3. All other programs based on Fraun. libraries or Xing engine.
4. Make-it-Mp3:. Failed to C1 , C2 , C3
5. MpegDJEncoder 1.0: Integrated solution from Xaudio for
CD-to-Mp3. However it is an «amateur» application without many
required tools & settings needed .
6. Music Match Jukebox 2.0: Similar Cd-to-Mp3 solution.
Anyway I think that audio extraction and mp3 management are
complex tasks that cannot be solved with programs like that.
7. L3enc 3.0: . Does not seem to have great differences
with its previous versions.
04/07/98 - Michael Hondrosmos -
mymailbox@iname.com
P.S. What happens today.
As you can see from the program
version numbers 6 months is a long time for a computer science
research !!. I made this test primarily to observe compression
weaknesses. You can use these experiments to make your tests one
year after or with any newer encoder.
Maybe this research is a crap
because there more weaknesses not detected. But anyway this is an
answer what I mean «test» . I m tired hearing words like
«quality» , «lousy» without describing what they did or even
what they mean. Anyway whoever talks about «quality» or «loss»
must give his wav & mp3 (cause & effect) to everybody, to
see what he means .
Regards
Michael H.


|