Commit 54045e89 authored by multrus's avatar multrus
Browse files

[cleanup] accept FIX_IVAS_180_PLC_SIGNAL_LAST_OVLP_IN_TCX10

parent 24b23ec1
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -144,7 +144,6 @@

/*#define FIX_I4_OL_PITCH*/                             /* fix open-loop pitch used for EVS core switching */
/*#define FIX_IVAS_185_MDCT_ST_PLC_FADEOUT*/            /* IVAS-185 fix bug in TCX-PLC fadeout for MDCT-Stereo and improve fadeout by fading to background noise instead of white noise */
#define FIX_IVAS_180_PLC_SIGNAL_LAST_OVLP_IN_TCX10      /* IVAS-180 write last overlap mode in TCX10 frames to allow for correct TCX10/TCX5 subframe decomposition in TCX10 frames after a lost frame */
/*#define FIX_I1_113*/                                  /* under review : MCT bit distribution optimization for SBA high bitrates*/

#define FIX_1_CUSTOM_LS                                   /* fix bug 1-ivas-internal-error-in-decoder-for-custom-loudspeaker-format-with-sba-input-at-24-4kbps */
+0 −2
Original line number Diff line number Diff line
@@ -6784,9 +6784,7 @@ void getTCXMode(
void getTCXWindowing(
    const int16_t core,      /* i  : current frame mode                  */
    const int16_t last_core, /* i  : last frame mode                     */
#ifdef FIX_IVAS_180_PLC_SIGNAL_LAST_OVLP_IN_TCX10
    const int16_t element_mode,
#endif
    TCX_CONFIG_HANDLE hTcxCfg, /* i/o: TCX configuration handle            */
    Decoder_State *st0         /* i  : bitstream                           */
);
+0 −8
Original line number Diff line number Diff line
@@ -214,9 +214,7 @@ void getTCXMode(
void getTCXWindowing(
    const int16_t core,      /* i  : current core                  */
    const int16_t last_core, /* i  : last frame core               */
#ifdef FIX_IVAS_180_PLC_SIGNAL_LAST_OVLP_IN_TCX10
    const int16_t element_mode,
#endif
    TCX_CONFIG_HANDLE hTcxCfg, /* i/o: TCX configuration handle      */
    Decoder_State *st0         /* i  : bitstream                     */
)
@@ -262,7 +260,6 @@ void getTCXWindowing(
        }
    }

#ifdef FIX_IVAS_180_PLC_SIGNAL_LAST_OVLP_IN_TCX10
    if ( element_mode != EVS_MONO && core == TCX_10_CORE )
    {
        /* also read last overlap */
@@ -275,7 +272,6 @@ void getTCXWindowing(

        hTcxCfg->tcx_last_overlap_mode = overlap_code;
    }
#endif

    return;
}
@@ -840,11 +836,7 @@ void dec_prm(

    if ( !st->use_partial_copy )
    {
#ifdef FIX_IVAS_180_PLC_SIGNAL_LAST_OVLP_IN_TCX10
        getTCXWindowing( st->core, st->last_core, st->element_mode, st->hTcxCfg, st );
#else
        getTCXWindowing( st->core, st->last_core, st->hTcxCfg, st );
#endif

        if ( st->enableGplc ) /* SIDE INFO. DECODING */
        {
+0 −8
Original line number Diff line number Diff line
@@ -154,11 +154,7 @@ static void dec_prm_tcx_sidebits(
        st->last_core_from_bs = get_next_indice( st0, 1 );

        /* ACELP -> TCX_10 transitions are forbidden */
#ifdef FIX_IVAS_180_PLC_SIGNAL_LAST_OVLP_IN_TCX10 /* put under this switch for documentation, even though it is actually a general bug */
        if ( st->core == TCX_10_CORE && st->last_core == ACELP_CORE )
#else
        if ( st->core == TCX_10_CORE && st->last_core == ACELP_CORE && st->last_total_brate == FRAME_NO_DATA )
#endif
        {
            st->last_core = TCX_20_CORE;
        }
@@ -169,11 +165,7 @@ static void dec_prm_tcx_sidebits(
        st->last_core_from_bs = st->last_core;
    }

#ifdef FIX_IVAS_180_PLC_SIGNAL_LAST_OVLP_IN_TCX10
    getTCXWindowing( st->core, st->last_core, st->element_mode, st->hTcxCfg, st0 );
#else
    getTCXWindowing( st->core, st->last_core, st->hTcxCfg, st0 );
#endif

    st->hTcxDec->kernel_type[0] = st->hTcxDec->kernel_type[1] = MDCT_IV;
    if ( st->element_mode == IVAS_CPE_MDCT && st->mct_chan_mode != MCT_CHAN_MODE_LFE )
+0 −4
Original line number Diff line number Diff line
@@ -898,11 +898,7 @@ static void dec_prm_tcx(
    {
        if ( st->element_mode != IVAS_CPE_MDCT )
        {
#ifdef FIX_IVAS_180_PLC_SIGNAL_LAST_OVLP_IN_TCX10
            getTCXWindowing( st->core, st->last_core, st->element_mode, st->hTcxCfg, st );
#else
            getTCXWindowing( st->core, st->last_core, st->hTcxCfg, st );
#endif
        }
        st->flagGuidedAcelp = 0;

Loading