Tune a piece of music
Essentially what you'll need to do it adjust the pitch of the audio data such that your slightly sharp notes are 20 cents flatter.

By far the easiest way to do this would be to play the audio at a lower sampling rate, which will lower the pitch accordingly.  However, this approach will also slow down the original tempo.

A solution in which the signal retains its speed would be to use a time-scale modification algorithm to speed up the audio while retaining the pitch, followed by playing at a lower sampling rate, which returns the audio to the original tempo, with the desired lower pitch.

Clearly, the factor by which you adjust the time scale and pitch adjustment factor must be carefully chosen to yield the desired results.

In terms of implementation, playing back a reduced sampling frequency is (relatively) trivial.  A frequency domain algorithm which can perform the time-scaling for you is the phase vocoder.  You might check out the following links to help you implement it.

http://homes.esat.kuleuven.be/~bdefraen/Laroche.pdf
http://www.ee.columbia.edu/ln/labrosa/matlab/pvoc/

Good luck!