3 #ifndef __ADEC_TYPES_H__
4 #define __ADEC_TYPES_H__
7 #include "aec_defines.h"
8 #include "adec_defines.h"
137 int32_t peak_to_average_ratio_valid_flag;
#define ADEC_PEAK_TO_AVERAGE_HISTORY_DEPTH
Number of frames far we look back to smooth the peak to average filter power ratio history.
Definition: adec_defines.h:21
#define ADEC_PEAK_LINREG_HISTORY_SIZE
Number of frames of peak power history we look at while computing AEC goodness metric....
Definition: adec_defines.h:27
adec_mode_t
Definition: adec_state.h:25
@ ADEC_NORMAL_AEC_MODE
ADEC processing mode where it monitors AEC performance and requests small delay correction.
Definition: adec_state.h:26
@ ADEC_DELAY_ESTIMATOR_MODE
ADEC processing mode for bulk delay correction in which it measures for a new delay offset.
Definition: adec_state.h:27
#define AEC_LIB_MAX_PHASES
Maximum total number of phases supported in the AEC library This is the maximum number of total phase...
Definition: aec_defines.h:84
int32_t fixed_s32_t
A 32-bit fixed-point scalar.
Definition: xs3_math_types.h:128
ADEC configuration structure.
Definition: adec_state.h:38
int32_t force_de_cycle_trigger
Definition: adec_state.h:45
int32_t bypass
Definition: adec_state.h:41
ADEC output structure.
Definition: adec_state.h:67
int32_t requested_mic_delay_samples
Definition: adec_state.h:76
int32_t delay_change_request_flag
Definition: adec_state.h:69
int32_t delay_estimator_enabled_flag
Definition: adec_state.h:82
int32_t requested_delay_samples_debug
Definition: adec_state.h:84
int32_t reset_aec_flag
Definition: adec_state.h:80
ADEC state structure.
Definition: adec_state.h:124
int32_t shadow_flag_counter
Counter indicating number of frame the AEC shadow filter has been better than the main filter.
Definition: adec_state.h:144
int32_t gated_milliseconds_since_mode_change
milliseconds elapsed since a delay change was last requested. Used to ensure that delay corrections a...
Definition: adec_state.h:138
fixed_s32_t erle_bad_bits_q24
log2 of threshold below which AEC output's measured ERLE is considered bad
Definition: adec_state.h:131
int32_t last_measured_delay
Last measured delay.
Definition: adec_state.h:139
int32_t peak_power_history_idx
index storing the head of the peak_power_history circular buffer
Definition: adec_state.h:140
int32_t peak_power_history_valid
Flag indicating whether the peak_power_history buffer has been filled atleast once.
Definition: adec_state.h:141
int32_t convergence_counter
Counter indicating number of frames the AEC shadow filter has been attempting to converge.
Definition: adec_state.h:143
fixed_s32_t peak_phase_energy_trend_gain_q24
Multiplier used for scaling agm's sensitivity to peak phase energy trend.
Definition: adec_state.h:133
float_s32_t max_peak_to_average_ratio_since_reset
Maximum peak to average AEC filter phase energy ratio seen since a delay correction was last requeste...
Definition: adec_state.h:125
adec_config_t adec_config
ADEC configuration parameters structure. Can be modified by application at run-time to reconfigure AD...
Definition: adec_state.h:145
fixed_s32_t agm_q24
AEC goodness metric indicating a measure of how well AEC filter is performing.
Definition: adec_state.h:130
adec_mode_t mode
ADEC's mode of operation. Can be operating in normal AEC or delay estimation mode.
Definition: adec_state.h:136
fixed_s32_t erle_bad_gain_q24
Multiplier determining how steeply we reduce aec's goodness when measured erle falls below the bad er...
Definition: adec_state.h:134
fixed_s32_t erle_good_bits_q24
log2 of threshold above which AEC output's measured ERLE is considered good
Definition: adec_state.h:132
int32_t sf_copy_flag
Flag indicating if shadow to main filter copy has happened atleast once in the AEC.
Definition: adec_state.h:142
float_s32_t aec_peak_to_average_good_aec_threshold
Threshold was considering peak to average ratio as good.
Definition: adec_state.h:128
Input structure containing current frame's information from AEC.
Definition: adec_state.h:92
float_s32_t error_ema_energy_ch0
Definition: adec_state.h:96
int32_t shadow_flag_ch0
Definition: adec_state.h:98
float_s32_t y_ema_energy_ch0
Definition: adec_state.h:94
Delay estimator output structure.
Definition: adec_state.h:53
float_s32_t peak_phase_power
Maximum per phase energy across all AEC filter phases.
Definition: adec_state.h:56
int32_t measured_delay_samples
Estimated microphone delay in time domain samples.
Definition: adec_state.h:54
int32_t peak_power_phase_index
Phase index of peak energy AEC filter phase.
Definition: adec_state.h:55
float_s32_t peak_to_average_ratio
Ratio of peak filter phase energy to average filter phase energy. Used to evaluate how well the filte...
Definition: adec_state.h:58
float_s32_t sum_phase_powers
Sum of filter energy across all filter phases.
Definition: adec_state.h:57
A floating-point scalar with a 32-bit mantissa.
Definition: xs3_math_types.h:167