Loading lib_com/core_com_config_fx.c +22 −0 Original line number Diff line number Diff line Loading @@ -825,7 +825,11 @@ Word16 getTcxLpcShapedAri( * Initialization of TCX *-----------------------------------------------------------------------*/ #ifdef HARMONIZE_2567_init_tcx_cfg void init_tcx_cfg_fx( #else void init_tcx_cfg_ivas_fx( #endif TCX_CONFIG_HANDLE hTcxCfg, const Word32 total_brate, /*Q0*/ const Word32 sr_core, /*Q0*/ Loading @@ -841,7 +845,12 @@ void init_tcx_cfg_ivas_fx( const Word16 infoIGFStopFreq, /*Q0*/ const Word16 element_mode, /*Q0*/ const Word16 ini_frame, /*Q0*/ #ifdef HARMONIZE_2567_init_tcx_cfg const Word16 MCT_flag, /*Q0*/ const Word16 fscaleFB /*Q0*/ ) #else const Word16 MCT_flag /*Q0*/ ) #endif { Word16 i; Word16 mdctWindowLength; Loading @@ -859,7 +868,18 @@ void init_tcx_cfg_ivas_fx( hTcxCfg->tcx_mdct_window_length_old = hTcxCfg->tcx_mdct_window_length; /*Q0*/ move16(); mdctWindowLength = getMdctWindowLength_fx( fscale ); /*Q0*/ #ifdef HARMONIZE_2567_init_tcx_cfg IF( EQ_16( element_mode, EVS_MONO ) ) { mdctWindowLengthFB = getMdctWindowLength_fx( fscaleFB ); /*Q0*/ } ELSE { mdctWindowLengthFB = (Word16) ( mdctWindowLength * input_Fs / sr_core ); } #else mdctWindowLengthFB = (Word16) ( mdctWindowLength * input_Fs / sr_core ); #endif init_tcx_window_cfg_fx( hTcxCfg, sr_core, input_Fs, L_frame, L_frameTCX, mdctWindowLength, mdctWindowLengthFB, element_mode ); /* SQ deadzone & memory quantization*/ Loading Loading @@ -1080,6 +1100,7 @@ void init_tcx_window_cfg_fx( return; } #ifndef HARMONIZE_2567_init_tcx_cfg void init_tcx_cfg_fx( TCX_CONFIG_HANDLE hTcxCfg, const Word32 total_brate, /*Q0*/ Loading Loading @@ -1227,3 +1248,4 @@ void init_tcx_cfg_fx( return; } #endif lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -106,6 +106,7 @@ #define HARMONIZE_2539_cng_energy /* FhG: basop issue 2539: harmonize cng_energy with its ivas derivate */ #define FIX_1585_ASAN_FORMAT_SW_ALT /* VA: float issue 1585: alternative fix memory leaks with format switching */ #define HARMONIZE_2567_init_acelp /* FhG: harmonize init_acelp derivates for evs/ivas */ #define HARMONIZE_2567_init_tcx_cfg /* FhG: harmonize init_tcx_cfg derivates for evs/ivas */ /* #################### End BE switches ################################## */ Loading lib_com/prot_fx.h +26 −15 Original line number Diff line number Diff line Loading @@ -5758,6 +5758,7 @@ void init_tcx_window_cfg_fx( const Word16 element_mode /* i : mode of CPE/SCE */ ); #ifndef HARMONIZE_2567_init_tcx_cfg void init_tcx_cfg_fx( TCX_CONFIG_HANDLE hTcxCfg, const Word32 total_brate, Loading @@ -5776,6 +5777,7 @@ void init_tcx_cfg_fx( const Word16 ini_frame, const Word16 MCT_flag /* i : hMCT handle allocated (1) or not (0) */, const Word16 fscaleFB ); #endif void syn_output_fx( const Word16 codec_mode, /* i : MODE1 or MODE2 */ Loading Loading @@ -9610,23 +9612,32 @@ void SetModeIndex_ivas_fx( const Word16 MCT_flag /* i : hMCT handle allocated (1) or not (0) Q0*/ ); #ifdef HARMONIZE_2567_init_tcx_cfg void init_tcx_cfg_fx( #else void init_tcx_cfg_ivas_fx( #endif TCX_CONFIG_HANDLE hTcxCfg, const Word32 total_brate, const Word32 sr_core, const Word32 input_Fs, const Word16 L_frame, const Word16 bwidth, const Word16 L_frameTCX, const Word16 fscale, const Word16 preemph_fac, const Word16 tcxonly, const Word16 rf_mode, const Word16 igf, const Word16 infoIGFStopFreq, const Word16 element_mode, const Word16 ini_frame, const Word16 MCT_flag ); const Word32 total_brate, /*Q0*/ const Word32 sr_core, /*Q0*/ const Word32 input_Fs, /*Q0*/ const Word16 L_frame, /*Q0*/ const Word16 bwidth, /*Q0*/ const Word16 L_frameTCX, /*Q0*/ const Word16 fscale, /*Q0*/ const Word16 preemph_fac, /*Q15*/ const Word16 tcxonly, /*Q0*/ const Word16 rf_mode, /*Q0*/ const Word16 igf, /*Q0*/ const Word16 infoIGFStopFreq, /*Q0*/ const Word16 element_mode, /*Q0*/ const Word16 ini_frame, /*Q0*/ #ifdef HARMONIZE_2567_init_tcx_cfg const Word16 MCT_flag, /*Q0*/ const Word16 fscaleFB /*Q0*/ ); #else const Word16 MCT_flag /*Q0*/ ); #endif Word16 msvq_stage1_dct_search_fx( const Word32 *u_fx, /* i : target exp : u_e */ Loading lib_enc/core_enc_init_fx.c +6 −1 Original line number Diff line number Diff line Loading @@ -1230,10 +1230,15 @@ static void init_tcx_ivas_fx( st->hTcxEnc->spectrum_e[0] = st->hTcxEnc->spectrum_e[1] = 0; move16(); move16(); #ifdef HARMONIZE_2567_init_tcx_cfg init_tcx_cfg_fx( st->hTcxCfg, total_brate, st->sr_core, st->input_Fs, st->L_frame, st->bwidth, hTcxEnc->L_frameTCX, st->fscale, st->preemph_fac, st->tcxonly, st->rf_mode, st->igf, st->hIGFEnc != NULL ? st->hIGFEnc->infoStopFrequency : 0, st->element_mode, st->ini_frame, MCT_flag, 0 ); #else init_tcx_cfg_ivas_fx( st->hTcxCfg, total_brate, st->sr_core, st->input_Fs, st->L_frame, st->bwidth, hTcxEnc->L_frameTCX, st->fscale, st->preemph_fac, st->tcxonly, st->rf_mode, st->igf, st->hIGFEnc != NULL ? st->hIGFEnc->infoStopFrequency : 0, st->element_mode, st->ini_frame, MCT_flag ); #endif /* Init TCX target bits correction factor */ hTcxEnc->tcx_target_bits_fac = 0x4000; /*1.0f in 1Q14*/ Loading Loading
lib_com/core_com_config_fx.c +22 −0 Original line number Diff line number Diff line Loading @@ -825,7 +825,11 @@ Word16 getTcxLpcShapedAri( * Initialization of TCX *-----------------------------------------------------------------------*/ #ifdef HARMONIZE_2567_init_tcx_cfg void init_tcx_cfg_fx( #else void init_tcx_cfg_ivas_fx( #endif TCX_CONFIG_HANDLE hTcxCfg, const Word32 total_brate, /*Q0*/ const Word32 sr_core, /*Q0*/ Loading @@ -841,7 +845,12 @@ void init_tcx_cfg_ivas_fx( const Word16 infoIGFStopFreq, /*Q0*/ const Word16 element_mode, /*Q0*/ const Word16 ini_frame, /*Q0*/ #ifdef HARMONIZE_2567_init_tcx_cfg const Word16 MCT_flag, /*Q0*/ const Word16 fscaleFB /*Q0*/ ) #else const Word16 MCT_flag /*Q0*/ ) #endif { Word16 i; Word16 mdctWindowLength; Loading @@ -859,7 +868,18 @@ void init_tcx_cfg_ivas_fx( hTcxCfg->tcx_mdct_window_length_old = hTcxCfg->tcx_mdct_window_length; /*Q0*/ move16(); mdctWindowLength = getMdctWindowLength_fx( fscale ); /*Q0*/ #ifdef HARMONIZE_2567_init_tcx_cfg IF( EQ_16( element_mode, EVS_MONO ) ) { mdctWindowLengthFB = getMdctWindowLength_fx( fscaleFB ); /*Q0*/ } ELSE { mdctWindowLengthFB = (Word16) ( mdctWindowLength * input_Fs / sr_core ); } #else mdctWindowLengthFB = (Word16) ( mdctWindowLength * input_Fs / sr_core ); #endif init_tcx_window_cfg_fx( hTcxCfg, sr_core, input_Fs, L_frame, L_frameTCX, mdctWindowLength, mdctWindowLengthFB, element_mode ); /* SQ deadzone & memory quantization*/ Loading Loading @@ -1080,6 +1100,7 @@ void init_tcx_window_cfg_fx( return; } #ifndef HARMONIZE_2567_init_tcx_cfg void init_tcx_cfg_fx( TCX_CONFIG_HANDLE hTcxCfg, const Word32 total_brate, /*Q0*/ Loading Loading @@ -1227,3 +1248,4 @@ void init_tcx_cfg_fx( return; } #endif
lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -106,6 +106,7 @@ #define HARMONIZE_2539_cng_energy /* FhG: basop issue 2539: harmonize cng_energy with its ivas derivate */ #define FIX_1585_ASAN_FORMAT_SW_ALT /* VA: float issue 1585: alternative fix memory leaks with format switching */ #define HARMONIZE_2567_init_acelp /* FhG: harmonize init_acelp derivates for evs/ivas */ #define HARMONIZE_2567_init_tcx_cfg /* FhG: harmonize init_tcx_cfg derivates for evs/ivas */ /* #################### End BE switches ################################## */ Loading
lib_com/prot_fx.h +26 −15 Original line number Diff line number Diff line Loading @@ -5758,6 +5758,7 @@ void init_tcx_window_cfg_fx( const Word16 element_mode /* i : mode of CPE/SCE */ ); #ifndef HARMONIZE_2567_init_tcx_cfg void init_tcx_cfg_fx( TCX_CONFIG_HANDLE hTcxCfg, const Word32 total_brate, Loading @@ -5776,6 +5777,7 @@ void init_tcx_cfg_fx( const Word16 ini_frame, const Word16 MCT_flag /* i : hMCT handle allocated (1) or not (0) */, const Word16 fscaleFB ); #endif void syn_output_fx( const Word16 codec_mode, /* i : MODE1 or MODE2 */ Loading Loading @@ -9610,23 +9612,32 @@ void SetModeIndex_ivas_fx( const Word16 MCT_flag /* i : hMCT handle allocated (1) or not (0) Q0*/ ); #ifdef HARMONIZE_2567_init_tcx_cfg void init_tcx_cfg_fx( #else void init_tcx_cfg_ivas_fx( #endif TCX_CONFIG_HANDLE hTcxCfg, const Word32 total_brate, const Word32 sr_core, const Word32 input_Fs, const Word16 L_frame, const Word16 bwidth, const Word16 L_frameTCX, const Word16 fscale, const Word16 preemph_fac, const Word16 tcxonly, const Word16 rf_mode, const Word16 igf, const Word16 infoIGFStopFreq, const Word16 element_mode, const Word16 ini_frame, const Word16 MCT_flag ); const Word32 total_brate, /*Q0*/ const Word32 sr_core, /*Q0*/ const Word32 input_Fs, /*Q0*/ const Word16 L_frame, /*Q0*/ const Word16 bwidth, /*Q0*/ const Word16 L_frameTCX, /*Q0*/ const Word16 fscale, /*Q0*/ const Word16 preemph_fac, /*Q15*/ const Word16 tcxonly, /*Q0*/ const Word16 rf_mode, /*Q0*/ const Word16 igf, /*Q0*/ const Word16 infoIGFStopFreq, /*Q0*/ const Word16 element_mode, /*Q0*/ const Word16 ini_frame, /*Q0*/ #ifdef HARMONIZE_2567_init_tcx_cfg const Word16 MCT_flag, /*Q0*/ const Word16 fscaleFB /*Q0*/ ); #else const Word16 MCT_flag /*Q0*/ ); #endif Word16 msvq_stage1_dct_search_fx( const Word32 *u_fx, /* i : target exp : u_e */ Loading
lib_enc/core_enc_init_fx.c +6 −1 Original line number Diff line number Diff line Loading @@ -1230,10 +1230,15 @@ static void init_tcx_ivas_fx( st->hTcxEnc->spectrum_e[0] = st->hTcxEnc->spectrum_e[1] = 0; move16(); move16(); #ifdef HARMONIZE_2567_init_tcx_cfg init_tcx_cfg_fx( st->hTcxCfg, total_brate, st->sr_core, st->input_Fs, st->L_frame, st->bwidth, hTcxEnc->L_frameTCX, st->fscale, st->preemph_fac, st->tcxonly, st->rf_mode, st->igf, st->hIGFEnc != NULL ? st->hIGFEnc->infoStopFrequency : 0, st->element_mode, st->ini_frame, MCT_flag, 0 ); #else init_tcx_cfg_ivas_fx( st->hTcxCfg, total_brate, st->sr_core, st->input_Fs, st->L_frame, st->bwidth, hTcxEnc->L_frameTCX, st->fscale, st->preemph_fac, st->tcxonly, st->rf_mode, st->igf, st->hIGFEnc != NULL ? st->hIGFEnc->infoStopFrequency : 0, st->element_mode, st->ini_frame, MCT_flag ); #endif /* Init TCX target bits correction factor */ hTcxEnc->tcx_target_bits_fac = 0x4000; /*1.0f in 1Q14*/ Loading