Commit 780495f3 authored by Sandesh Venkatesh's avatar Sandesh Venkatesh
Browse files

Pull in "USAN: division by zero in DFt-Stereo DTX with frameloss" fix

[x] Changes pulled in from ivas-codec-pc/ivas-codec!1431
parent 1272b3dc
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -62,6 +62,7 @@
#define NONBE_FIX_1054_NEGATIVE_LVQ_INDEX               /* Nokia: issue 1054: Input to decode_comb in deindex_lvq_SHB should be positive */
#define NONBE_FIX_738_QUATERNION_SLERP_PRECISION        /* Philips: issue 738: Quaternion spherical linear interpolation precision handling issues */
#define NONBE_FIX_1069_SVD_TUNING                       /* FhG: issue 1069: tune SVD constants */
#define NONBE_FIX_1010_STEREO_CNG_DIV_BY_ZERO           /* Eri: Issue 1010: Division by zero in Stereo CNG */
/* #################### End FIXES switches ############################ */

#define BASOP_NOGLOB                                    /* Disable global symbols in BASOPs, Overflow/Carry in BASOPs disabled, additional BASOPs in case of Overflow */
+8 −0
Original line number Diff line number Diff line
@@ -2713,7 +2713,11 @@ void stereo_dft_dec_smooth_parameters(
        if ( hStereoDft->frame_sid_nodata )
        {
            /* set new xfade target if new itd received */
#ifdef NONBE_FIX_1010_STEREO_CNG_DIV_BY_ZERO
            if ( hStereoDft->ipd_xfade_counter < STEREO_DFT_ITD_CNG_XFADE )
#else
            if ( hStereoDft->gipd[k + k_offset] != hStereoDft->ipd_xfade_target )
#endif
            {
                if ( ( hStereoDft->gipd[k + k_offset] - hStereoDft->ipd_xfade_prev ) > EVS_PI )
                {
@@ -2759,7 +2763,11 @@ void stereo_dft_dec_smooth_parameters(
        if ( hStereoDft->frame_sid_nodata )
        {
            /* set new xfade target if new itd received */
#ifdef NONBE_FIX_1010_STEREO_CNG_DIV_BY_ZERO
            if ( hStereoDft->itd_xfade_counter < STEREO_DFT_ITD_CNG_XFADE )
#else
            if ( hStereoDft->itd[k + k_offset] != hStereoDft->itd_xfade_target )
#endif
            {
                hStereoDft->itd_xfade_target = hStereoDft->itd[k + k_offset];
                hStereoDft->itd_xfade_step = ( hStereoDft->itd_xfade_target - hStereoDft->itd_xfade_prev ) / ( STEREO_DFT_ITD_CNG_XFADE - hStereoDft->itd_xfade_counter );