Mac: The program SoundHack has a function called Header Change that seems to work nicely.
So how do you do this? I know of two ways: And if you happen to have something that runs about 8.25% fast, you may not need to perform a speed correction at all! It's a win-win situation all around. Obviously, you'll need to throw in an extra 8.25% or so, though if you're correcting something that runs too fast, you'll need to slow it down less. Once this is done, you can perform the speed correction. But the original data will remain unchanged - all the individual samples are exactly the same, they're just being read out at a different rate - and will thus not be degraded. This will cause it to play back at 91.875% of the original speed - or, to put it differently, will cause the duration to increase by 8.844%. One solution to this is to change the header of the soundfile so that your computer thinks the 48kHz file is 44.1kHz. While just about no one can hear the degradation from one cycle of resampling, I suspect that two cycles might start to degrade the sound audibly. Speed correction is itself a form of resampling, so if you do a 48kHz > 44.1 kHz resample, AND speed-correct, you're in effect performing two cycles of resampling. However, some of these recordings also need speed correction.
This theoretically degrades the sound*, as does any sample rate conversion that involves non-integer ratios.** But since about 1996 or so, most programs have sample rate conversion algorithms that are extremely well-done, and show very little evidence of artifacting and other problems.
We're seeing a lot of 48kHz recordings come to light, and as most of us know, in order to be burned to CD, these need to be resampled to 44.1kHz.