From da7ba2ebfaa0ebb089437a43d38422437bbc9639 Mon Sep 17 00:00:00 2001 From: Vladimir Malenovsky Date: Thu, 7 May 2026 12:15:51 +0200 Subject: [PATCH 1/2] fix incorrect lag calculation --- lib_com/options.h | 1 + lib_enc/ivas_stereo_ica_enc_fx.c | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/lib_com/options.h b/lib_com/options.h index 5390fd919..3954eca5a 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -132,6 +132,7 @@ #define FIX_FLOAT_1578_OMASA_REND_SPIKES /* Nokia: Float issue 1578: Fix spikes and collapsed perception in OMASA/MASA rendering to FOA/HOA */ #define FIX_1521_SBA_LOUDNESS_STEREO /* FhG: issue 1521: Fix loudness for SBA to stereo rendering */ #define FIX_1559 /* Eri/FhG: fix for Issue 1559 in FD CNG with bitrate/bw switching */ +#define FIX_NONBE_2579_INCORRECT_LAG_CALCULATION /* Dolby: fix 2579: Incorrect lag calculation */ /* ##################### End NON-BE switches ########################### */ diff --git a/lib_enc/ivas_stereo_ica_enc_fx.c b/lib_enc/ivas_stereo_ica_enc_fx.c index 234652072..083e6dc7f 100644 --- a/lib_enc/ivas_stereo_ica_enc_fx.c +++ b/lib_enc/ivas_stereo_ica_enc_fx.c @@ -2314,7 +2314,11 @@ static void unclr_calc_corr_features_fx( move32(); /* L/R correlation values (zero lag, maximum) */ +#ifndef FIX_NONBE_2579_INCORRECT_LAG_CALCULATION corrLagMax = maximum_l( corrEst, sub( lagSearchRange[1], add( lagSearchRange[0], 1 ) ), &corrEstMax ); +#else + corrLagMax = maximum_l( corrEst, add( sub( lagSearchRange[1], lagSearchRange[0] ), 1 ), &corrEstMax ); +#endif d_corrLagMax = sub( corrLagMax, hStereoClassif->unclr_corrLagMax_prev ); hStereoClassif->unclr_fv_fx[E_d_corrLagMax] = L_shl( d_corrLagMax, 15 ); -- GitLab From 0106874c977e417df2aa5030af275763b282b1d0 Mon Sep 17 00:00:00 2001 From: Vladimir Malenovsky Date: Thu, 7 May 2026 13:06:26 +0200 Subject: [PATCH 2/2] clang format --- lib_enc/ivas_stereo_ica_enc_fx.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib_enc/ivas_stereo_ica_enc_fx.c b/lib_enc/ivas_stereo_ica_enc_fx.c index 083e6dc7f..a5778846f 100644 --- a/lib_enc/ivas_stereo_ica_enc_fx.c +++ b/lib_enc/ivas_stereo_ica_enc_fx.c @@ -2314,11 +2314,11 @@ static void unclr_calc_corr_features_fx( move32(); /* L/R correlation values (zero lag, maximum) */ -#ifndef FIX_NONBE_2579_INCORRECT_LAG_CALCULATION +#ifndef FIX_NONBE_2579_INCORRECT_LAG_CALCULATION corrLagMax = maximum_l( corrEst, sub( lagSearchRange[1], add( lagSearchRange[0], 1 ) ), &corrEstMax ); #else corrLagMax = maximum_l( corrEst, add( sub( lagSearchRange[1], lagSearchRange[0] ), 1 ), &corrEstMax ); -#endif +#endif d_corrLagMax = sub( corrLagMax, hStereoClassif->unclr_corrLagMax_prev ); hStereoClassif->unclr_fv_fx[E_d_corrLagMax] = L_shl( d_corrLagMax, 15 ); -- GitLab