summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorMarco Nelissen <marcone@google.com>2011-01-29 09:32:05 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2011-01-29 09:32:05 -0800
commitcce3a1107ef5bf9c8c8dbbaf922a2b33f24abfe6 (patch)
tree1e0b03164753ed7a9a5fb5e98a5cd900288a6580 /media
parent6dfc223e20e65b9938c2903fe47a51cc9a02a71e (diff)
parent47f44fb9b85ac555e5b84b2f5ca8536a85659c3e (diff)
downloadframeworks_av-cce3a1107ef5bf9c8c8dbbaf922a2b33f24abfe6.zip
frameworks_av-cce3a1107ef5bf9c8c8dbbaf922a2b33f24abfe6.tar.gz
frameworks_av-cce3a1107ef5bf9c8c8dbbaf922a2b33f24abfe6.tar.bz2
am c929677e: Merge "Increase the number of useful bits in the spectrum." into gingerbread
* commit 'c929677e017759047d94599faa1b80ebe278fefb': Increase the number of useful bits in the spectrum.
Diffstat (limited to 'media')
-rw-r--r--media/libmedia/Visualizer.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/media/libmedia/Visualizer.cpp b/media/libmedia/Visualizer.cpp
index a660429..43571cf 100644
--- a/media/libmedia/Visualizer.cpp
+++ b/media/libmedia/Visualizer.cpp
@@ -219,8 +219,13 @@ status_t Visualizer::doFft(uint8_t *fft, uint8_t *waveform)
}
for (uint32_t i = 0; i < mCaptureSize; i += 2) {
- fft[i] = workspace[i >> 1] >> 24;
- fft[i + 1] = workspace[i >> 1] >> 8;
+ short tmp = workspace[i >> 1] >> 21;
+ while (tmp > 127 || tmp < -128) tmp >>= 1;
+ fft[i] = tmp;
+ tmp = workspace[i >> 1];
+ tmp >>= 5;
+ while (tmp > 127 || tmp < -128) tmp >>= 1;
+ fft[i + 1] = tmp;
}
return NO_ERROR;