diff --git a/lib_com/options.h b/lib_com/options.h index b63ee327fd73d273c3a080bb0fa08037a87b1b32..3ef84898de0946f1c57bb500cf0a2f04a19f1076 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -94,6 +94,7 @@ #define FIX_2346_DUPLICATED_IGF_FUNCTIONS /* FhG: basop issue 2346: Review potentially duplicated IGF functions */ #define FIX_1525_UNINIT_FORMAT_SWITCHING_DEC /* VA: float issue 1525: fix reading of uninitialized memory in format switching at the decoder */ #define HARMONIZE_2446_CON_TCX_FX /* FhG: basop issue: 2446 harmonization of function con_tcx_fx() */ +#define FIX_BASOP_2478_HARM_ENC_PRM_HM /* FhG: basop issue 2478: harmonize enc_prm_hm() and enc_prm_hm_ivas_fx() */ #define FIX_2433_ARITH_OVERFLOW_IN_QMETA_ENC /* Nokia: Fix to convert non-converted binary operations */ /* #################### End BE switches ################################## */ diff --git a/lib_enc/enc_prm_fx.c b/lib_enc/enc_prm_fx.c index b076fcb0b455caab92eacb4e3445614575cc70da..943bd943ab66320dcdea068151cb9b1033da19b3 100644 --- a/lib_enc/enc_prm_fx.c +++ b/lib_enc/enc_prm_fx.c @@ -14,6 +14,7 @@ #include "prot_fx_enc.h" /* Function prototypes */ +#ifndef FIX_BASOP_2478_HARM_ENC_PRM_HM static void enc_prm_hm( Word16 *prm_hm, /* Q0 */ Encoder_State *st, @@ -53,6 +54,9 @@ static void enc_prm_hm( } } static void enc_prm_hm_ivas_fx( +#else +static void enc_prm_hm_fx( +#endif Word16 *prm_hm, /* Q0 */ Encoder_State *st, Word16 L_frame /* Q0 */ @@ -754,7 +758,11 @@ void enc_prm_fx( test(); IF( hTcxEnc->tcx_lpc_shaped_ari && NE_16( last_core, ACELP_CORE ) ) { +#ifdef FIX_BASOP_2478_HARM_ENC_PRM_HM + enc_prm_hm_fx( &prm[j], st, hm_size ); +#else enc_prm_hm( &prm[j], st, hm_size ); +#endif } /*Context HM flag*/ @@ -1235,7 +1243,11 @@ void writeTCXparam_fx( test(); IF( st->hTcxEnc->tcx_lpc_shaped_ari && last_core != ACELP_CORE && EQ_16( core, TCX_20_CORE ) ) { +#ifdef FIX_BASOP_2478_HARM_ENC_PRM_HM + enc_prm_hm_fx( &prm[j], st, hm_size ); +#else enc_prm_hm_ivas_fx( &prm[j], st, hm_size ); +#endif } /*Context HM flag*/