OSDN Git Service

improve SINC resampler coefficients
authorMathias Agopian <mathias@google.com>
Fri, 26 Oct 2012 20:48:42 +0000 (13:48 -0700)
committerMathias Agopian <mathias@google.com>
Fri, 26 Oct 2012 21:58:42 +0000 (14:58 -0700)
commit443e69625d598ea578e2c838960778ce498fd773
tree4d021ec94a7766aaed15c1d93f3fa7b7d9e89ba1
parentb6cf07ba69018fd4633e1b9f99646f8482c6d76d
improve SINC resampler coefficients

- we increase the interpolation precision from 4 to 7 bits
this doesn't increase CPU power required, it only increases the
size of the filter table but significantly reduces the noise
introduced by the quantization of the impulse response.

- the parameters of the filter are set such that aliasing is
rejected at 80 dB below 20 KHz. Because we don't use a lot of
coefficient (to save compute power), there are quite a bit of
attenuation in the pass-band: starting at 9KHz for the
down-sampler (48 to 44.1), and starting at 13 KHz for the
up-sampler (44.1 to 48) -- the transition band is about 15 KHz.

Change-Id: I855548d2aab8a0fb0d2a2da3a364b6842d7d3838
services/audioflinger/AudioResamplerSinc.cpp
services/audioflinger/AudioResamplerSinc.h