MP3

06 Nov 2010

HI,

I'm looking for a mp3-lib for the 1768 based mbed.

Is there any idea?

br

06 Nov 2010

A Library I don't know of.

I saw this entry lately. Maybee it is of some inspiration:

http://mbed.org/cookbook/MP3-Player

06 Nov 2010
user Ton van der Pol wrote:

A Library I don't know of.

I saw this entry lately. Maybee it is of some inspiration:

http://mbed.org/cookbook/MP3-Player

Thanks for this hint, but this discribes the addon of a hw-unit. I'm looking only for a sw-solution.

br

08 Nov 2010

As far as I know, the mbed has a hard time outputting quality audio using the AnalogOut. Furthermore, I doubt that there is enough RAM to decode the mp3 file and play it on the fly.

08 Nov 2010

I think it may be possible. The LPC2148 (which is alleged to be the Mbed chip elsewhere in these pages) can play mono (at least) mp3 audio, according to a NXP app note - LIBMAD port - http://www.circuitcellar.com/library/print/0906/Szymanski194/index.htm . Generally I think it is around 30Mips and over 35KB Ram required for the Helix decoder https://helixcommunity.org/viewcvs/datatype/mp3/codec/fixpt/ - although in practice I have no idea as I have not done this.

I have been reading up and searching on this topic - AFAIK it should not be too difficult to port the Helix code to M3. http://www.microchip.com/forums/m532834.aspx has details for porting to the PIC32 - although that is 128KB Ram device. Still it has a touchscreen gui and is reading on the fly from a Flash drive. Also on TI's site http://e2e.ti.com/support/microcontrollers/stellaris_arm_cortex-m3_microcontroller/f/471/t/44580.aspx has some guidelines from someone who used a Stellaris M3 Cortex. And elsewhere the STM Primer has been used - http://www.stm32circle.com/projects/project.php?id=82

You may need an i2s dac for quality - or use the lower quality PWM output to get started. The challenge is for the Mbed ( as opposed to the LPC1768) - RAM usage for reading flash drives with the c++ libraries is not apparent - or I have not found out as yet. But I think it is a matter of time for the mbed. It would be a great "Hello world" project if we could drop a small mp3 + the bin file in the mbed flash drive.

08 Nov 2010

The classic iPod has an 80MHz processor while the mbed is 96MHz, so it should work. However, there is not enough RAM to make a good onboard buffer. Easy to overcome by using external buffers, however.

09 Nov 2010

Thanks all a lot.

I will now investigate the new input

11 Nov 2010

The iPod had two 90MHz arm cores and an audio codec to deal with the decoding of audio and audio output.

I2S would definately help matters.. But if you are going as far as adding a quality DAC, why not just use an mp3 decoder (which should include its own DAC etc..) to begin with. Memory would still be an issue. You can use external memory and I believe SPI should be fast enough to interface the memory. Anyway. this would definately be an interesting project. I was trying to use the mbed as a DSP platform (i.e. guitar effects) and I found that the bottleneck was the AnalogIn/Out and eventually gave up.