diff options
author | andrew@webrtc.org <andrew@webrtc.org> | 2015-03-19 20:06:29 +0000 |
---|---|---|
committer | andrew@webrtc.org <andrew@webrtc.org> | 2015-03-19 20:07:43 +0000 |
commit | 04c50981f8574b4ef3f8751ac37d0eb50a569a2b (patch) | |
tree | 9811b4aa57de737fa169948d9c272de3e5e369b8 /webrtc/modules/audio_processing/transient | |
parent | ba86031b34f0bf425efb09694c1ff5437f218a2b (diff) | |
download | webrtc-04c50981f8574b4ef3f8751ac37d0eb50a569a2b.tar.gz |
Add the Ooura FFT to RealFourier.
We are using the Ooura FFT in a few places:
- AGC
- Transient suppression
- Noise suppression
The optimized OpenMAX DL FFT is considerably faster, but currently does
not compile everywhere, notably on iOS. This change will allow us to use
Openmax when possible and otherwise fall back to Ooura.
(Unfortunately, noise suppression won't be able to take advantage of it
since it's not C++. Upgrade time?)
R=aluebs@webrtc.org, mgraczyk@chromium.org
Review URL: https://webrtc-codereview.appspot.com/45789004
Cr-Commit-Position: refs/heads/master@{#8798}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8798 4adac7df-926f-26a2-2b94-8c16560cd09d
Diffstat (limited to 'webrtc/modules/audio_processing/transient')
-rw-r--r-- | webrtc/modules/audio_processing/transient/transient_suppressor.cc | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/webrtc/modules/audio_processing/transient/transient_suppressor.cc b/webrtc/modules/audio_processing/transient/transient_suppressor.cc index 44ea6bf233..2f79a20ac7 100644 --- a/webrtc/modules/audio_processing/transient/transient_suppressor.cc +++ b/webrtc/modules/audio_processing/transient/transient_suppressor.cc @@ -18,14 +18,12 @@ #include <set> #include "webrtc/base/scoped_ptr.h" +#include "webrtc/common_audio/fft4g.h" #include "webrtc/common_audio/include/audio_util.h" #include "webrtc/common_audio/signal_processing/include/signal_processing_library.h" #include "webrtc/modules/audio_processing/transient/common.h" #include "webrtc/modules/audio_processing/transient/transient_detector.h" #include "webrtc/modules/audio_processing/ns/windows_private.h" -extern "C" { -#include "webrtc/modules/audio_processing/utility/fft4g.h" -} #include "webrtc/system_wrappers/interface/logging.h" #include "webrtc/typedefs.h" @@ -39,10 +37,12 @@ static const size_t kMinVoiceBin = 3; static const size_t kMaxVoiceBin = 60; namespace { + float ComplexMagnitude(float a, float b) { return std::abs(a) + std::abs(b); } -} + +} // namespace TransientSuppressor::TransientSuppressor() : data_length_(0), |