Commit 86866d96 authored by fotopoulou's avatar fotopoulou
Browse files

Merge branch 'float-1283-stereo-dft-collapsing-at-16-4-kbps' into 'main'

[non-BE] Port fix for issue 1283 in BASOP

See merge request !2754
parents 5324fe7c 247da2f9
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -112,6 +112,7 @@
#define FIX_2250_LARGE_DIFFERENCES_BETWEEN_BASOP_AND_FLOAT  /* Dolby: Issue 2250:  random vector generation in GenShapedSHBExcitation() */
#define FIX_2338_HARM_GSC_GAIN_COMP                     /* VA: basop issue 2338: harmonization of band gain computation for both EVS and IVAS */
#define FIX_BASOP_2317_UNINIT_VALUE_IN_STEREO_CNG       /* Eri: Basop issue 2317: Uninitialized value read in case of DTX and BW switching   */
#define FIX_1283_STEREO_DFT_COLLAPSE                    /* FhG: float issue 1283: fix for critical issue with DFT stereo core coder */

/* ##################### End NON-BE switches ########################### */

+12 −0
Original line number Diff line number Diff line
@@ -621,7 +621,13 @@ void ShapeSpectrum_ivas_fx(
    }

    test();
    test();
    test();
#ifndef FIX_1283_STEREO_DFT_COLLAPSE
    IF( LE_32( total_brate, ACELP_13k20 ) && EQ_16( st->bwidth, SWB ) )
#else
    IF( ( LE_32( total_brate, ACELP_13k20 ) || ( LE_32( st->element_brate, IVAS_16k4 ) && EQ_16( st->element_mode, IVAS_CPE_DFT ) ) ) && EQ_16( st->bwidth, SWB ) )
#endif
    {
        max_low_pre = 0;
        move32();
@@ -697,7 +703,13 @@ void ShapeSpectrum_ivas_fx(

    /* reduce the peaks in the IGF region, to make life of the core-coder easier... */
    test();
    test();
    test();
#ifndef FIX_1283_STEREO_DFT_COLLAPSE
    IF( LE_32( total_brate, ACELP_13k20 ) && EQ_16( st->bwidth, SWB ) )
#else
    IF( ( LE_32( total_brate, ACELP_13k20 ) || ( LE_32( st->element_brate, IVAS_16k4 ) && EQ_16( st->element_mode, IVAS_CPE_DFT ) ) ) && EQ_16( st->bwidth, SWB ) )
#endif
    {
        Word16 sf_width;
        Word16 dist_low, dist_high;
+4 −0
Original line number Diff line number Diff line
@@ -473,6 +473,10 @@ ivas_error create_sce_enc_fx(
    }

    st->total_brate = hSCE->element_brate; /* dummy initialization for getting right pointers initialization of input buffers in init_coder_ace_plus() */
#ifdef FIX_1283_STEREO_DFT_COLLAPSE
    st->element_brate = -1;
    move32();
#endif
    st->mct_chan_mode = MCT_CHAN_MODE_REGULAR;
    move32();
    move32();