XCORE SDK
XCORE Software Development Kit
|
AGC state structure. More...
#include <agc_api.h>
AGC state structure.
This structure holds the current state of the AGC instance and members are updated each time that agc_process_frame()
runs. Many of these members are exponentially-weighted moving averages (EWMA) which influence the adaption of the AGC gain or the loss control feature. The user should not directly modify any of these members, except the config.
agc_config_t agc_state_t::config |
The current configuration of the AGC. Any member of this configuration structure can be modified and that change will take effect on the next run of agc_process_frame()
.
float_s32_t agc_state_t::lc_corr_val |
EWMA of the far-end correlation for detecting double-talk.
float_s32_t agc_state_t::lc_far_bg_power_est |
EWMA of estimates of the power of far-end background noise.
float_s32_t agc_state_t::lc_far_power_est |
EWMA of estimates of the far-end power.
float_s32_t agc_state_t::lc_gain |
Loss control gain applied on top of the AGC gain in agc_config_t
.
float_s32_t agc_state_t::lc_near_bg_power_est |
EWMA of estimates of the power of near-end background noise.
float_s32_t agc_state_t::lc_near_power_est |
EWMA of estimates of the near-end power.
int agc_state_t::lc_t_far |
Timer counting down until enough frames with far-end activity have been processed.
int agc_state_t::lc_t_near |
Timer counting down until enough frames with near-end activity have been processed.
float_s32_t agc_state_t::x_fast |
EWMA of the frame peak, which is used to identify a rise or fall in the peak of frame.
float_s32_t agc_state_t::x_peak |
EWMA of x_fast
, which is used when adapting to the agc_config_t::upper_threshold
.
float_s32_t agc_state_t::x_slow |
EWMA of the frame peak, which is used to identify the overall trend of a rise or fall in the input signal.