|
XCORE SDK
XCORE Software Development Kit
|
ADEC state structure. More...
#include <adec_state.h>
Public Attributes | |
| 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 requested. | |
| float_s32_t | peak_to_average_ratio_history [ADEC_PEAK_TO_AVERAGE_HISTORY_DEPTH+1] |
| Last ADEC_PEAK_TO_AVERAGE_HISTORY_DEPTH frames peak_to_average_ratio of phase energies. | |
| float_s32_t | peak_power_history [ADEC_PEAK_LINREG_HISTORY_SIZE] |
| Last ADEC_PEAK_LINREG_HISTORY_SIZE frames peak phase power. | |
| float_s32_t | aec_peak_to_average_good_aec_threshold |
| Threshold was considering peak to average ratio as good. | |
| fixed_s32_t | agm_q24 |
| AEC goodness metric indicating a measure of how well AEC filter is performing. | |
| fixed_s32_t | erle_bad_bits_q24 |
| log2 of threshold below which AEC output's measured ERLE is considered bad | |
| fixed_s32_t | erle_good_bits_q24 |
| log2 of threshold above which AEC output's measured ERLE is considered good | |
| fixed_s32_t | peak_phase_energy_trend_gain_q24 |
| Multiplier used for scaling agm's sensitivity to peak phase energy trend. | |
| fixed_s32_t | erle_bad_gain_q24 |
| Multiplier determining how steeply we reduce aec's goodness when measured erle falls below the bad erle threshold. | |
| adec_mode_t | mode |
| ADEC's mode of operation. Can be operating in normal AEC or delay estimation mode. | |
| int32_t | peak_to_average_ratio_valid_flag |
| int32_t | gated_milliseconds_since_mode_change |
| milliseconds elapsed since a delay change was last requested. Used to ensure that delay corrections are not requested too early without allowing enough time for aec filter to converge. | |
| int32_t | last_measured_delay |
| Last measured delay. | |
| int32_t | peak_power_history_idx |
| index storing the head of the peak_power_history circular buffer | |
| int32_t | peak_power_history_valid |
| Flag indicating whether the peak_power_history buffer has been filled atleast once. | |
| int32_t | sf_copy_flag |
| Flag indicating if shadow to main filter copy has happened atleast once in the AEC. | |
| int32_t | convergence_counter |
| Counter indicating number of frames the AEC shadow filter has been attempting to converge. | |
| int32_t | shadow_flag_counter |
| Counter indicating number of frame the AEC shadow filter has been better than the main filter. | |
| adec_config_t | adec_config |
| ADEC configuration parameters structure. Can be modified by application at run-time to reconfigure ADEC. | |
ADEC state structure.
This structure holds the current state of the ADEC instance and members are updated each time that adec_process_frame() runs. Many of these members are statistics from tracking the AEC performance. The user should not directly modify any of these members, except the config.