Commit 330d9a1e authored by Archit Tamarapu's avatar Archit Tamarapu
Browse files
Merge branch 'main' of ssh://forge.3gpp.org:29419/ivas-codec-pc/ivas-codec into 1466-renderer-enable-rendering-of-mono-stereo-to-all-formats-add-tests-part-2
parents 84fde430 0c5691e6
Loading
Loading
Loading
Loading
+13 −4
Original line number Diff line number Diff line
@@ -162,19 +162,28 @@
/*#define FIX_I4_OL_PITCH*/                             /* fix open-loop pitch used for EVS core switching */
#define TMP_1342_WORKAROUND_DEC_FLUSH_BROKEN_IN_SR      /* FhG: Temporary workaround for incorrect implementation of decoder flush with split rendering */
#define NONBE_1122_KEEP_EVS_MODE_UNCHANGED              /* FhG: Disables fix for issue 1122 in EVS mode to keep BE tests green. This switch should be removed once the 1122 fix is added to EVS via a CR.  */
#define FIX_BASOP_2201_HARMONIZE_HRTF_FILE_READER_CREND /* OR : Fix issue basop 2201 hrtf_file_reader crend differs between basop ivas-main and ivas-float-update */
#define FIX_CLANG18_MSAN_IN_DEC_INIT_BY_MOVING_COMMON_INITS_TOGETHER /* FhG: fix CLANG18 MSAN error in decoder init */
#define FIX_1481_CLANG18_MSAN_INIT_LAST_ELEM_BRATE      /* FhG: initialize last_element_brate to avoid CLANG18 MSAN complaint */
#define FIX_1484_CLANG18_MSAN_INIT_ST_ELEM_BRATE        /* FhG: initialize st->element_brate per default */
#define FIX_1464_UBSAN_RC_CONTEXT_MAP                   /* FhG: BE UBSAN fix for float issue 1464 in the TCX range coder */
#define FIX_2272_OOB_INDEXING_IN_LTP_PIT_SEARCH         /* FhG: fix OOB index USAN error in TCX LTP pitch search */
#define FIX_2274_OOB_INDEXING_IN_CORRMATRIX             /* FhG: fix OOB indexing complaint */
#define FIX_2278_OOB_INDEXING_IN_CLOSED_LOOP_PIT_SEARCH /* FhG: fix oob indexing USAN complaint */
#define FIX_2287_MCT_MDCT_STEREO_DATA_MALLOC_SIZE       /* FhG: correct allocation size for STEREO_MDCT_DEC_DATA struct */
#define FIX_2271_OOB_INDEXING_IN_PIT_OL2                /* VA: Fix for issue 2271, to silence clang18 */
#define FIX_2273_OOB_INDEXING_IN_PIT_FR4                /* VA: Fix to silence clang on ptr init */

/* #################### End BE switches ################################## */

/* #################### Start NON-BE switches ############################ */
/* any switch which is non-be wrt. TS 26.258 V3.0 */



#define FIX_1435_MOVE_STEREO_PANNING                    /* VA: issue 1435: do the EVS stereo panning in the renderer */
#define FIX_1454_FIX_STEREO_TO_FOA_JBM                  /* VA: issue 1454: fix buggy stereo to FOA in JBM */
#define FIX_1461_CNG_BW_SWITCHING                       /* Eri: issue 1461: Stereo parameters are not updated when SID/NODATA forces BW to stay the same */

#define FIX_2252_LP_CNG_STARTS_SID                      /* VA: issues 2251 and 2252: fix LP CNG uninitialized value in bitstream that starts with an SID */
#define FIX_1381_BWD                                    /* VA: issue 1381: apply no hysteresis in BWD at higher bitrates also in mono MASA and OMASA */
#define FIX_2285_CODE_DECODER_INIT_BW                   /* VA: basop issue 2285: fix core-decoder initialization bandwidth */

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

+4 −4
Original line number Diff line number Diff line
@@ -974,10 +974,10 @@ int push_stack( const char *filename, const char *fctname )

#if defined( __GNUC__ ) || defined( __clang__ )
    /* GCC/Clang: use builtin (works for many targets) */
    ptr_base_stack = __builtin_frame_address( 0 );
    ptr_current_stack = __builtin_frame_address( 0 );
#else
    int16_t something;
    ptr_base_stack = &something;
    ptr_current_stack = &something;
#endif

    (void) *filename; /* to avoid compilation warning */
+3 −0
Original line number Diff line number Diff line
@@ -662,6 +662,9 @@ int16_t RCcontextMapping_decode2_no_mem_s17_LCS(
                c = 12 + esc_nb;
            }

#ifdef FIX_1464_UBSAN_RC_CONTEXT_MAP
            s = s & 0x0F;
#endif
            s = s << 4; /*Shift old 4 bits*/
            s = s + c;  /*replace last 4 bits*/
            t = s & 0xFF;
+4 −0
Original line number Diff line number Diff line
@@ -101,6 +101,10 @@ void decision_matrix_dec(
                    if ( get_next_indice( st, 1 ) == 1 )
                    {
                        st->L_frame = L_FRAME16k;
#ifdef FIX_2252_LP_CNG_STARTS_SID
                        st->nb_subfr = NB_SUBFR16k;
                        st->bwidth = max( st->bwidth, WB );
#endif
                    }
                }
                else
+18 −0
Original line number Diff line number Diff line
@@ -79,8 +79,26 @@ ivas_error init_decoder(
    st->last_total_brate_ber = -1;
    st->core_brate = ACELP_8k00;
    st->ini_frame = 0;
#ifdef FIX_2252_LP_CNG_STARTS_SID
    if ( st->element_mode == EVS_MONO )
    {
        st->bwidth = NB;
        st->last_bwidth = NB;
    }
    else
    {
#ifdef FIX_2285_CODE_DECODER_INIT_BW
        st->bwidth = WB;
        st->last_bwidth = WB;
#else
        st->bwidth = NB;
        st->last_bwidth = NB;
#endif
    }
#else
    st->bwidth = NB;
    st->last_bwidth = NB;
#endif
    st->extl_brate = 0;

    st->coder_type = GENERIC;
Loading