Commit 728606fd authored by eichenseer's avatar eichenseer
Browse files

Introduced PARAM_ISM_DTX_CORE_FIX to restrict changes to ParamISM.

parent 657b7b34
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -522,6 +522,11 @@ void stereo_tcx_core_dec(
    const int16_t flag_sec_CNA,                                 /* i  : CNA flag for secondary channel          */
    STEREO_CNG_DEC_HANDLE hStereoCng,                           /* i  : Stereo CNG handle                       */
    const int16_t nchan_out                                     /* i  : number of output channels               */
#ifdef PARAM_ISM_DTX_CORE_FIX
    ,
    const IVAS_FORMAT ivas_format,                              /* i  : IVAS format                             */
    const ISM_MODE ism_mode                                     /* i  : ISM mode (only needed if format is ISM) */
#endif
);

void stereo_tcx_init_dec(
+4 −3
Original line number Diff line number Diff line
@@ -160,10 +160,11 @@
#define PARAM_ISM_DTX_CNG_STABILIZE_SW_DECISION         /* Patch to stabilize the switching decision */
#define PARAM_ISM_DTX_CNG_EST_RES_SPEC_DEC              /* Patch to estimate noise at decoder, includes USE_NOISE_EST_FROM_CORE_PARAM_ISM_DTX */
// choose one of the following:
#define TMP_FIX                                         /* set cng_type to FD_CNG, quick hack; TODO: move init to correct place */
//#define TMP_FIX3                                        /* cng_type here could work, to be verified */
//#define TMP_FIX4
//#define TMP_FIX                                         /* set cng_type to FD_CNG, quick hack; TODO: move init to correct place */
#define TMP_FIX3                                        /* cng_type here could work, seems to cause no BE issues */
//#define TMP_FIX4                                      /* causes BE issues with ISM */
#define PARAM_ISM_DTX_PARABIN_RATIO_FIX                 /* Nokia: Better value for energy ratio for parametric binauralizer when in DTX */
#define PARAM_ISM_DTX_CORE_FIX                          /* FhG: a temporary fix to restrict core coder changes to ParamISM DTX */
#endif

/* ################## End DEVELOPMENT switches ######################### */
+3 −3
Original line number Diff line number Diff line
@@ -533,8 +533,8 @@ ivas_error acelp_core_dec(
                    ApplyFdCng( syn, NULL, realBuffer, imagBuffer, st, 0, ( st->coder_type == AUDIO && !st->GSC_noisy_speech ) );
                }
#ifdef PARAM_ISM_DTX_CNG_EST_RES_SPEC_DEC
                //USE_NOISE_EST_FROM_CORE_PARAM_ISM_DTX
                /* TODO: condition missing to do this only for param ism */ /* esr: use cng_paramISM_flag? */
                /* TODO: condition missing to do this only for param ism? */ 
                /* esr: use cng_paramISM_flag here? */
                // if (!st->read_sid_info)
                if (!st->read_sid_info && st->cng_paramISM_flag)
                {
+4 −0
Original line number Diff line number Diff line
@@ -341,7 +341,11 @@ ivas_error ivas_core_dec(
        if ( ( st->core == TCX_20_CORE || st->core == TCX_10_CORE ) && st->element_mode != IVAS_CPE_MDCT )
        {
            /* TCX decoder */
#ifdef PARAM_ISM_DTX_CORE_FIX
            stereo_tcx_core_dec( st, frameMode[n], output[n], synth[n], pitch_buf[n], sba_dirac_stereo_flag, hStereoTD, last_element_mode, flag_sec_CNA, hCPE == NULL ? NULL : hCPE->hStereoCng, nchan_out, st_ivas == NULL ? NULL : st_ivas->ivas_format, st_ivas == NULL ? NULL : st_ivas->ism_mode );
#else
            stereo_tcx_core_dec( st, frameMode[n], output[n], synth[n], pitch_buf[n], sba_dirac_stereo_flag, hStereoTD, last_element_mode, flag_sec_CNA, hCPE == NULL ? NULL : hCPE->hStereoCng, nchan_out );
#endif
        }

        if ( st->core == HQ_CORE )
+5 −1
Original line number Diff line number Diff line
@@ -128,7 +128,7 @@ ivas_error ivas_sce_dec(
    {
        ivas_ism_preprocessing(st_ivas, sce_id);
#ifdef TMP_FIX3
        st->cng_type = FD_CNG;
        st->cng_type = FD_CNG; /* esr: more suitable place? this one doesn't cause BE issues at least */
#endif
    }
#else
@@ -287,7 +287,11 @@ ivas_error ivas_sce_dec(
     * Decoder
     *----------------------------------------------------------------*/

#ifdef PARAM_ISM_DTX_CORE_FIX
    if ( ( error = ivas_core_dec( st_ivas, hSCE, NULL, NULL, 1, output, outputHB, NULL, st_ivas->sba_dirac_stereo_flag ) ) != IVAS_ERR_OK )
#else
    if ( ( error = ivas_core_dec( NULL, hSCE, NULL, NULL, 1, output, outputHB, NULL, st_ivas->sba_dirac_stereo_flag ) ) != IVAS_ERR_OK )
#endif
    {
        return error;
    }
Loading