Arduino MP3 Player

How would i make an mp3 player with a stand-alone arduino, that is only the parts it takes to make one on a pcb (so that takes shields out of the question). I want to have an lcd screen on the project aswell, so i have to be able to read the data of the mp3 such as: artist album title and length. I would like the files to be stored on an sd card, but anything will do. i would just like it to be easily accessible and easily changed. i also would like it to play asynchronously, so i could play games or look for more music while it plays…

im thinking of using a VS1033D MP3 ic http://www.sparkfun.com/products/8792
with a micro sd card to store the data, i want to have it output by a headphone jack.

I’m not too familiar with either mp3 encoding or decoding or sd card protocol, but im very willing and able to learn.

would this be the easiest way to do it? is there an easier one? I’m just looking for a step in the or the right direction and the help is much appreciated, thanx =)

You would be better off with the rMP3 from Rogue Robotics. There are a lot of examples and it includes many extra features that will be useful in your project (simultaneous filehandles for example so you can have more than one, up to 4, files open) Yes it is a shield but with an arduino pro or even a mini or something (or a custom board), you can connect it up with wires and it then won't be any bigger than the rMP3 itself. It is also standard SD on this module.

I have been reliably informed that there is another board in the pipeline (an update to the uMP3 board) which is much smaller than the rMP3 and I think it will have the option for standard SD or microSD.

If you need something smaller or want to put it on your own board, you can probably speak to them about supplying the chipset and making sure it can work with all the currently available code.

How small does this MP3 player need to be?

Those both seem like good solutions, what do you mean if the arduino is powerful enough? and also it doesnt have to be too small, i was thinking 5x2 inches with 2 one sided pc boards connected through headers… i’d have to study some things… thanks for the help though, and any other help is also appreciated. =)

Controlling all of this can be a large drain on resources if you want to be able to do anything else. The rMP3 shield has it's own seperate ATmega644 processor to ensure that the arduino doesn't need to do too much. The uMP3 has a PIC chip on it performing a similar job.

As you want to be able to do other stuff while the audio is running (playing games especially), you may find that a single ATmega328 is not quite enough.

Mowcius

well, i have to run an lcd, and quite a bit of buttons aswell, but i can use a shift register for those… im really thinking of using the uMP3 player board… it really suits the project im doing, only problem is that it’s $100 lol, just for this small project, but i guess it’s worth it, anyways. the uMP3 board is what i want, and thank for the help.

Leonidas: im thinking of using a VS1033D MP3 ic http://www.sparkfun.com/products/8792 with a micro sd card to store the data, i want to have it output by a headphone jack.

The chip is cool, just stay away from Sparkfun's MP3 breakout boards. See the vlsi forums, they have a problem.

it really suits the project im doing, only problem is that it's $100 lol, just for this small project, but i guess it's worth it, anyways. the uMP3 board is what i want, and thank for the help.

Well if you can wait a bit, I think there is a new version coming (which may be cheaper - I don't know). If you can't wait then the rMP3 is cheaper (if you can afford the extra space).