Hi All...
I have been thinking of making my own portable music player that can drive headphones or connect to a car or sound dock via bluetooth. I would also like it to be small.
Looking around, I see there are a few chips that are basically music players all by themselves. Just feed data via SPI. for example: the VS1053B:
https://www.sparkfun.com/products/8892Thing is, this chip is (1) relatively expensive, (2) relatively large and (3) seemingly unavailable other than from SparkFun or AdaFruit. I can't find it on Mouser or DigiKey. The big advantage is that it supports a pile of music formats and can even drive ear buds. A circuit with this chip would be straightforward.
So I'm wondering, in general, how do portable music players work? Do that have an ASIC like this VS1053B or do they use something like a generic, inexpensive processor with DAC an opamp?
I would like to keep it small and jam in a battery with wireless charging, BT and possibly wifi, some memory, a boost regulator and of course the music circuitry. And of course a processor to move the data and do a bunch of other things. I would omit a display and buttons and control the entire thing via a phone app.
So is a dedicated CODEC the way to go, or, since I need a processor anyhow, is it better to let the uC do the decoding?
Thanks for your comments...