It is pretty simple to build a simple audio player with the help of the Stream API. E.g. a SD file is a subclass of an Arduino Stream, so all you need to do is to copy from the file stream to the ...
Unfortunately the available memory on Microcontrollers is quite restricted and we do not get very far by storing a (uncompressed) WAV file e.g. in program/flesh memory, so I started to look into ...