Dave Chapman:
The most common case will be downsampling 48KHz->44.1KHz, but there are
also users who need upsampling from various lower frequencies (e.g. for
use with audio books).
So we're looking for pointers to any high quality (but fast!) resampling
code that could be used.
I recently did a lot of benchmarking between libsamplerate and mus_src
in clm/sndlib. My result was quite interesting, the fastest mus_src sinc
resampler where a lot faster than the fastest libsamplerate resampler.
I don't have the results available right now, but I remember that mus_src
performance wasn't very far from beating the linear resampler in
libsamplerate.
I did a lot of test with various types of data and compiler-options, so I
don't think it was a coinsidence. However, it might have been because
of some optimalization gcc was doing or something to do with the
cache. The mus_src code is far smaller and easier to read than the one
for libsamplerate.
I did not hear any difference in soundquality, but I guess there might be
a difference.
Sndlib:
http://ccrma.stanford.edu/software/snd/snd/sndlib.html
mus_src is available in the file clm.c .
libsamplerate:
http://www.mega-nerd.com/SRC/
A third program is the original sinc-resampler from Julius Smith:
http://ccrma-www.stanford.edu/~jos/resample/
I don't know how this one performs compaired to the other two though.
--