Notes by ff123
The various encoders can be identified by looking at the output they produce in the time and frequency domains. I generated a stereo, 10 second test tone-sweep (4.5kHz to 22kHz). The last 5 seconds of this sweep were encoded with various engines, then decoded back to .wav format and converted to mono to increase the vertical resolution of the time-domain graphs (L and R channels were identical in all cases, except for the FhG codec found inside Liquifier Pro 5.0). The file halfsweep.flac is available from my Audio Samples Page. It has been compressed using the lossless compressor, FLAC. Tone sweeps generated with Sound Forge cause problems for codecs (see my MP3ENC clicking noises page). This makes them ideal for creating signature plots. It turns out though, that signatures made from sweeps aren't quite enough to distinguish one codec variation from another. So to further discriminate variations among the broader codec families, I encoded a short clip of applause at 128kbs (you can download this clip from the Lame Quality and Listening Test Information site).
Please note that I advocate subjective listening tests of real music to evaluate codec quality. One might be tempted to hypothesize that one codec should sound better than another because it has a better-looking response, but listening tests are the real proof of the pudding!
Thanks to debtman7 and to TLO (web page here) for providing me with the MacOS mp3 signature files.
There are a variety of FhG mp3 engines:
1. Version 1.0 build 63i, found in programs such as Opticom .mp3
Producer Pro 2.1 as a program-internal codec, and in a hacked
distribution ("Radium") as an external (ACM) codec,
where it has a version of 1.2 build 63i. There is a hacked
version of .mp3 Producer Pro, which is billed as "freeware"
and is sometimes referred to by users as L3 Producer Pro.
Producer Pro's internal codec encodes only with joint-stereo at
192kbs. The hacked external codec allows the option of choosing
the stereo mode and encoding with bitrates of 224 and 320. Plus
it's faster.
2a. "Alternate-bad" codec, found in such applications
as Cool Edit and MusicMatch Jukebox 5
2b. "Alternate" codec, found in Sound Forge 4.5h (commp3.dll
version 1.0, build 219) and MusicMatch Jukebox 6 -- same as
"Alternate-bad" except it doesn't crash or produce bad-looking
output with tone sweeps; it sounds different as well)
3a. "FastEnc" codec, found in MusicMatch 5 and Cool
Edit Pro with the MP3 ME plugin (but not in Cool Edit 2000)
3b. "FastEnc-bad" codec, found in Sound Forge 4.5h (commp3.dll
version 1.0, build 219) and MusicMatch Jukebox 6 -- same as
"FastEnc" except that it has a bug in it which
attenuates the out-of-phase signals, resulting in a very "dry"
sound.
4. MP3ENC 3.1 codec (September 23, 1998)
5. MP3ENC 3.1.1 codec (April 28, 2000, not distributed to the
general public; that includes me). Note; Ivan Dimkovik, developer
of Psytel AAC, writes: "MP3enc 3.1.1 is
actually a name for FhG MP3 library, version 3.1.1 (dated march,
2000). This library has both CBR and VBR modes and it is built
into many software packages. It is possible to get the library by
signing NDA with Fraunhofer." So it is my guess that
this library contains the codecs referred to above as "Alternate
and FastEnc."
6. Liquid Audio codec
Click on thumbnail images to zoom.
Alternate Codec: The half-sweep plots show that these all belong to the same codec family. Fraunhofer has evidently updated and improved the sound of this codec, where it is now used in programs such as Sound Forge 4.5h and MusicMatch Jukebox 6.
This is the middle setting in each of the programs listed. The half-sweep plots are similar enough to the ones above to make me believe that this is in the same "Alternate" codec family. In Cool Edit, this setting is termed "fast," but it is really just quality setting 3, further supporting this idea.
MP3Enc and the Alternate codecs are related to each other, I think. Both codecs are tripped up by the same difficult-to-encode pieces of music, and both take a very long time to encode at their highest quality settings. MP3Enc and Alternate are the only codecs I've heard to produce "dropouts" as artifacts (see the Lame test samples site under the BlackBird.wav entry).
| Engine | Time-domain response, half-sweep 192kbs (stereo) |
Frequency-domain response half-sweep 192kbs (stereo) |
Frequency-domain response Applaud clip 128kbs (joint stereo) |
| MP3ENC 3.1, qual9 |
The lowest setting in Sound Forge ("fastest") is the same as the lowest setting in MusicMatch ("normal"). Cool Edit 2000 doesn't seem to have a quality setting which produces a signature that looks like this, but Cool Edit Pro with the MP3 ME plugin does. On the applaud clip, the Sound Forge 4.5h and MusicMatch Jukebox 6 implementations of FastEnc looks markedly different from all of the other codecs (See my page, Bug in latest FhG FastEnc).
The FhG mp3 codec within Liquifier Pro does not produce repeatable encodes with halfsweep.wav, even within the same session. This is apparently the result of watermarking (?) Shown below are two encodes of halfsweep.wav using the exact same settings.
| Engine | Time-domain response, half-sweep 192kbs (stereo) |
Frequency-domain response half-sweep 192kbs (stereo) |
Frequency-domain response Applaud clip 128kbs (joint stereo) |
| Qdesign MVP 1.2.51 |