Arduino based MP3 player

Id like to build an arduino based MP3 player with a touchscreen, long battery and can hold a 64 GB SD card. It doesnt have to be complicated, it just needs to play mp3's and Wavs (and alot of other audio types if possible)
How feasible is this project? im going to be using it at work so it would need to be sturdy. where do i start?

The Arduino can't play MP3's or Wavs without external hardware.

Its processor is not fast enough to decode MP3 and it doesn't have a true Digital To Analog converter.

You will need to use a "shield" to play the files, Google for Arduino MP3 shield.

IMHO, if you also want this to have a touch screen etc, the Arduino is not the best platform for this.
Buy a cheap Android based mobile phone or tablet and write yourself an Android App to do this.

Its more likely than not, going to be cheaper and easier to produce using a phone or small tablet.

Check out the Rogue Robotics MP3 shield, and these MP3 modules from MDFLY

Get that working, add touchscreen from there.

It looks like these

MDFLY - Search Results for "mp3" will only play up to 199 mp3 files, not sure what that limit is or why, but it doesn't fit with a system connected to a large SD storage eg 64Gb

The other shield does look it could work

However by the time you factor the cost of that MP3 shield

Now only CAD$39.99 (CAD$44.99 with headers).

And the cost of a touch screen from Adafruit

2.8" TFT LCD $29.95

Plus an Uno e.g. $15

It doesn't seem like a very cost effective solution.

Unless power consumption is a serious problem

e.g. I recently bought some 7 inch 1Ghz single core Android tablets with 16G internal SD for less than $50

which would do the job much better

Something like a cheap android tablet can do:

What exactly is an arduino doing in this project? Is it just for learning arduino?

Liudr has of course answered you in full.

What I find annoying about MP3 players, is lack of features for listening to podcasts, specifically the ability to remember the position in a file during standby (over a number of days) and actually functional fast-forward or slider facilities to position within a file.

Constructing a complete player just to (hopefully) achieve such functionality is however, just not practical.

If you want an event-driven MP3 player that plays certain tunes depending on what happens, then you can still use the said android tablet and slave an arduino to sense the events. You may be able to use arduino micro to send keyboard short cuts to play certain tunes (I know you can do that with windows desktop icons.)

This has been tested on win 8.1. If you set a short cut for a program to be ctrl + alt + 1, then let leo or micro send this:

      Keyboard.press(KEY_LEFT_CTRL);
      Keyboard.press(KEY_LEFT_ALT);
      Keyboard.press('1');
      delay(100);
      Keyboard.releaseAll();

Tested with minimal latency, especially when the mp3 file is already open. It works under desktop or metro.

Raidenbeats:
Id like to build an arduino based MP3 player with a touchscreen, long battery and can hold a 64 GB SD card. It doesnt have to be complicated, it just needs to play mp3's and Wavs (and alot of other audio types if possible)
How feasible is this project? im going to be using it at work so it would need to be sturdy. where do i start?

It is certainly feasible, whether it is cost-effective or practical I leave up to you. It's nice to have something which you can say "I made that".

I have an AVR based MP3 which has worked well for several years, initially I was designing my own hardware but then a commercial board became available which exactly suited my needs, the Yammp3/USB, which is no longer available. One day I will create a new version with faster ARM processor, touch screen etc.

For a while I was involved with the Lyre project, an Open Source music player for Rockbox firmware, but due to various reasons it didn't get anywhere. It was based on an iMX233 ARM9 cpu, chosen because it was one of the few ARM chips in an LQFP package, but now there plenty of Cortex-M3 and M4 chips available.

The 8-bit AVR cpus are not fast enough to decode MP3, but VLSI make very good decoder chips which are quite easy to use. There are some others available as well. They are limited in the formats they can decode, they have a preprogrammed DSP built in.

A Due should be fast enough to decode MP3, and other formats, directly. I think you might still need an external audio DAC for good quality. For a portable/battery type device, I would take a close look at Teensy 3.1. It's small and powerful, and has good Arduino support.

well i appreciate all the responses to this topic!! i definitely wanna do this just to learn arduino at the very elast, thanks for all the links to differnet shields