Commit 21b5be36 authored by Fabian Bauer's avatar Fabian Bauer
Browse files

add macro FIX_2455_HARMONIZE_configureFdCngEnc - inactive

parent 5d677d37
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -96,6 +96,7 @@
#define HARMONIZE_2446_CON_TCX_FX                       /* FhG: basop issue: 2446 harmonization of function con_tcx_fx() */
#define FIX_2433_ARITH_OVERFLOW_IN_QMETA_ENC            /* Nokia: Fix to convert non-converted binary operations */
//#define FIX_2455_HARMONIZE_generate_comfort_noise_enc /* FhG: harmonize generate_comfort_noise_enc and generate_comfort_noise_enc_ivas */
//#define FIX_2455_HARMONIZE_configureFdCngEnc          /* FhG: harmonize generate_comfort_noise_enc and generate_comfort_noise_enc_ivas */

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

+2 −0
Original line number Diff line number Diff line
@@ -10049,11 +10049,13 @@ void core_coder_mode_switch_ivas_fx(
    const Word16 MCT_flag          /* i  : hMCT handle allocated (1) or not (0)*/
);

#ifndef FIX_2455_HARMONIZE_configureFdCngEnc
void configureFdCngEnc_ivas_fx(
    HANDLE_FD_CNG_ENC hFdCngEnc, /* i/o: Contains the variables related to the FD-based CNG process */
    const Word16 bwidth,         /* Q0 */
    const Word32 total_brate     /* Q0 */
);
#endif

void SetModeIndex_ivas_fx(
    Encoder_State *st,              /* i  : Encoder state                          */
+27 −1
Original line number Diff line number Diff line
@@ -159,11 +159,20 @@ void initFdCngEnc_fx(
 * Configure FD_CNG                 *
 ************************************/

#ifdef FIX_2455_HARMONIZE_configureFdCngEnc
void configureFdCngEnc_fx(
    HANDLE_FD_CNG_ENC hsEnc, /* i/o: Contains the variables related to the FD-based CNG process */
    const Word16 bandwidth,  /* i  :   bandwidth    Q0*/
    const Word32 bitrate,    /* Q0 */
    const Word16 element_mode
)
#else
void configureFdCngEnc_fx(
    HANDLE_FD_CNG_ENC hsEnc, /* i/o: Contains the variables related to the FD-based CNG process */
    const Word16 bandwidth,  /* i  :   bandwidth    Q0*/
    const Word32 bitrate     /* Q0 */
)
#endif
{
    HANDLE_FD_CNG_COM hsCom = hsEnc->hFdCngCom;
    Word16 psizeDec[NPART];
@@ -265,12 +274,28 @@ void configureFdCngEnc_fx(
    SWITCH( hsCom->fftlen )
    {
        case 512:
#ifdef FIX_2455_HARMONIZE_configureFdCngEnc
            if ( GT_16( element_mode, 0 ) )
            {
                hsCom->fftSineTab_fx = NULL;
                hsCom->olapWinAna_fx = olapWinAna512_fx; /* Q30 */
                hsCom->olapWinSyn_fx = olapWinSyn256_fx; /* Q15 */
            }
#endif
            hsCom->fftlenShift = 8;
            move16();
            hsCom->fftlenFac = 32767 /*1.0 Q15*/;
            move16();
            BREAK;
        case 640:
#ifdef FIX_2455_HARMONIZE_configureFdCngEnc
            if ( GT_16( element_mode, 0 ) )
            {
                hsCom->fftSineTab_fx = fftSineTab640_fx; /* Q15 */
                hsCom->olapWinAna_fx = olapWinAna640_fx; /* Q30 */
                hsCom->olapWinSyn_fx = olapWinSyn320_fx; /* Q15 */
            }
#endif
            hsCom->fftlenShift = 9;
            move16();
            hsCom->fftlenFac = 20480 /*0.625 Q15*/;
@@ -288,6 +313,7 @@ void configureFdCngEnc_fx(
    return;
}

#ifndef FIX_2455_HARMONIZE_configureFdCngEnc
void configureFdCngEnc_ivas_fx(
    HANDLE_FD_CNG_ENC hFdCngEnc, /* i/o: Contains the variables related to the FD-based CNG process */
    const Word16 bwidth,         /* Q0 */
@@ -422,7 +448,7 @@ void configureFdCngEnc_ivas_fx(

    return;
}

#endif /*FIX_2455_HARMONIZE_configureFdCngEnc*/

/**************************************
 * Delete the instance of type FD_CNG *
+4 −1
Original line number Diff line number Diff line
@@ -1177,8 +1177,11 @@ ivas_error init_encoder_fx(
                total_brate = st->total_brate;
                move32();
            }

#ifdef FIX_2455_HARMONIZE_configureFdCngEnc
            configureFdCngEnc_fx( st->hFdCngEnc, st->bwidth, total_brate, st->element_mode );
#else
            configureFdCngEnc_fx( st->hFdCngEnc, st->bwidth, total_brate );
#endif
        }
    }
    ELSE
+11 −0
Original line number Diff line number Diff line
@@ -567,6 +567,16 @@ ivas_error ivas_core_enc_fx(
                test();
                IF( ( NE_16( st->hFdCngEnc->hFdCngCom->frameSize, st->L_frame ) ) || ( NE_16( st->hFdCngEnc->hFdCngCom->CngBandwidth, st->bwidth ) ) )
                {
#ifdef FIX_2455_HARMONIZE_configureFdCngEnc
                    IF( EQ_16( st->L_frame, L_FRAME16k ) )
                    {
                        configureFdCngEnc_fx( st->hFdCngEnc, s_max( st->bwidth, WB ), ACELP_16k40, st->element_mode );
                    }
                    ELSE
                    {
                        configureFdCngEnc_fx( st->hFdCngEnc, s_max( st->bwidth, WB ), ACELP_9k60, st->element_mode );
                    }
#else
                    IF( EQ_16( st->L_frame, L_FRAME16k ) )
                    {
                        configureFdCngEnc_ivas_fx( st->hFdCngEnc, s_max( st->bwidth, WB ), ACELP_16k40 );
@@ -575,6 +585,7 @@ ivas_error ivas_core_enc_fx(
                    {
                        configureFdCngEnc_ivas_fx( st->hFdCngEnc, s_max( st->bwidth, WB ), ACELP_9k60 );
                    }
#endif
                }
            }

Loading