Commit efce5329 authored by thomas dettbarn's avatar thomas dettbarn
Browse files

Merge branch 'main' into 1227-basop-encoder-improve-wmops-performance-of-ivas_band_cov

parents bd629b6c e60d623d
Loading
Loading
Loading
Loading
Loading
+1 −17
Original line number Diff line number Diff line
@@ -381,18 +381,10 @@
    <ClCompile Include="..\lib_enc\nelp_enc_fx.c" />
    <ClCompile Include="..\lib_enc\noise_adjust.c" />
    <ClCompile Include="..\lib_enc\nois_est.c" />
    <ClCompile Include="..\lib_enc\normalizecoefs.c" />
    <ClCompile Include="..\lib_enc\peak_vq_enc.c" />
    <ClCompile Include="..\lib_enc\pitch_ol.c" />
    <ClCompile Include="..\lib_enc\pitch_ol2.c" />
    <ClCompile Include="..\lib_enc\pit_enc.c" />
    <ClCompile Include="..\lib_enc\plc_enc_ext.c" />
    <ClCompile Include="..\lib_enc\ppp_enc.c" />
    <ClCompile Include="..\lib_enc\pre_proc.c" />
    <ClCompile Include="..\lib_enc\pvq_core_enc.c" />
    <ClCompile Include="..\lib_enc\pvq_encode.c" />
    <ClCompile Include="..\lib_enc\qlpc_avq.c" />
    <ClCompile Include="..\lib_enc\q_gain2p.c" />
    <ClCompile Include="..\lib_enc\rom_enc.c" />
    <ClCompile Include="..\lib_enc\setmodeindex.c" />
    <ClCompile Include="..\lib_enc\ivas_sns_enc.c" />
@@ -408,22 +400,14 @@
    <ClCompile Include="..\lib_enc\update_decision_fx.c" />
    <ClCompile Include="..\lib_enc\updt_enc_fx.c" />
    <ClCompile Include="..\lib_enc\updt_tar_fx.c" />
    <ClCompile Include="..\lib_enc\vad.c" />
    <ClCompile Include="..\lib_enc\vad_basop_fx.c" />
    <ClCompile Include="..\lib_enc\vad_fx.c" />
    <ClCompile Include="..\lib_enc\vad_param_updt.c" />
    <ClCompile Include="..\lib_enc\vad_param_updt_fx.c" />
    <ClCompile Include="..\lib_enc\vad_proc.c" />
    <ClCompile Include="..\lib_enc\vad_proc_fx.c" />
    <ClCompile Include="..\lib_enc\vbr_average_rate.c" />
    <ClCompile Include="..\lib_enc\vbr_average_rate_fx.c" />
    <ClCompile Include="..\lib_enc\vlpc_1st_cod.c" />
    <ClCompile Include="..\lib_enc\vlpc_1st_cod_fx.c" />
    <ClCompile Include="..\lib_enc\vlpc_2st_cod.c" />
    <ClCompile Include="..\lib_enc\vlpc_2st_cod_fx.c" />
    <ClCompile Include="..\lib_enc\voiced_enc.c" />
    <ClCompile Include="..\lib_enc\voiced_enc_fx.c" />
    <ClCompile Include="..\lib_enc\waveadjust_fec_cod.c" />
    <ClCompile Include="..\lib_enc\waveadjust_fec_cod_fx.c" />
  </ItemGroup>
  <ItemGroup>
+1 −48
Original line number Diff line number Diff line
@@ -67,30 +67,14 @@
    <ClCompile Include="..\lib_enc\nelp_enc.c">
      <Filter>enc_evs_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\ppp_enc.c">
      <Filter>enc_evs_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\plc_enc_ext.c">
      <Filter>enc_evs_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\pre_proc.c">
      <Filter>enc_evs_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\vbr_average_rate.c">
      <Filter>enc_evs_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\voiced_enc.c">
      <Filter>enc_evs_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\q_gain2p.c">
      <Filter>enc_evs_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\ltd_stable.c">
      <Filter>enc_evs_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\vad_proc.c">
      <Filter>enc_evs_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\ari_enc.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
@@ -238,12 +222,6 @@
    <ClCompile Include="..\lib_enc\noise_adjust.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\normalizecoefs.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\peak_vq_enc.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\pit_enc.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
@@ -253,37 +231,12 @@
    <ClCompile Include="..\lib_enc\pitch_ol2.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\pvq_core_enc.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\pvq_encode.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\qlpc_avq.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\rom_enc.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\setmodeindex.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\swb_pre_proc.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\vad.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\vad_param_updt.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\vlpc_1st_cod.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\vlpc_2st_cod.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\waveadjust_fec_cod.c">
      <Filter>enc_all_c</Filter>
    </ClCompile>
    <ClCompile Include="..\lib_enc\comvad_decision.c">
+3 −0
Original line number Diff line number Diff line
@@ -137,6 +137,7 @@
#define FOUR_IN_Q28                     1073741824

#define MAX_WORD16                      32767
#define ONE_IN_Q45                      (Word64)0x200000000000
#define ONE_IN_Q62                      (Word64)0x4000000000000000
/*----------------------------------------------------------------------------------*
 * General constants
@@ -760,6 +761,8 @@ enum
#define FORMANT_SHARPENING_NOISE_THRESHOLD  21.0f                  /* lp_noise level above which formant sharpening is deactivated */
#define E_MIN_FX                              1       /* QSCALE (Q7)*/
#define E_MIN_IVAS_FX                         1835       /* (Q19) (E12) */
#define E_MIN_IVAS_FX_Q31                     7516193       /* (Q31) (0.0035f) */

#define STEP_DELTA_FX                         11
#define FORMANT_SHARPENING_NOISE_THRESHOLD_FX   5376     /* 21 (!8)lp_noise level above which formant sharpening is deactivated - at this level most of 20 dB SNR office noisy speech still uses sharpening */

+1 −0
Original line number Diff line number Diff line
@@ -150,6 +150,7 @@ typedef enum
    RENDERER_OSBA_LS
} RENDERER_TYPE;

#define MAX_FREQUENCY_BANDS                    64

/*----------------------------------------------------------------------------------*
 * IVAS general constants
+32 −17
Original line number Diff line number Diff line
@@ -966,38 +966,55 @@ void computeDiffuseness_fixed(
        p_tmp_c = buffer_energy + i * num_freq_bands;

        q_tmp = add( q_factor_energy[i], min_q_shift1 );

        Word16 shift_q = sub( q_tmp, q_ene );
        IF( shift_q < 0 )
        {
            FOR( k = 0; k < num_freq_bands; k++ )
            {
                tmp = L_shl( p_tmp_c[k], min_q_shift1 );
            IF( LT_16( q_tmp, q_ene ) )
            {
                energy_slow[k] = L_add( L_shr( energy_slow[k], sub( q_ene, q_tmp ) ), tmp );
                energy_slow[k] = L_add( L_shl( energy_slow[k], shift_q ), tmp );
                move32();
            }
        }
        ELSE
        {
                energy_slow[k] = L_add( energy_slow[k], L_shr( tmp, sub( q_tmp, q_ene ) ) );
            FOR( k = 0; k < num_freq_bands; k++ )
            {
                tmp = L_shl( p_tmp_c[k], min_q_shift1 );
                energy_slow[k] = L_add( energy_slow[k], L_shr( tmp, shift_q ) );
                move32();
            }
        }

        q_ene = s_min( q_ene, q_tmp );

        /* Intensity slow */
        q_tmp = add( q_factor_intensity[i], min_q_shift2 );

        shift_q = sub( q_tmp, q_intensity );
        IF( shift_q > 0 )
        {
            FOR( j = 0; j < DIRAC_NUM_DIMS; ++j )
            {
                p_tmp = buffer_intensity[j][i];
                FOR( k = 0; k < num_freq_bands; k++ )
                {
                    tmp = L_shl( p_tmp[k], min_q_shift2 );
                IF( LT_16( q_intensity, q_tmp ) )
                {
                    intensity_slow[j * num_freq_bands + k] = L_add( intensity_slow[j * num_freq_bands + k], L_shr( tmp, sub( q_tmp, q_intensity ) ) );
                    intensity_slow[j * num_freq_bands + k] = L_add( intensity_slow[j * num_freq_bands + k], L_shr( tmp, shift_q ) );
                    move32();
                }
            }
        }
        ELSE
        {
                    intensity_slow[j * num_freq_bands + k] = L_add( L_shr( intensity_slow[j * num_freq_bands + k], sub( q_intensity, q_tmp ) ), tmp );
            FOR( j = 0; j < DIRAC_NUM_DIMS; ++j )
            {
                p_tmp = buffer_intensity[j][i];
                FOR( k = 0; k < num_freq_bands; k++ )
                {
                    tmp = L_shl( p_tmp[k], min_q_shift2 );
                    intensity_slow[j * num_freq_bands + k] = L_add( L_shl( intensity_slow[j * num_freq_bands + k], shift_q ), tmp );
                    move32();
                }
            }
@@ -1017,9 +1034,7 @@ void computeDiffuseness_fixed(

        FOR( k = 0; k < num_freq_bands; k++ )
        {
            p_tmp[k] = Mpy_32_32( p_tmp[k], p_tmp[k] );
            move32();
            intensity_slow_abs[k] = L_add( intensity_slow_abs[k], p_tmp[k] );
            intensity_slow_abs[k] = Madd_32_32( intensity_slow_abs[k], p_tmp[k], p_tmp[k] );
            move32();
        }
    }
Loading