aboutsummaryrefslogtreecommitdiff
path: root/encoder/drc_src
diff options
context:
space:
mode:
authorakshayragir833 <110660198+akshayragir833@users.noreply.github.com>2023-12-28 17:47:33 +0530
committerGitHub <noreply@github.com>2023-12-28 17:47:33 +0530
commit1ce177ea0eba8bd56c22131e53df102ddf9fd6fe (patch)
tree1a8d5a330618ea574323fc72b6d41900d9baa07f /encoder/drc_src
parenta7019eafff34dede10e409d342afaeac84615a97 (diff)
downloadlibxaac-1ce177ea0eba8bd56c22131e53df102ddf9fd6fe.tar.gz
Encoder enhancements and minor bug fixes (#73)
Test done: Smoke test
Diffstat (limited to 'encoder/drc_src')
-rw-r--r--encoder/drc_src/impd_drc_api.c12
-rw-r--r--encoder/drc_src/impd_drc_uni_drc.h1
2 files changed, 13 insertions, 0 deletions
diff --git a/encoder/drc_src/impd_drc_api.c b/encoder/drc_src/impd_drc_api.c
index 4218903..0a1b6e1 100644
--- a/encoder/drc_src/impd_drc_api.c
+++ b/encoder/drc_src/impd_drc_api.c
@@ -126,6 +126,18 @@ static IA_ERRORCODE impd_drc_validate_config_params(ia_drc_input_config *pstr_in
.gain_params[k]
.start_sub_band_index,
0, STFT256_HOP_SIZE - 1);
+ IMPD_DRC_BOUND_CHECK(pstr_uni_drc_config->str_drc_coefficients_uni_drc[i]
+ .str_gain_set_params[j].gain_params[k].width,
+ -MAX_FLT_VAL_DB, MAX_FLT_VAL_DB);
+ for (WORD32 m = 0; m < pstr_uni_drc_config->str_drc_coefficients_uni_drc[i]
+ .str_gain_set_params[j].gain_params[k].nb_points; m++) {
+ IMPD_DRC_BOUND_CHECK(pstr_uni_drc_config->str_drc_coefficients_uni_drc[i]
+ .str_gain_set_params[j].gain_params[k].gain_points[m].x,
+ -MAX_FLT_VAL_DB, MAX_FLT_VAL_DB);
+ IMPD_DRC_BOUND_CHECK(pstr_uni_drc_config->str_drc_coefficients_uni_drc[i]
+ .str_gain_set_params[j].gain_params[k].gain_points[m].y,
+ -MAX_FLT_VAL_DB, MAX_FLT_VAL_DB);
+ }
}
for (k = 0; k <
pstr_uni_drc_config->str_drc_coefficients_uni_drc[i].str_gain_set_params[j].band_count
diff --git a/encoder/drc_src/impd_drc_uni_drc.h b/encoder/drc_src/impd_drc_uni_drc.h
index 02a03ab..95f656a 100644
--- a/encoder/drc_src/impd_drc_uni_drc.h
+++ b/encoder/drc_src/impd_drc_uni_drc.h
@@ -129,6 +129,7 @@
#define MAX_METHOD_DEFINITION_TYPE (9)
#define MIN_METHOD_VALUE (-116.0f)
#define MAX_METHOD_VALUE (121.0f)
+#define MAX_FLT_VAL_DB (770.6367883810890080451095799195f)
typedef struct {
WORD32 level_estim_k_weighting_type;