/external/webrtc/webrtc/modules/audio_processing/aec/ |
aec_core.c | 12 * The core AEC algorithm, which is presented with time-aligned signals. 15 #include "webrtc/modules/audio_processing/aec/aec_core.h" 29 #include "webrtc/modules/audio_processing/aec/aec_common.h" 30 #include "webrtc/modules/audio_processing/aec/aec_core_internal.h" 31 #include "webrtc/modules/audio_processing/aec/aec_rdft.h" 102 // Delay Agnostic AEC parameters, still under development and may change. 270 static void OverdriveAndSuppress(AecCore* aec, 281 hNl[i] = powf(hNl[i], aec->overDriveSm * WebRtcAec_overDriveCurve[i]); 293 static int PartitionDelay(const AecCore* aec) { 302 for (i = 0; i < aec->num_partitions; i++) 1426 AecCore* aec = malloc(sizeof(AecCore)); local [all...] |
system_delay_unittest.cc | 13 #include "webrtc/modules/audio_processing/aec/aec_core.h" 15 #include "webrtc/modules/audio_processing/aec/echo_cancellation_internal.h" 16 #include "webrtc/modules/audio_processing/aec/echo_cancellation.h" 27 // Initialization of AEC handle with respect to |sample_rate_hz|. Since the 45 Aec* self_; 71 self_ = reinterpret_cast<Aec*>(handle_); 75 // Free AEC 99 // Initialize AEC 101 EXPECT_EQ(0, WebRtcAec_system_delay(self_->aec)); 128 WebRtcAec_system_delay(self_->aec)); [all...] |
aec_core.h | 12 * Specifies the interface for the AEC core. 57 void WebRtcAec_FreeAec(AecCore* aec); 58 int WebRtcAec_InitAec(AecCore* aec, int sampFreq); 67 void WebRtcAec_BufferFarendPartition(AecCore* aec, const float* farend); 68 void WebRtcAec_ProcessFrames(AecCore* aec, 78 int WebRtcAec_MoveFarReadPtr(AecCore* aec, int elements); 83 // values we mean values that most likely will cause the AEC to perform poorly.
|
aec_core_sse2.c | 12 * The core AEC algorithm, SSE2 version of speed-critical functions. 20 #include "webrtc/modules/audio_processing/aec/aec_common.h" 21 #include "webrtc/modules/audio_processing/aec/aec_core_internal.h" 22 #include "webrtc/modules/audio_processing/aec/aec_rdft.h" 369 static void OverdriveAndSuppressSSE2(AecCore* aec, 377 const __m128 vec_overDriveSm = _mm_set1_ps(aec->overDriveSm); 423 hNl[i] = powf(hNl[i], aec->overDriveSm * WebRtcAec_overDriveCurve[i]); 443 static int PartitionDelaySSE2(const AecCore* aec) { 452 for (i = 0; i < aec->num_partitions; i++) { 459 const __m128 vec_wfBuf0 = _mm_loadu_ps(&aec->wfBuf[0][pos + j]) [all...] |
aec_core_neon.c | 12 * The core AEC algorithm, neon version of speed-critical functions. 22 #include "webrtc/modules/audio_processing/aec/aec_common.h" 23 #include "webrtc/modules/audio_processing/aec/aec_core_internal.h" 24 #include "webrtc/modules/audio_processing/aec/aec_rdft.h" 382 static void OverdriveAndSuppressNEON(AecCore* aec, 390 const float32x4_t vec_overDriveSm = vmovq_n_f32(aec->overDriveSm); 444 hNl[i] = powf(hNl[i], aec->overDriveSm * WebRtcAec_overDriveCurve[i]); 456 static int PartitionDelayNEON(const AecCore* aec) { 465 for (i = 0; i < aec->num_partitions; i++) { 472 const float32x4_t vec_wfBuf0 = vld1q_f32(&aec->wfBuf[0][pos + j]) [all...] |
echo_cancellation_internal.h | 15 #include "webrtc/modules/audio_processing/aec/aec_core.h" 28 short initFlag; // indicates if AEC has been initialized 62 AecCore* aec; member in struct:__anon37189 63 } Aec;
|
echo_cancellation.c | 12 * Contains the API functions for the AEC. 14 #include "webrtc/modules/audio_processing/aec/echo_cancellation.h" 25 #include "webrtc/modules/audio_processing/aec/aec_core.h" 26 #include "webrtc/modules/audio_processing/aec/aec_resampler.h" 27 #include "webrtc/modules/audio_processing/aec/echo_cancellation_internal.h" 46 // which are incompatible with the AEC's expectations. Based on measurements 56 // havoc with the AEC's buffering. To avoid this, we set a fixed delay of 20 ms 62 // well to reality. The variance doesn't match the AEC's buffer changes, and the 104 static void EstBufDelayNormal(Aec* aecInst); 105 static void EstBufDelayExtended(Aec* aecInst) [all...] |
aec_core_internal.h | 16 #include "webrtc/modules/audio_processing/aec/aec_common.h" 17 #include "webrtc/modules/audio_processing/aec/aec_core.h" 100 int system_delay; // Current system delay buffered in AEC. 160 // Sequence number of this AEC instance, so that different instances can 196 typedef void (*WebRtcAecOverdriveAndSuppress)(AecCore* aec, 202 typedef void (*WebRtcAecComfortNoise)(AecCore* aec, 209 typedef void (*WebRtcAecSubBandCoherence)(AecCore* aec, 219 typedef int (*WebRtcAecPartitionDelay)(const AecCore* aec);
|
aec_core_mips.c | 12 * The core AEC algorithm, which is presented with time-aligned signals. 15 #include "webrtc/modules/audio_processing/aec/aec_core.h" 20 #include "webrtc/modules/audio_processing/aec/aec_core_internal.h" 21 #include "webrtc/modules/audio_processing/aec/aec_rdft.h" 26 void WebRtcAec_ComfortNoise_mips(AecCore* aec, 41 WebRtcSpl_RandUArray(randW16, PART_LEN, &aec->seed); 276 if (aec->num_bands > 1) { [all...] |
/frameworks/base/media/java/android/media/audiofx/ |
AcousticEchoCanceler.java | 22 * Acoustic Echo Canceler (AEC). 23 * <p>Acoustic Echo Canceler (AEC) is an audio pre-processing which removes the contribution of the 25 * <p>AEC is used by voice communication applications (voice chat, video conferencing, SIP calls) 27 * is highly disturbing. AEC is often used in conjunction with noise suppression (NS). 28 * <p>An application creates an AcousticEchoCanceler object to instantiate and control an AEC 34 * <p>On some devices, an AEC can be inserted by default in the capture path by the platform 36 * call AcousticEchoCanceler.getEnable() after creating the AEC to check the default AEC activation 59 * @return AcousticEchoCanceler created or null if the device does not implement AEC. 62 AcousticEchoCanceler aec = null local [all...] |
/cts/tests/tests/media/src/android/media/cts/ |
AudioPreProcessingTest.java | 110 //Test case 2.1: test AEC creation and release 121 AcousticEchoCanceler aec = AcousticEchoCanceler.create(ar.getAudioSessionId()); local 122 assertTrue("AEC not available but created or available and not created", 123 isAvailable == (aec != null)); 124 if (aec != null) { 125 aec.release(); 131 // 2.2 - AEC Enable/disable 134 //Test case 2.2: test AEC setEnabled() and getEnabled() 147 AcousticEchoCanceler aec = AcousticEchoCanceler.create(ar.getAudioSessionId()); local 148 assertNotNull("could not create AcousticEchoCanceler", aec); [all...] |
/external/webrtc/webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/ |
WebRtcAudioEffects.java | 28 // effects are: AcousticEchoCanceler (AEC), AutomaticGainControl (AGC) and 54 private AcousticEchoCanceler aec = null; field in class:WebRtcAudioEffects 67 // Checks if the device implements Acoustic Echo Cancellation (AEC). 68 // Returns true if the device implements AEC, false otherwise. 88 // Returns true if the device is blacklisted for HW AEC usage. 94 Logging.w(TAG, Build.MODEL + " is blacklisted for HW AEC usage!"); 121 // Returns true if the platform AEC should be excluded based on its UUID. 160 // Returns true if all conditions for supporting the HW AEC are fulfilled. 161 // It will not be possible to enable the HW AEC if this method returns false. 205 // Return null if VoIP effects (AEC, AGC and NS) are not supported [all...] |
/external/webrtc/webrtc/modules/audio_processing/test/ |
debug_dump_test.cc | 409 // AEC configs. 527 EchoCancellation* aec = generator.apm()->echo_cancellation(); local 528 EXPECT_EQ(AudioProcessing::kNoError, aec->Enable(!aec->is_enabled())); 542 EchoCancellation* aec = generator.apm()->echo_cancellation(); local 543 EXPECT_EQ(AudioProcessing::kNoError, aec->Enable(!aec->is_enabled())); 553 EchoCancellation* aec = generator.apm()->echo_cancellation(); local 554 EXPECT_EQ(AudioProcessing::kNoError, aec->Enable(true)); 556 aec->set_suppression_level(EchoCancellation::kLowSuppression)) [all...] |
apmtest.m | 14 % 'aec' The AEC test set. 60 tests = {'apm','apmm','aec','aecm','agc','ns','vad'}; 104 ' -aec --drift_compensation -agc --fixed_digital' ... 116 ' -aec --drift_compensation -agc --adaptive_digital' ... 122 opt = ['-aec --drift_compensation -agc --fixed_digital -hpf -ns ' ...
|
audioproc_float.cc | 57 DEFINE_bool(aec, false, "Enable echo cancellation."); 94 fprintf(stderr, "-aec and -ie require a -dump file.\n");
|
/device/huawei/angler/ |
audio_effects.conf | 207 aec { 219 aec { 233 # aec {
|
/frameworks/wilhelm/tests/examples/ |
slesTestRecBuffQueue.cpp | 47 bool aec = false; variable 216 if (aec) numInterfaces++; 243 if (aec) { 385 /* Enable AEC if requested */ 386 if (aec) { 390 printf("AEC is %savailable\n", SL_RESULT_SUCCESS == result ? "" : "not "); 397 printf("AEC is %s\n", enabled ? "enabled" : "not enabled"); 535 aec = true;
|
/device/google/marlin/ |
audio_effects.conf | 210 aec { 270 aec { 284 # aec {
|
/device/lge/bullhead/ |
audio_effects.conf | 210 aec { 243 aec { 284 # aec {
|
/frameworks/av/media/libeffects/preprocessing/ |
PreProcessing.cpp | 427 // Acoustic Echo Canceler (AEC) 437 webrtc::EchoControlMobile *aec = static_cast<webrtc::EchoControlMobile *>(effect->engine); local 438 aec->set_routing_mode(kAecDefaultMode); 439 aec->enable_comfort_noise(kAecDefaultComfortNoise); 445 webrtc::EchoControlMobile *aec = effect->session->apm->echo_control_mobile(); local 446 ALOGV("AecCreate got aec %p", aec); 447 if (aec == NULL) { 451 effect->engine = static_cast<preproc_fx_handle_t>(aec); 503 webrtc::EchoControlMobile *aec = static_cast<webrtc::EchoControlMobile *>(effect->engine) local 511 webrtc::EchoControlMobile *aec = static_cast<webrtc::EchoControlMobile *>(effect->engine); local 518 webrtc::EchoControlMobile *aec = static_cast<webrtc::EchoControlMobile *>(effect->engine); local [all...] |
/frameworks/opt/net/voip/src/jni/rtp/ |
AudioGroup.cpp | 840 sp<AudioEffect> aec; local 843 aec = new AudioEffect(FX_IID_AEC, 851 status_t status = aec->initCheck(); 853 aec->setEnabled(true); 855 aec.clear(); 858 // Create local echo suppressor if platform AEC cannot be used. 859 if (aec == 0) {
|
/external/webrtc/ |
Android.mk | 116 include $(webrtc_path)/webrtc/modules/audio_processing/aec/Android.mk
|
/external/webrtc/webrtc/modules/audio_processing/ |
Android.mk | 55 $(LOCAL_PATH)/aec/include \
|
/external/webrtc/webrtc/tools/agc/ |
agc_harness.cc | 40 "respectively. Not compatible with -aec."); 47 DEFINE_bool(aec, 54 DEFINE_string(filename, "", "filename for the -aec mode"); 68 "Lastly, it can be used for local AEC testing. In this mode, the first\n" 270 printf("-parallel and -aec are not compatible\n");
|
/external/webrtc/webrtc/voice_engine/ |
voe_audio_processing_impl.cc | 480 EchoCancellation* aec = _shared->audio_processing()->echo_cancellation(); local 481 if (aec->enable_drift_compensation(enable) != 0) { 483 "aec->enable_drift_compensation() failed"); 492 EchoCancellation* aec = _shared->audio_processing()->echo_cancellation(); local 493 return aec->is_drift_compensation_enabled(); 505 // AEC mode 509 // Disable the AECM before enable the AEC 512 "SetEcStatus() disable AECM before enabling AEC"); 523 "SetEcStatus() failed to set AEC state"); 552 // Disable the AEC before enable the AEC [all...] |