diff options
author | Mathias Agopian <mathias@google.com> | 2012-10-26 14:11:01 -0700 |
---|---|---|
committer | Mathias Agopian <mathias@google.com> | 2012-10-26 14:58:43 -0700 |
commit | 51ba3c7c9a4a238cdef57ad75a2d8f406ffd4515 (patch) | |
tree | 235f1520ef4211d676bb9272a73ffb0e1c82b52c /services/audioflinger | |
parent | 3bd72cc23f74e750069a2943ad3d5c9af3be4b55 (diff) | |
download | frameworks_av-51ba3c7c9a4a238cdef57ad75a2d8f406ffd4515.zip frameworks_av-51ba3c7c9a4a238cdef57ad75a2d8f406ffd4515.tar.gz frameworks_av-51ba3c7c9a4a238cdef57ad75a2d8f406ffd4515.tar.bz2 |
reenable the cubic resampler
cubic resampler was disabled because it hadn't been qualified,
however after I did some tests, it does improve significantly
the sound quality over the order-1 resampler, even if it is
still quite bad.
also HIGH_QUALITY resampler was partially disabled, it's now
fully enabled. It's a big improvement over the cubic resampler
in terms of aliasing noise (it's not as good in the pass-band).
Change-Id: I70e3658c255896588642697be9eb594ff4ec0f8b
Diffstat (limited to 'services/audioflinger')
-rw-r--r-- | services/audioflinger/Android.mk | 4 | ||||
-rw-r--r-- | services/audioflinger/AudioResampler.cpp | 4 |
2 files changed, 1 insertions, 7 deletions
diff --git a/services/audioflinger/Android.mk b/services/audioflinger/Android.mk index bd9421c..60f231e 100644 --- a/services/audioflinger/Android.mk +++ b/services/audioflinger/Android.mk @@ -19,11 +19,9 @@ LOCAL_SRC_FILES:= \ AudioResampler.cpp.arm \ AudioPolicyService.cpp \ ServiceUtilities.cpp \ + AudioResamplerCubic.cpp.arm \ AudioResamplerSinc.cpp.arm -# uncomment to enable AudioResampler::MED_QUALITY -# LOCAL_SRC_FILES += AudioResamplerCubic.cpp.arm - LOCAL_SRC_FILES += StateQueue.cpp # uncomment for debugging timing problems related to StateQueue::push() diff --git a/services/audioflinger/AudioResampler.cpp b/services/audioflinger/AudioResampler.cpp index ffea9b9..2c3c719 100644 --- a/services/audioflinger/AudioResampler.cpp +++ b/services/audioflinger/AudioResampler.cpp @@ -82,10 +82,8 @@ bool AudioResampler::qualityIsSupported(src_quality quality) switch (quality) { case DEFAULT_QUALITY: case LOW_QUALITY: -#if 0 // these have not been qualified recently so are not supported unless explicitly requested case MED_QUALITY: case HIGH_QUALITY: -#endif case VERY_HIGH_QUALITY: return true; default: @@ -190,12 +188,10 @@ AudioResampler* AudioResampler::create(int bitDepth, int inChannelCount, ALOGV("Create linear Resampler"); resampler = new AudioResamplerOrder1(bitDepth, inChannelCount, sampleRate); break; -#if 0 // disabled because it has not been qualified recently, if requested will use default: case MED_QUALITY: ALOGV("Create cubic Resampler"); resampler = new AudioResamplerCubic(bitDepth, inChannelCount, sampleRate); break; -#endif case HIGH_QUALITY: ALOGV("Create HIGH_QUALITY sinc Resampler"); resampler = new AudioResamplerSinc(bitDepth, inChannelCount, sampleRate); |