this is from a winamp3 plugin.

Version 1.1
SBLive! resample bugfix component for Winamp3
built by Pul

Freeware component!

USE THIS SOFTWARE AT YOUR OWN RISK !!!
I will not be responsible for anything regarding the use of this software!

If you are not looking for highest audio quality or have no idea about what
distortion is, than this component is of no use for you ... it will only make
your CPU work more on music

but for those with SBLive! or Audigy series of soundcards and there are a lot more
with this issue! this will give you the perfect sound you wanted to hear when
you've bought that soundcard !!!

[The SBLive! issue]

SBLive! has a low quality resample to 48KHz algoritm (or multirate filter
kernel too small...) maybe because to keep low latency to audio stream ...

This is the SBLive! (and not only) problem:

absolutely any audio stream is converted to 48KHz.
the worst performance is 44.1KHz audio streams (cd audio).

Audigy has the same issue except it resamples to 96000Hz but still
kernel size too small so 1% IMD at 16KHz for Audigy2 (www.tomshardware.com)

[The solution:]

my high quality resample to 48KHz (or any >= 48000, that means 96000Hz too)
component for Winamp3.

Testing results:

using SBLive! to resample to 48000:
19KHz IMD=20%
18KHz IMD=10%
16KHz IMD=5%
14KHz IMD=1%
You don't believe me ...???? I've included in component pack generated tones
used in my test versions of 44100Hz and 48000Hz ... Should sound the same !!!

using my component for KernelLength=16000 samples:
19KHz IMD=0.01%
18KHz IMD=0.001%
16KHz IMD=0%

for now it works for .WAV and .MP3 files (because of a Winamp3 small documentation
issue on ChunkLists ... see forums.winamp.com)

CPU Load:
<14% on Duron 825MHz for KernelSize 16000
<5% on Duron 825MHz for KernelSize 6000
<1% on AthlonXP2000+ for KernelSize 20000

[How to Install:]

make sure you've specified WACS folder on install: \...\winamp3\wacs\

[known issues]
might not work for some files, I wait for an official update on winamp forum
about how to use chunklists
until then please be satisfied with this version

works on CDDA,WAV,MP3 streams for sure

<TargetSampleRate> specifies resample target frequency of filter (should be
48000 for SBLive! cards, 96000 for Audigy, and this must be the working
Samplerate of the DSP on your soundcard!!!

<KernelSize> is the multirate kernel filter length in samples of the lowpass
filter. Here are some hints for 48000&96000:
16000 samples for quality described above
6000 samples are enough for 0.1% IMD @ 19KHz and no audible IMD
(IMD is above 20khz and should be rejected by the hardware
lowpass filter of your soundcard)
altering this results:
higher KernelSize => higher quality more CPU load.
lower KernelSize => lower quality less CPU load.
don't alter this if you do not know what means this or if you do not check
the results on a spectrum analyzer!
I've used as spectrum analyzer Goldwave 4.23 and CoolEdit2000 to measure
IMD. To record result just loopback your soundcard output to Line-In and
view the result over SpectrumAnalyzer in realtime.

[Contact:]
email: adi111p@yahoo.com


P.S. Haven't you noticed that DVD movies (sampled to 48000Hz) sounded perfect
on your sound system and Audio CD's didn't????? This is why!