I have done a MIDI project: 14 Track Drum Machine + Groove Sequencer. And now I'm moving towards adding Audio to it, possible as a second Arduino project, like a daughter-board or just a new product itself.
Now I'm wondering if I could use the Arduino to output quality drum-sounds, or even creating a multi-arduino pcb, each chip doing 1 or 2 voices at least. Still brainstorming for now. ;-)
What about using a vs1053 http://www.sparkfun.com/datasheets/Components/SMD/vs1053.pdf?
It got a special real time midi mode (setting GPIO0 to low and GPIO1 to high during boot) and is very easy to hook up.
If you use the sparkfun breakout board be reminded that you should solder the XTEST pin to VDD (they forgot :astonished: it on the board see also comments on their website http://www.sparkfun.com/products/8954 ).
The vs1053 can also receive Audio digital data (i.e. simple PCM RIFF audio, MP3, OGG etc.) and will DAC it for you (Stereo).
could use the Arduino to output quality drum-sounds
That is a bit tricky as the arduino doesn't have the memory for outputting real samples. However the Lady Ada wave shield will allow you to output .wav samples but not of any great quality, just 22K 16 bit files.
I wonder about this:
With some special programming tricks it is possible to produce 14-bit audio by combining two channels set at different volumes, giving two 14-bit channels instead of four 8-bit channels. This is done by playing the high byte of a 16 bit sample at maximum volume, and the low byte at minimum volume.
I could just do regular vintage analog drum sounds, as they don't require memory, only math, filters and envelopes. And see if they sound good in 14-bit. (internally they would be processed in 16 bit floats)
I still can't understand that 14-bit trick...