The Helix MP3 decoder provides Layer 3 support for MPEG-1, MPEG-2, and MPEG-2.5. It supports variable bit rates, constant bit rates, and stereo and mono audio formats. This library implements fixed point solution for PIC32 MCUs.
Run-Time Library Loading (RTLL)
The Helix MP3 decoder source code is open source and is governed by the license described in files that accompany the source code(1). However, Application developers may need to add proprietary code to open source code to meet the target application requirements. When statically compiled with the open source code, this proprietary code may be subject to the open source End User License Agreement. In many cases, this may not be acceptable to application owners. Therefore, this library provides a Run-Time Library Loading (RTLL) technique that enables the preservation of the application’s intellectual property.
Notes: 1) It should be noted that even though the Helix MP3 decoder is free to use and
is open source, the MP3 algorithm itself is not free and has royalties associated with it. These royalties must be paid in order to use the algorithm. For more details, visit http://www.mp3licensing.com
Features(1)
•
|
Pure 32-bit fixed-point implementation
|
•
|
Fully reentrant and statically linkable
|
•
|
Designed for high performance and low power consumption in handheld and mobile devices
|
•
|
Full layer 3 support for:
|
|
MPEG1 layer 3 - sampling frequencies: 48 KHz, 44.1 KHz, 32 KHz
|
|
MPEG2 layer 3 - sampling frequencies: 24 KHz, 22.05 KHz, 16 KHz
|
|
MPEG2.5 layer 3 - sampling frequencies: 12 KHz, 11.025 KHz, 8 KHz
|
•
|
Supports constant bitrate, variable bitrate, and free bitrate modes
|
•
|
Supports mono and all stereo modes (normal stereo, joint stereo, dual-mono)
|
Notes: 1) For more information on implementation and features, visit the Helix MP3 decoder web site at:http://datatype.helixcommunity.org/Mp3dec
Memory Requirements for PIC32
Memory Type
|
Size (in bytes)
|
Remarks
|
Program Memory
|
53000
|
-
|
Data Memory
|
28000
|
Required by decoder only
|
Input Buffer
|
1940
|
Max MP3 frame size
|
Output Buffer
|
2304
|
Max size for stereo mode
|
MIPS Requirements for PIC32
Function
|
MIPS
|
Remarks
|
MP3Decode()
|
26
|
Calculated with code compiled with O3 optimization and processor clock at 80 MHz.
|