Commit c11c21eb authored by fotopoulou's avatar fotopoulou
Browse files

Merge branch '1585_ref_port_MR_2395_fix_BASOP_1585' into 'ivas-float-update'

Ref port float MR2395 fix basop 1585

See merge request !2583
parents 4d17caaf 59d28cd9
Loading
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -198,6 +198,7 @@
#define NONBE_1399_1400_FIX_OBJ_EDIT_ISSUES             /* Nokia: Fix for issues 1399: obj edit broken with MC/SBA output in VOIP, and 1400: negative energy estimate used for gaining. */
#define FIX_2192_OBJ_EDITING_EXT_METADATA               /* Eri: Add support for extended metadata in object editing */
#define FIX_1318_ROOM_SIZE_CMD_LINE                     /* Philips/Nokia: Default room sizes support */
#define FIX_BASOP_ISSUE_1585_CUT_BS_CRASH               /* FhG: Fix for BASOP issue 1585 crash of a cut bitstream, also valid for float code*/


/* #################### End BASOP porting switches ############################ */
+1 −1
Original line number Diff line number Diff line
@@ -663,7 +663,7 @@ ivas_error core_switching_post_dec(
            }
            else if ( ( ( st->last_core == ACELP_CORE || st->last_core_bfi == ACELP_CORE ) && !( st->prev_bfi == 1 && st->last_con_tcx == 1 ) ) || st->last_core == AMR_WB_CORE ) /*ACELP->TCX/HQ*/
            {
                /* if this is first active MDCT-Stereo frame after a CNG frame and output format is mono DMX, this should only be done for the zero-th channel, the other one will simply be copied over after this function */
                /* if output format is mono DMX, this should only be done for the zero-th channel, the other one will simply be copied over after this function */
                if ( ( ( st->last_core_brate != SID_2k40 && st->last_core_brate != FRAME_NO_DATA ) || ( st->element_mode != IVAS_CPE_DFT && st->element_mode != IVAS_CPE_TD ) || nchan_out == 1 ) && !( st->element_mode == IVAS_CPE_MDCT && st->idchan == 1 && ( nchan_out == 1 || last_element_mode == IVAS_CPE_DFT ) ) )
                {
                    core_switch_lb_upsamp( st, output );
+7 −0
Original line number Diff line number Diff line
@@ -160,6 +160,13 @@ static void dec_prm_tcx_sidebits(
        st->last_core_from_bs = st->last_core;
    }

#ifdef FIX_BASOP_ISSUE_1585_CUT_BS_CRASH
    /* for first frame reset last_core to initialization value for better error-robustness*/
    if ( st->ini_frame == 0 )
    {
        st->last_core = TCX_20_CORE;
    }
#endif
    getTCXWindowing( st->core, st->last_core, st->element_mode, st->hTcxCfg, st0 );

    st->hTcxDec->kernel_type[0] = st->hTcxDec->kernel_type[1] = MDCT_IV;