I see this chip doesn't get the data directly from the SD card, it has to be streamed by another device.
Since the SPI bus is shared between card and decoder, the maximum "bandwidth" achievable for an AVR at 16 MHz, is around 37 KB/s (303 Kbit/s).
Obiously works fine for MP3 files with a bitrate lower than 300 kbit/s.However, on a WAV file, bitrate is usually way higher; so my guess of your distortion is a buffer underrun on the decoder, due to a slow data transfer.If you are trying to stream CD-quality WAV files, is basically impossible on an AVR.CD audio is encoded as LPCM samples, 16 bits (2 bytes) per sample, it's stereo so 32 bits (4 bytes) for both channels, and there are 44100 samples per second.If you do the math, you'll need a data transfer rate of at least 2 * 2 * 44100 = 176400 bytes per second (172 KB/s or 1.4 Mbit/s). On an AVR, such speed isn't achievable even with the SD card alone.For uncompressed LPCM WAV files, your only options are:mono 8 bits @ 22050 Hzstereo 8 bits @ 11025 Hzmono 16 bits @ 11025 Hzstereo 16 bits @ 5000 HzRemember that lower sample rates makes the audio sound more "muffled".
Yes, I believe the MCU takes the file from the SD card, saves it in local memory, then sends it to the chip to be decoded.
How did you yield the max bandwidth for an AVR?
is this the max bandwidth of the MCU or the SD card?
I did not know wav files required such a high sample rate.