Loading lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -97,6 +97,7 @@ #define FIX_BASOP_2530_IVAS_DECISION_MAT /* VA: Fix ambiguous usage of extract_l() */ #define FIX_2402_REPL_EVS_ARI_CODEC_ENC /* FhG: basop issue 2402: replace EVS arith encoder with IVAS arith encoder */ #define FIX_BASOP_2546_HARMONIZE_TCX_SCALAR /* FhG: Fix issue 2546 Harmonize function tcx_scalar_quantization_rateloop*/ #define FIX_BASOP_2532_cx_e /* FhG: Fix issue 2532 about additional exponent variable*/ /* #################### End BE switches ################################## */ Loading lib_dec/ivas_mc_param_dec_fx.c +12 −0 Original line number Diff line number Diff line Loading @@ -1801,6 +1801,10 @@ void ivas_param_mc_dec_prepare_renderer( } } cx_e = max_e; #ifdef FIX_BASOP_2532_cx_e cx_next_band_e = max_e; move16(); #endif move16(); /* we have to do it similar to the encoder in case of attacks (i.e. accumulate two bands) to ensure correct DMX of the target covariance*/ Loading @@ -1815,7 +1819,11 @@ void ivas_param_mc_dec_prepare_renderer( Scale_sig32( cx_fx, len, -Q1 ); // add one bit head room Scale_sig32( cx_next_band_fx, len, -Q1 ); // add one bit head room cx_e = add( cx_e, Q1 ); #ifndef FIX_BASOP_2532_cx_e cx_next_band_e = add( cx_e, Q1 ); #else cx_next_band_e = add( cx_next_band_e, Q1 ); #endif // !FIX_BASOP_2532_cx_e } v_add_fx( cx_fx, cx_next_band_fx, cx_fx, len ); Copy32( cx_fx, cx_next_band_fx, len ); Loading @@ -1834,7 +1842,11 @@ void ivas_param_mc_dec_prepare_renderer( IF( is_next_band ) { #ifndef FIX_BASOP_2532_cx_e ivas_param_mc_get_mixing_matrices_fx( hParamMC, hSynthesisOutputSetup, cx_next_band_fx, cx_next_band_e, add( param_band_idx, is_next_band ), hParamMC->h_output_synthesis_cov_state.mixing_matrix_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_exp, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_exp, nchan_out_transport, hParamMC->synthesis_conf, nchan_transport, nchan_out_cov ); #else ivas_param_mc_get_mixing_matrices_fx( hParamMC, hSynthesisOutputSetup, cx_next_band_fx, cx_e, add( param_band_idx, is_next_band ), hParamMC->h_output_synthesis_cov_state.mixing_matrix_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_exp, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_exp, nchan_out_transport, hParamMC->synthesis_conf, nchan_transport, nchan_out_cov ); #endif } ELSE { Loading Loading
lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -97,6 +97,7 @@ #define FIX_BASOP_2530_IVAS_DECISION_MAT /* VA: Fix ambiguous usage of extract_l() */ #define FIX_2402_REPL_EVS_ARI_CODEC_ENC /* FhG: basop issue 2402: replace EVS arith encoder with IVAS arith encoder */ #define FIX_BASOP_2546_HARMONIZE_TCX_SCALAR /* FhG: Fix issue 2546 Harmonize function tcx_scalar_quantization_rateloop*/ #define FIX_BASOP_2532_cx_e /* FhG: Fix issue 2532 about additional exponent variable*/ /* #################### End BE switches ################################## */ Loading
lib_dec/ivas_mc_param_dec_fx.c +12 −0 Original line number Diff line number Diff line Loading @@ -1801,6 +1801,10 @@ void ivas_param_mc_dec_prepare_renderer( } } cx_e = max_e; #ifdef FIX_BASOP_2532_cx_e cx_next_band_e = max_e; move16(); #endif move16(); /* we have to do it similar to the encoder in case of attacks (i.e. accumulate two bands) to ensure correct DMX of the target covariance*/ Loading @@ -1815,7 +1819,11 @@ void ivas_param_mc_dec_prepare_renderer( Scale_sig32( cx_fx, len, -Q1 ); // add one bit head room Scale_sig32( cx_next_band_fx, len, -Q1 ); // add one bit head room cx_e = add( cx_e, Q1 ); #ifndef FIX_BASOP_2532_cx_e cx_next_band_e = add( cx_e, Q1 ); #else cx_next_band_e = add( cx_next_band_e, Q1 ); #endif // !FIX_BASOP_2532_cx_e } v_add_fx( cx_fx, cx_next_band_fx, cx_fx, len ); Copy32( cx_fx, cx_next_band_fx, len ); Loading @@ -1834,7 +1842,11 @@ void ivas_param_mc_dec_prepare_renderer( IF( is_next_band ) { #ifndef FIX_BASOP_2532_cx_e ivas_param_mc_get_mixing_matrices_fx( hParamMC, hSynthesisOutputSetup, cx_next_band_fx, cx_next_band_e, add( param_band_idx, is_next_band ), hParamMC->h_output_synthesis_cov_state.mixing_matrix_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_exp, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_exp, nchan_out_transport, hParamMC->synthesis_conf, nchan_transport, nchan_out_cov ); #else ivas_param_mc_get_mixing_matrices_fx( hParamMC, hSynthesisOutputSetup, cx_next_band_fx, cx_e, add( param_band_idx, is_next_band ), hParamMC->h_output_synthesis_cov_state.mixing_matrix_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_exp, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_fx, hParamMC->h_output_synthesis_cov_state.mixing_matrix_res_exp, nchan_out_transport, hParamMC->synthesis_conf, nchan_transport, nchan_out_cov ); #endif } ELSE { Loading