This page is about
mp3guessenc, a small utility for analyzing audio mpeg
files and detecting the encoder used (when layer III).
Further, it can detect
many details about the mpeg audio stream and print out lots of useful
Supported streams are
mpeg 1, mpeg 2 and unofficial mpeg 2.5, layer I, layer II and layer III
Xing tag, lame tag, VBRI
tag, Id3 tags (both 1.x and 2.x) and APE tags (both v1 and v2) are detected as well.
Now you can look inside
your digital audio collection as you never did before!
There is more to come, so
Systems mp3guessenc will run on
mp3guessenc is available for POSIX
systems such as Linux
(it is actually developed on an Ubuntu
distribution) and recent releases of HaikuOS.
Also, you will find a ready-to-go Windows(R) command line executable (mp3guessenc.exe) into the tarball.
I successfully built mp3guessenc in a x86 (32 bit) environment using
gcc (and mingw),
tcc, the Tiny C Compiler.
Further, a prerelease version of 0.25beta2 builds into a
16 bit executable
and runs pretty well in
thanks to DJGPP(read more).
Last, (atm) mp3guessenc has no dependencies.
2012/04/21, "Sparrow's Nightmare"
Less warnings during analysis and more compatibiliy with layer III
mp3guessenc-0.25alpha22 (48.1 kb)
2012/01/16, "70 Years Are Not Enough"
Free format bitstreams are now supported, new calculation for framesize
now brings great speed gain
mp3guessenc-0.25alpha21 (44.0 kb)
2011/12/26, "Smells Like Release Spirit"
This release fixes a buffer overflow, fixes printed informations and
adds a Makefile
mp3guessenc-0.25alpha20 (44.2 kb)
2011/11/30, "A Release With No Name"
This release brings code optimizations, an enriched frame histogram and
compliancy with latest lame tags
mp3guessenc-0.25alpha19 (24.6 kb)
Added workaround for a random appearing stack smashing error
mp3guessenc-0.25alpha18 (23.3 kb)
(I can't remember when it came)
Reworked the code for extracting lame string
mp3guessenc-0.25alpha (40.3 kb)
until 2011/03/04 (the code itself prints alpha 15)
Beginning of the journey... Added support for VBR tags and lame tag,
better support for id3v1/id3v2 tags, added lots of comments, fixed
compiler warnings, added early support for all layers (I/II/III),
string alignment, small code modifications and more, more, more...
(guess what? larger packages include win32 executable built using mingw)
You can browse all mp3guessenc releases here.
Full changelog is available here.
Lots of internet docs and technical details I've read before putting my
hands into mp3guessenc.
(thanks to Naoki for pointing me to this)
Implementation details about an mp3 decoder. This zipfile actually
original document in Microsoft(R) Word I-don't-know-the-version format,
messy layout and some missing images (they're actually a lot). I tried
to edit it in order to increase readability, so you can download this
recent version here in
OpenDocument format and here in
PDF. Note that some errors may still hide in there, you know, I'm
just a human being :-)
In early months of 2011 I stumbled upon this small utility, released back in
2002 by Naoki
Shibata. I enjoyed it very soon. I realized the code was fully
functional and reliable, nevertheless it offered room for improvements.
I made several small and tiny modifications and, after receiving
Naoki's agreement, I took over the task (and fun) to update the whole
The project has now its custom page on