Does anybody have a reference describing the MP3 algorithm in a step-by-step manner and clear to understand?

These references were a little bit confusing:

I am willing to encode a bitstream to MP3 after reading the reference that you introduce, manually, for a complete understanding of the procedure.

  • 1
    $\begingroup$ Have you seen the book "Introduction to Digital Audio Coding and Standards" by Marina Bosi and Richard Goldberg ? $\endgroup$
    – Fat32
    Jun 16, 2016 at 13:17
  • $\begingroup$ You might be interested in this answer: stackoverflow.com/a/7915379/758666 $\endgroup$
    – wip
    Sep 12, 2019 at 12:45

2 Answers 2


A compression standard is a quite delicate thing, that took years to develop and tune. I suggest Analysis of the MPEG-1 Layer III (MP3) Algorithm Using MATLAB, 2012 by Jayaraman J. Thiagarajan and Andreas Spanias. After a general overview, it leads you step by step though the different blocks of the whole scheme, providing some Matlab code for each of them.


The papers you found seem to me quite good references, I've read them briefly and will surely want to study them thoroughly, +1 for that. But your question does not seem to make a lot of sense, or at least it does not have a viable answer.

The procedure is an extremely complex one (as you've realized by the reading the papers) and is built on multiple layers of basic calculus, Fourier tranforms, audio engineering, signal processing, etc. You can't understand the procedure without understanding the theory.

Also it's not humanly possible, in practical terms, to manually encode an audio file by hand. You have to do literally thousands (probably hundreds of thousands, for a complete MP3 implementation) of complex arithmetic operations just to encode a single audio frame of, say, 512 samples. That's just about 0.01 seconds of music at 44.1KHz sampling rate.

Perhaps you should aim your learning efforts at less advanced stuff to begin with?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.