Analysis of the MP3 decoding algorithm principle. Part 2


Free Download Mp4Gain
picture

Analysis of the MP3 decoding algorithm principle. Part 2

Mp3 Decoding

Synchronization and error checking includes header information decoding module.

MP3 Decoding

After the main control module starts to work, the main control module transfers the data buffer of the bit stream to the synchronization and error checking module. This module includes two functions, namely header information decoding and frame decoding Side information decoding, scale factor decoding and Huffman decoding are performed according to your information, and the obtained results are obtained after of inverse quantization, stereo decoding, alias reduction, IMDCT, frequency inversion, and synthetic polyphase filtering. of the left and right channels is put into the output buffer by the main control module and sent to the sound playback device (in short, it’s very complicated).

2. Main control module
The main task of the main control module is to operate the input and output buffers and to call other modules to work together. Among them, the input and output buffers are provided by the DSP control module interface.

The data in the input buffer is the original mp3 compressed data stream. The DSP control module provides a buffer larger than the maximum possible frame length at a time. This buffer is the same as the data after the last offset (must be less than one frame) concatenated to form a new buffer.

The data stored in the output buffer is the decoded PCM data, which represents the amplitude of the sound. It consists of a fixed-length buffer. Calling the DSP control module’s interface function returns the main pointer. After the output buffer is filled, interrupt processing is called to output it to the audio ADC chip ( stereo audio DAC and audio ADC) connected to the I2S interface. DirectDrive headphone amplifier) ​​to output analog sound.

3. Synchronization and error detection
The error detection and synchronization module is mainly used to find the position of the data frame in the bit stream and decode the frame header, CRC check code and frame side information from this position, and the decoding results are used for subsequent scaling factors. Decoder module and Huffman decoder module.


Free Download Mp4Gain
picture


Mp4Gain Main Window
picture


Mp4Gain Features
picture


Free Download Mp4Gain
picture

Author: R. Arias

R. Arias is the author of this article and has extensive experience for more than 30 years as a recording engineer and audio specialist, as well as more than 20 years of experience creating algorithms related to audio and video. Linkedin