Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(694)

Unified Diff: webrtc/modules/audio_processing/aec/aec_core_internal.h

Issue 2078313002: Remove header files for the AEC and the APM test program that are no longer used. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | webrtc/modules/audio_processing/test/aec_dump_processor.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/modules/audio_processing/aec/aec_core_internal.h
diff --git a/webrtc/modules/audio_processing/aec/aec_core_internal.h b/webrtc/modules/audio_processing/aec/aec_core_internal.h
deleted file mode 100644
index d4fad9e5e63312703f6a39b9aa8c501be98ddc1e..0000000000000000000000000000000000000000
--- a/webrtc/modules/audio_processing/aec/aec_core_internal.h
+++ /dev/null
@@ -1,257 +0,0 @@
-/*
- * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
- *
- * Use of this source code is governed by a BSD-style license
- * that can be found in the LICENSE file in the root of the source
- * tree. An additional intellectual property rights grant can be found
- * in the file PATENTS. All contributing project authors may
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-#ifndef WEBRTC_MODULES_AUDIO_PROCESSING_AEC_AEC_CORE_INTERNAL_H_
-#define WEBRTC_MODULES_AUDIO_PROCESSING_AEC_AEC_CORE_INTERNAL_H_
-
-#include <memory>
-
-extern "C" {
-#include "webrtc/common_audio/ring_buffer.h"
-}
-#include "webrtc/base/constructormagic.h"
-#include "webrtc/common_audio/wav_file.h"
-#include "webrtc/modules/audio_processing/aec/aec_common.h"
-#include "webrtc/modules/audio_processing/aec/aec_core.h"
-#include "webrtc/modules/audio_processing/logging/apm_data_dumper.h"
-#include "webrtc/modules/audio_processing/utility/block_mean_calculator.h"
-#include "webrtc/typedefs.h"
-
-namespace webrtc {
-
-// Number of partitions for the extended filter mode. The first one is an enum
-// to be used in array declarations, as it represents the maximum filter length.
-enum { kExtendedNumPartitions = 32 };
-static const int kNormalNumPartitions = 12;
-
-// Delay estimator constants, used for logging and delay compensation if
-// if reported delays are disabled.
-enum { kLookaheadBlocks = 15 };
-enum {
- // 500 ms for 16 kHz which is equivalent with the limit of reported delays.
- kHistorySizeBlocks = 125
-};
-
-typedef struct PowerLevel {
- PowerLevel();
-
- BlockMeanCalculator framelevel;
- BlockMeanCalculator averagelevel;
- float minlevel;
-} PowerLevel;
-
-class DivergentFilterFraction {
- public:
- DivergentFilterFraction();
-
- // Reset.
- void Reset();
-
- void AddObservation(const PowerLevel& nearlevel,
- const PowerLevel& linoutlevel,
- const PowerLevel& nlpoutlevel);
-
- // Return the latest fraction.
- float GetLatestFraction() const;
-
- private:
- // Clear all values added.
- void Clear();
-
- size_t count_;
- size_t occurrence_;
- float fraction_;
-
- RTC_DISALLOW_COPY_AND_ASSIGN(DivergentFilterFraction);
-};
-
-typedef struct CoherenceState {
- complex_t sde[PART_LEN1]; // cross-psd of nearend and error
- complex_t sxd[PART_LEN1]; // cross-psd of farend and nearend
- float sx[PART_LEN1], sd[PART_LEN1], se[PART_LEN1]; // far, near, error psd
-} CoherenceState;
-
-struct AecCore {
- explicit AecCore(int instance_index);
- ~AecCore();
-
- std::unique_ptr<ApmDataDumper> data_dumper;
-
- CoherenceState coherence_state;
-
- int farBufWritePos, farBufReadPos;
-
- int knownDelay;
- int inSamples, outSamples;
- int delayEstCtr;
-
- RingBuffer* nearFrBuf;
- RingBuffer* outFrBuf;
-
- RingBuffer* nearFrBufH[NUM_HIGH_BANDS_MAX];
- RingBuffer* outFrBufH[NUM_HIGH_BANDS_MAX];
-
- float dBuf[PART_LEN2]; // nearend
- float eBuf[PART_LEN2]; // error
-
- float dBufH[NUM_HIGH_BANDS_MAX][PART_LEN2]; // nearend
-
- float xPow[PART_LEN1];
- float dPow[PART_LEN1];
- float dMinPow[PART_LEN1];
- float dInitMinPow[PART_LEN1];
- float* noisePow;
-
- float xfBuf[2][kExtendedNumPartitions * PART_LEN1]; // farend fft buffer
- float wfBuf[2][kExtendedNumPartitions * PART_LEN1]; // filter fft
- // Farend windowed fft buffer.
- complex_t xfwBuf[kExtendedNumPartitions * PART_LEN1];
-
- float hNs[PART_LEN1];
- float hNlFbMin, hNlFbLocalMin;
- float hNlXdAvgMin;
- int hNlNewMin, hNlMinCtr;
- float overDrive;
- float overdrive_scaling;
- int nlp_mode;
- float outBuf[PART_LEN];
- int delayIdx;
-
- short stNearState, echoState;
- short divergeState;
-
- int xfBufBlockPos;
-
- RingBuffer* far_time_buf;
-
- int system_delay; // Current system delay buffered in AEC.
-
- int mult; // sampling frequency multiple
- int sampFreq = 16000;
- size_t num_bands;
- uint32_t seed;
-
- float filter_step_size; // stepsize
- float error_threshold; // error threshold
-
- int noiseEstCtr;
-
- PowerLevel farlevel;
- PowerLevel nearlevel;
- PowerLevel linoutlevel;
- PowerLevel nlpoutlevel;
-
- int metricsMode;
- int stateCounter;
- Stats erl;
- Stats erle;
- Stats aNlp;
- Stats rerl;
- DivergentFilterFraction divergent_filter_fraction;
-
- // Quantities to control H band scaling for SWB input
- int freq_avg_ic; // initial bin for averaging nlp gain
- int flag_Hband_cn; // for comfort noise
- float cn_scale_Hband; // scale for comfort noise in H band
-
- int delay_metrics_delivered;
- int delay_histogram[kHistorySizeBlocks];
- int num_delay_values;
- int delay_median;
- int delay_std;
- float fraction_poor_delays;
- int delay_logging_enabled;
- void* delay_estimator_farend;
- void* delay_estimator;
- // Variables associated with delay correction through signal based delay
- // estimation feedback.
- int signal_delay_correction;
- int previous_delay;
- int delay_correction_count;
- int shift_offset;
- float delay_quality_threshold;
- int frame_count;
-
- // 0 = delay agnostic mode (signal based delay correction) disabled.
- // Otherwise enabled.
- int delay_agnostic_enabled;
- // 1 = extended filter mode enabled, 0 = disabled.
- int extended_filter_enabled;
- // 1 = next generation aec mode enabled, 0 = disabled.
- int aec3_enabled;
- bool refined_adaptive_filter_enabled;
-
- // Runtime selection of number of filter partitions.
- int num_partitions;
-
- // Flag that extreme filter divergence has been detected by the Echo
- // Suppressor.
- int extreme_filter_divergence;
-};
-
-typedef void (*WebRtcAecFilterFar)(
- int num_partitions,
- int x_fft_buf_block_pos,
- float x_fft_buf[2][kExtendedNumPartitions * PART_LEN1],
- float h_fft_buf[2][kExtendedNumPartitions * PART_LEN1],
- float y_fft[2][PART_LEN1]);
-extern WebRtcAecFilterFar WebRtcAec_FilterFar;
-typedef void (*WebRtcAecScaleErrorSignal)(float mu,
- float error_threshold,
- float x_pow[PART_LEN1],
- float ef[2][PART_LEN1]);
-extern WebRtcAecScaleErrorSignal WebRtcAec_ScaleErrorSignal;
-typedef void (*WebRtcAecFilterAdaptation)(
- int num_partitions,
- int x_fft_buf_block_pos,
- float x_fft_buf[2][kExtendedNumPartitions * PART_LEN1],
- float e_fft[2][PART_LEN1],
- float h_fft_buf[2][kExtendedNumPartitions * PART_LEN1]);
-extern WebRtcAecFilterAdaptation WebRtcAec_FilterAdaptation;
-
-typedef void (*WebRtcAecOverdrive)(float overdrive_scaling,
- const float hNlFb,
- float hNl[PART_LEN1]);
-extern WebRtcAecOverdrive WebRtcAec_Overdrive;
-
-typedef void (*WebRtcAecSuppress)(const float hNl[PART_LEN1],
- float efw[2][PART_LEN1]);
-extern WebRtcAecSuppress WebRtcAec_Suppress;
-
-typedef void (*WebRtcAecComputeCoherence)(const CoherenceState* coherence_state,
- float* cohde,
- float* cohxd);
-extern WebRtcAecComputeCoherence WebRtcAec_ComputeCoherence;
-
-typedef void (*WebRtcAecUpdateCoherenceSpectra)(int mult,
- bool extended_filter_enabled,
- float efw[2][PART_LEN1],
- float dfw[2][PART_LEN1],
- float xfw[2][PART_LEN1],
- CoherenceState* coherence_state,
- short* filter_divergence_state,
- int* extreme_filter_divergence);
-extern WebRtcAecUpdateCoherenceSpectra WebRtcAec_UpdateCoherenceSpectra;
-
-typedef int (*WebRtcAecPartitionDelay)(
- int num_partitions,
- float h_fft_buf[2][kExtendedNumPartitions * PART_LEN1]);
-extern WebRtcAecPartitionDelay WebRtcAec_PartitionDelay;
-
-typedef void (*WebRtcAecStoreAsComplex)(const float* data,
- float data_complex[2][PART_LEN1]);
-extern WebRtcAecStoreAsComplex WebRtcAec_StoreAsComplex;
-
-typedef void (*WebRtcAecWindowData)(float* x_windowed, const float* x);
-extern WebRtcAecWindowData WebRtcAec_WindowData;
-
-} // namespace webrtc
-
-#endif // WEBRTC_MODULES_AUDIO_PROCESSING_AEC_AEC_CORE_INTERNAL_H_
« no previous file with comments | « no previous file | webrtc/modules/audio_processing/test/aec_dump_processor.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698