Commit 6e9e23d1 authored by multrus's avatar multrus
Browse files

[cleanup] accept FIX_2405_HARM_SMC_INIT

parent 2f6e379b
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -83,7 +83,6 @@
#define FIX_1990_SANITIZER_IN_REVERB_LOAD               /* Nokia: Fix issue part of issue 1990 by introducing missing free of structure - keep until #2059 is addressed */
#define TMP_1342_WORKAROUND_DEC_FLUSH_BROKEN_IN_SR      /* FhG: Temporary workaround for incorrect implementation of decoder flush with split rendering */
#define NONBE_1122_KEEP_EVS_MODE_UNCHANGED              /* FhG: Disables fix for issue 1122 in EVS mode to keep BE tests green. This switch should be removed once the 1122 fix is added to EVS via a CR.  */
#define FIX_2405_HARM_SMC_INIT                          /* VA, basop 2405, harmonisation of SMC init */
#define FIX_2280_REDUCTION_UNNECESSARY_SCALING          /* VA: reduction of unnecessary scaling */
#define FIX_2280_REDUCTION_UNNECESSARY_SCALING_NONBE    /* VA: reduction of unnecessary scaling, non-BE part */
#define FIX_2403_COMBINE_PITCH_OL                       /* VA : basop 2403, reusing common code between EVS and IVAS in pitch_ol */
+0 −11
Original line number Diff line number Diff line
@@ -545,18 +545,7 @@ ivas_error init_encoder_fx(
            return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for Speech/music classifier\n" ) );
        }

#ifndef FIX_2405_HARM_SMC_INIT
        IF( st->element_mode == EVS_MONO )
        {
            speech_music_clas_init_fx( st->hSpMusClas );
        }
        ELSE
        {
            speech_music_clas_init_ivas_fx( st->hSpMusClas );
        }
#else
        speech_music_clas_init_fx( st->element_mode, st->hSpMusClas );
#endif

        st->sp_aud_decision0 = 0;
        move16();
+0 −4
Original line number Diff line number Diff line
@@ -93,11 +93,7 @@ static ivas_error allocate_CoreCoder_enc_fx(
        {
            return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for Speech/music classifier\n" ) );
        }
#ifndef FIX_2405_HARM_SMC_INIT
        speech_music_clas_init_ivas_fx( st->hSpMusClas );
#else
        speech_music_clas_init_fx( st->element_mode, st->hSpMusClas );
#endif
    }

    return IVAS_ERR_OK;
+0 −7
Original line number Diff line number Diff line
@@ -1090,17 +1090,10 @@ void coder_type_modif_fx(
);

void speech_music_clas_init_fx(
#ifdef FIX_2405_HARM_SMC_INIT
    const Word16 element_mode, /* i  : element mode                     */
#endif
    SP_MUS_CLAS_HANDLE hSpMusClas /* i/o: speech/music classifier handle   */
);

#ifndef FIX_2405_HARM_SMC_INIT
void speech_music_clas_init_ivas_fx(
    SP_MUS_CLAS_HANDLE hSpMusClas /* i/o: speech/music classifier handle   */
);
#endif

void pitchDoubling_det_fx(
    Word16 *wspeech,
+0 −157
Original line number Diff line number Diff line
@@ -75,163 +75,8 @@ static void detect_sparseness_fx( Encoder_State *st_fx, const Word16 localVAD_HE
 * Initialization of speech/music classifier
 *---------------------------------------------------------------------*/

#ifndef FIX_2405_HARM_SMC_INIT
void speech_music_clas_init_fx(
    SP_MUS_CLAS_HANDLE hSpMusClas /* i/o: speech/music classifier handle   */
)
{
    Word16 i;


    hSpMusClas->inact_cnt = 0;
    move16();
    set16_fx( hSpMusClas->past_dec, 0, HANG_LEN - 1 );
    set16_fx( hSpMusClas->past_dlp_fx, 0, HANG_LEN - 1 );
    set16_fx( hSpMusClas->past_log_enr_fx, -1448, NB_BANDS_SPMUS ); /* log(E_MIN) in Q8 */

    hSpMusClas->sp_mus_state = -8;
    move16();
    hSpMusClas->wdrop_fx = 0;
    move16();
    hSpMusClas->wdlp_0_95_sp_fx = 0;
    move16();
    set16_fx( hSpMusClas->last_lsp_fx, 0, M_LSP_SPMUS );
    hSpMusClas->last_cor_map_sum_fx = 0;
    move16();
    hSpMusClas->last_non_sta_fx = 0;
    move16();
    set32_fx( hSpMusClas->past_PS_fx, 0, HIGHEST_FBIN - LOWEST_FBIN );
    hSpMusClas->past_ps_diff_fx = 0;
    move16();
    hSpMusClas->past_epsP2_fx = 1024;
    move16();


    hSpMusClas->gsc_thres_fx[0] = TH_0_MIN_FX;
    move16();
    hSpMusClas->gsc_thres_fx[1] = TH_1_MIN_FX;
    move16();
    hSpMusClas->gsc_thres_fx[2] = TH_2_MIN_FX;
    move16();
    hSpMusClas->gsc_thres_fx[3] = TH_3_MIN_FX;
    move16();
    set16_fx( hSpMusClas->gsc_lt_diff_etot_fx, 0, 40 );
    hSpMusClas->gsc_mem_etot_fx = 0;
    move16();
    hSpMusClas->gsc_last_music_flag = 0;
    move16();
    hSpMusClas->gsc_nb_thr_1 = 0;
    move16();
    hSpMusClas->gsc_nb_thr_3 = 0;
    move16();
    hSpMusClas->mold_corr_fx = 29491;
    move16();
    hSpMusClas->mean_avr_dyn_fx = 64;
    move16(); /*Q7 */
    hSpMusClas->last_sw_dyn_fx = 2560;
    move16();
    /* speech/music classifier improvement */
    FOR( i = 0; i < BUF_LEN; i++ )
    {
        hSpMusClas->buf_flux_fx[i] = -12800;
        move16(); /*-100.0 in Q7 */
        hSpMusClas->buf_pkh_fx[i] = 0;
        move16();
        hSpMusClas->buf_epsP_tilt_fx[i] = 0;
        move16();
        hSpMusClas->buf_cor_map_sum_fx[i] = 0;
        move16();
        hSpMusClas->buf_Ntonal_fx[i] = 0;
        move16();
        hSpMusClas->buf_Ntonal2_fx[i] = 0;
        move16();
        hSpMusClas->buf_Ntonal_lf_fx[i] = 0;
        move16();
    }

    set16_fx( hSpMusClas->lpe_buf_fx, 0, HANG_LEN_INIT );
    set16_fx( hSpMusClas->voicing_buf_fx, 0, HANG_LEN_INIT );
    hSpMusClas->gsc_hangover = 0;
    move16();
    set16_fx( hSpMusClas->sparse_buf_fx, 0, HANG_LEN_INIT );
    set16_fx( hSpMusClas->hf_spar_buf_fx, 0, HANG_LEN_INIT );
    hSpMusClas->LT_sparse_fx = 0;
    move16();
    hSpMusClas->gsc_cnt = 0;
    move16();
    set16_fx( hSpMusClas->old_Bin_E_fx, 0, 3 * N_OLD_BIN_E );
    set16_fx( hSpMusClas->buf_etot_fx, 0, 4 );
    set16_fx( hSpMusClas->buf_dlp_fx, 0, 10 );

    hSpMusClas->UV_cnt1 = 300;
    move16();
    hSpMusClas->LT_UV_cnt1_fx = 16000;
    move16(); /*250.0f in Q6 */
    hSpMusClas->onset_cnt = 0;
    move16();
    hSpMusClas->attack_hangover = 0;
    move16();
    hSpMusClas->dec_mov_fx = 0;
    move16();
    hSpMusClas->dec_mov1_fx = 0;
    move16();
    hSpMusClas->mov_log_max_spl_fx = 25600;
    move16(); /*200.0 in Q7 */
    hSpMusClas->old_lt_diff_fx[0] = 0;
    move16();
    hSpMusClas->old_lt_diff_fx[1] = 0;
    move16();

    /* GSC - pitch excitation parameters */
    hSpMusClas->high_stable_cor = 0;
    move16();
    set16_fx( hSpMusClas->var_cor_t_fx, 0, VAR_COR_LEN );

    hSpMusClas->lps_fx = 0;
    move16();
    hSpMusClas->lpm_fx = 0;
    move16();
    hSpMusClas->lt_dec_thres_fx = 5120;
    move16(); /*10 in Q9 */
    hSpMusClas->ener_RAT_fx = 0;
    move16();

    /* speech/music classification */
    set16_fx( hSpMusClas->lt_old_mode, 1, 3 );
    hSpMusClas->lt_voicing = 16384 /*0.5f Q15*/;
    move16();
    hSpMusClas->lt_corr = 16384 /*0.5f Q15*/;
    move16();
    hSpMusClas->lt_tonality = 0;
    move32();
    set16_fx( hSpMusClas->lt_corr_pitch, 0, 3 );
    hSpMusClas->lt_hangover = 0;
    move16();
    hSpMusClas->lowrate_pitchGain = 0;
    move16();


    hSpMusClas->lt_music_hangover = 0;
    move16();
    set16_fx( hSpMusClas->tonality2_buf_fx, 0, HANG_LEN_INIT );
    set16_fx( hSpMusClas->tonality3_buf_fx, 0, HANG_LEN_INIT );
    set16_fx( hSpMusClas->LPCErr_buf_fx, 0, HANG_LEN_INIT );
    hSpMusClas->lt_music_state = 0;
    move16();
    hSpMusClas->lt_speech_state = 0;
    move16();
    hSpMusClas->lt_speech_hangover = 0;
    move16();


    return;
}

void speech_music_clas_init_ivas_fx(
#else
void speech_music_clas_init_fx(
    const Word16 element_mode, /* i  : element mode                      */
#endif
    SP_MUS_CLAS_HANDLE hSpMusClas /* i/o: speech/music classifier handle    */

)
@@ -379,7 +224,6 @@ void speech_music_clas_init_fx(
    hSpMusClas->lt_speech_hangover = 0;
    move16();

#ifdef FIX_2405_HARM_SMC_INIT
    IF( element_mode > EVS_MONO )
    {
        set32_fx( hSpMusClas->FV_st_fx, 0, N_SMC_FEATURES );
@@ -451,7 +295,6 @@ void speech_music_clas_init_fx(
        hSpMusClas->lpn_fx = 0;
        move16();
    }
#endif

    return;
}