..\doc\test_result.txtcontain reports of test streams decoding.
MP3 decoder library project for Microchip DSC dsPIC is based on well known fixed-point MP3 decoder MAD. Generally speaking this project based on another MAD port for TI TMS320C55xx that you can find in net (author: Grigory Abuladze).
I rewrite all assemblers routines, check alingment (TI CCS assume that char size is 16 bit), check all endian-sensitive operations (TMS320 is big-endian, while dsPIC is little-endian). I use only static data allocation in my port.
dsPIC33 MAD MP3 decoder is available under the terms of the GPL
constsection (totally 18% of dsPIC33FJ256GP710 flash size)
Today the only one Microchip DSC on which you can run this code is dsPIC33FJ256GP710. This is only because of SRAM memory requirements - any dsPIC33 have enough MIPS for decode low-rata MP3 streams.
Project archive contain test MP3 streams with different bitrates. Productivity estimated as time needed for stream decode (without audio buffer
write functions) on 40 MIPS.
The test results shows that current version can decode in real time:
The dsPIC MAD decoder need about 33.6 MIPS for decode stereo stream 32 kHz @ 128 kbps and 6.8 MIPS for decode stereo stream 8 kHz @ 20 kbps.
Full test report you can find in