Loading lib_com/options.h +5 −2 Original line number Diff line number Diff line Loading @@ -175,6 +175,9 @@ #define BE_FIX_567_DOUBLE_STEREO_DMX /* NTT: Fix formal issues */ //#define NONBE_FIX_567_DOUBLE_STEREO_DMX /* Orange: Double-precision replaced by single-precision */ #define NONBE_FIX_947_STEREO_DMX_EVS_POC /* Orange: Fix clicks on POC */ #ifdef NONBE_FIX_947_STEREO_DMX_EVS_POC #define NONBE_FIX_947_STEREO_DMX_ROMOPT /* Orange: ROM optimisation for POC*/ #endif #define NONBE_FIX_947_STEREO_DMX_EVS_PHA /* Orange: Fix issues on PHA */ #ifdef NONBE_FIX_947_STEREO_DMX_EVS_PHA #define NONBE_FIX_947_STEREO_DMX_FADOPT /* Orange: Fading optimisation */ Loading lib_enc/ivas_stereo_dmx_evs.c +41 −1 Original line number Diff line number Diff line Loading @@ -1275,6 +1275,8 @@ static void weighted_ave( { #ifdef NONBE_FIX_947_STEREO_DMX_EVS_POC #ifdef NONBE_FIX_947_STEREO_DMX_ROMOPT int16_t i, len, len2; float gain_tmp = 0.f, gain_sub; Loading @@ -1297,6 +1299,26 @@ static void weighted_ave( dst[i] = src1[i] * gain + src2[i] * ( 1.0f - gain_tmp ); } #else int16_t i, len; float gain_tmp = 0.f, gain_sub; len = input_frame >> 1; gain_sub = gain - old_gain; for ( i = 0; i < len; i++ ) { gain_tmp = old_gain + gain_sub * wnd[i]; dst[i] = src1[i] * gain_tmp + src2[i] * ( 1.0f - gain_tmp ); } for ( ; i < input_frame; i++ ) { dst[i] = src1[i] * gain + src2[i] * ( 1.0f - gain_tmp ); } #endif #else int16_t i, len; Loading Loading @@ -1435,11 +1457,13 @@ static void adapt_gain( { #ifdef NONBE_FIX_947_STEREO_DMX_EVS_POC #ifdef NONBE_FIX_947_STEREO_DMX_ROMOPT int16_t i, len, len2; float gain_tmp, gain_sub; len = input_frame >> 1; len2 = len / 2; len2 = input_frame >> 2; gain_sub = gain - old_gain; for ( i = 0; i < len2; i++ ) Loading @@ -1453,6 +1477,22 @@ static void adapt_gain( dst[i] = src[i] * gain_tmp; } #else int16_t i, len; float gain_tmp, gain_sub; len = input_frame >> 1; gain_sub = gain - old_gain; for ( i = 0; i < len; i++ ) { gain_tmp = old_gain + gain_sub * wnd[i]; dst[i] = src[i] * gain_tmp; } #endif for ( ; i < input_frame; i++ ) { dst[i] = src[i] * gain; Loading Loading
lib_com/options.h +5 −2 Original line number Diff line number Diff line Loading @@ -175,6 +175,9 @@ #define BE_FIX_567_DOUBLE_STEREO_DMX /* NTT: Fix formal issues */ //#define NONBE_FIX_567_DOUBLE_STEREO_DMX /* Orange: Double-precision replaced by single-precision */ #define NONBE_FIX_947_STEREO_DMX_EVS_POC /* Orange: Fix clicks on POC */ #ifdef NONBE_FIX_947_STEREO_DMX_EVS_POC #define NONBE_FIX_947_STEREO_DMX_ROMOPT /* Orange: ROM optimisation for POC*/ #endif #define NONBE_FIX_947_STEREO_DMX_EVS_PHA /* Orange: Fix issues on PHA */ #ifdef NONBE_FIX_947_STEREO_DMX_EVS_PHA #define NONBE_FIX_947_STEREO_DMX_FADOPT /* Orange: Fading optimisation */ Loading
lib_enc/ivas_stereo_dmx_evs.c +41 −1 Original line number Diff line number Diff line Loading @@ -1275,6 +1275,8 @@ static void weighted_ave( { #ifdef NONBE_FIX_947_STEREO_DMX_EVS_POC #ifdef NONBE_FIX_947_STEREO_DMX_ROMOPT int16_t i, len, len2; float gain_tmp = 0.f, gain_sub; Loading @@ -1297,6 +1299,26 @@ static void weighted_ave( dst[i] = src1[i] * gain + src2[i] * ( 1.0f - gain_tmp ); } #else int16_t i, len; float gain_tmp = 0.f, gain_sub; len = input_frame >> 1; gain_sub = gain - old_gain; for ( i = 0; i < len; i++ ) { gain_tmp = old_gain + gain_sub * wnd[i]; dst[i] = src1[i] * gain_tmp + src2[i] * ( 1.0f - gain_tmp ); } for ( ; i < input_frame; i++ ) { dst[i] = src1[i] * gain + src2[i] * ( 1.0f - gain_tmp ); } #endif #else int16_t i, len; Loading Loading @@ -1435,11 +1457,13 @@ static void adapt_gain( { #ifdef NONBE_FIX_947_STEREO_DMX_EVS_POC #ifdef NONBE_FIX_947_STEREO_DMX_ROMOPT int16_t i, len, len2; float gain_tmp, gain_sub; len = input_frame >> 1; len2 = len / 2; len2 = input_frame >> 2; gain_sub = gain - old_gain; for ( i = 0; i < len2; i++ ) Loading @@ -1453,6 +1477,22 @@ static void adapt_gain( dst[i] = src[i] * gain_tmp; } #else int16_t i, len; float gain_tmp, gain_sub; len = input_frame >> 1; gain_sub = gain - old_gain; for ( i = 0; i < len; i++ ) { gain_tmp = old_gain + gain_sub * wnd[i]; dst[i] = src[i] * gain_tmp; } #endif for ( ; i < input_frame; i++ ) { dst[i] = src[i] * gain; Loading