Commit dd38a5d9 authored by multrus's avatar multrus
Browse files

Merge branch...

Merge branch 'basop-2427-harmonize-getplcmodedecision_ivas_fx-and-getplcmodedecision_fx' into 'main'

Resolves issue: 2427 "Harmonize GetPLCModeDecision_ivas_fx() and GetPLCModeDecision_fx()"

See merge request !2813
parents 48088126 45623a35
Loading
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -1890,9 +1890,11 @@ void TonalMDCTConceal_Detect_ivas_fx(
    Word16 element_mode 
);

#ifndef HARMONIZE_2427_GETPLC
Word16 GetPLCModeDecision_ivas_fx(
    Decoder_State *st                                           /* i/o:    decoder memory state pointer         */
);
#endif // !HARMONIZE_2427_GETPLC

void ivas_DetectTonalComponents_fx(
    Word16 indexOfTonalPeak[],
+2 −1
Original line number Diff line number Diff line
@@ -89,6 +89,7 @@
#define FIX_2425_REMOVE_RC_DUPLICATES                   /* VA: basop issue 2425: Remove duplicated RC encoder functions */
#define HARM_LEV_DURBIN                                 /* VA: basop issue 2423: harmonize levinson-Durbin algorithm */
#define HARMONIZE_TBE2                                  /* VA: basop issue 2399: Remove duplicated code: TBE, step 2 */
#define HARMONIZE_2427_GETPLC                           /* FhG: basop issue : 2427 Harmonizing getPLCDecision functions:*/
#define HARM_FD_BWE                                     /* VA: harmonize core-coder FD BWE function duplications */
#define FIX_2411_Harmonize_TNSANALYSIS_DETECTTNSFILT    /* FhG: basop issue 2411: harmonize TNSAnalysis*_fx(), DetectTnsFilt*_fx()*/
#define HARMONIZE_READ_DECODE_TNS                       /* FhG basop 2389: Harm between two pairs of functions. */
+0 −1
Original line number Diff line number Diff line
@@ -8476,7 +8476,6 @@ void highPassFiltering_fx(
    const Word16 hp_filt[],   /* i:   Q15    high pass filter coefficients                       */
    const Word16 l_fir_fer ); /* i:        high pass filter length                               */


Word16 GetPLCModeDecision_fx(
    Decoder_State *st );

+19 −1
Original line number Diff line number Diff line
@@ -365,7 +365,12 @@ void highPassFiltering_fx(
 * PLC: [Common: mode decision]
 * PLC: Decide which Concealment to use. Update pitch lags if needed
 *----------------------------------------------------------------------------------*/

#ifndef HARMONIZE_2427_GETPLC
Word16 GetPLCModeDecision_ivas_fx(
#else
Word16 GetPLCModeDecision_fx(
#endif                // !HARMONIZE_2427_GETPLC
    Decoder_State *st /* i/o:    decoder memory state pointer */
)
{
@@ -448,8 +453,18 @@ Word16 GetPLCModeDecision_ivas_fx(
                    {
                        pitch = L_add( st->old_fpitch, 0 ); /*Q16*/
                    }

#ifndef HARMONIZE_2427_GETPLC
                    TonalMDCTConceal_Detect_ivas_fx( st->hTonalMDCTConc, pitch, &numIndices, ( EQ_16( st->element_mode, IVAS_CPE_MDCT ) ? &( st->hTcxCfg->psychParamsTCX20 ) : st->hTcxCfg->psychParamsCurrent ), st->element_mode );
#else
                    IF( NE_16( st->element_mode, EVS_MONO ) )
                    {
                        TonalMDCTConceal_Detect_ivas_fx( st->hTonalMDCTConc, pitch, &numIndices, ( EQ_16( st->element_mode, IVAS_CPE_MDCT ) ? &( st->hTcxCfg->psychParamsTCX20 ) : st->hTcxCfg->psychParamsCurrent ), st->element_mode );
                    }
                    ELSE
                    {
                        TonalMDCTConceal_Detect( st->hTonalMDCTConc, pitch, &numIndices, st->element_mode );
                    }
#endif // !HARMONIZE_2427_GETPLC

                    test();
                    test();
@@ -483,9 +498,11 @@ Word16 GetPLCModeDecision_ivas_fx(
            }
        }
    }

    return core; /*Q0*/
}

#ifndef HARMONIZE_2427_GETPLC
Word16 GetPLCModeDecision_fx(
    Decoder_State *st /* i/o:    decoder memory state pointer */
)
@@ -611,3 +628,4 @@ Word16 GetPLCModeDecision_fx(
    }
    return core;
}
#endif // !HARMONIZE_2427_GETPLC
+4 −1
Original line number Diff line number Diff line
@@ -838,8 +838,11 @@ void ivas_mdct_core_invQ_fx(

            /* PLC: [Common: mode decision]
             * PLC: Decide which Concealment to use. Update pitch lags if needed */

#ifndef HARMONIZE_2427_GETPLC
            st->core = GetPLCModeDecision_ivas_fx( st );
#else
            st->core = GetPLCModeDecision_fx( st );
#endif // !HARMONIZE_2427_GETPLC
        }

        test();
Loading