I'm looking for a shield (for an UNO), schema or ... to be able to play an MP3 at variable speed. The range I am looking for is 25 .. 400% if possible but 50..200% would allready be great. Pitch should bend so get higher and lower.
The Adafruit Wave shield can do it for wav files, but that means that all mp3's need to be converted (again and again) The trick is adjusting the play - interrupt https://blog.adafruit.com/2008/05/21/wave-shield-bending-the-playback-sample-rate/
Currently I am thinking of buying these https://www.adafruit.com/product/1381 as they do a good job playing MP3's but AFAIK the lib has no variable speed. - https://github.com/adafruit/Adafruit_VS1053_Library/blob/master/Adafruit_VS1053.h I might need to tweak timer interrupt here to get it done.
The library gelow has a setPlaySpeed() but only whole factors for fastforward (too rough). https://github.com/madsci1016/Sparkfun-MP3-Player-Shield-Arduino-Library/blob/master/SFEMP3Shield/SFEMP3Shield.cpp