Commit 44cb56ea authored by emerit's avatar emerit
Browse files

fix issues when switch NONBE_FIX_AVG_IAC_CLDFB_REVERB is not activated

parent a82876f5
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -532,7 +532,11 @@ static ivas_error ivas_reverb_get_fastconv_hrtf_set_energies(
    ivas_error error;
#endif
#ifdef NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES
#ifdef NONBE_FIX_AVG_IAC_CLDFB_REVERB
    const int16_t avg_pwr_len = sampling_rate == 16000 ? LR_IAC_LENGTH_NR_FC_16KHZ : LR_IAC_LENGTH_NR_FC;
#else
    const int16_t avg_pwr_len = LR_IAC_LENGTH_NR_FC;
#endif

    for ( freq_idx = 0; freq_idx < avg_pwr_len; freq_idx++ )
    {
+21 −0
Original line number Diff line number Diff line
@@ -674,9 +674,30 @@ static ivas_error load_reverb_from_binary(
        hHrtfStatistics->average_energy_l = hHrtfStatistics->average_energy_l_dyn;
        hHrtfStatistics->average_energy_r = hHrtfStatistics->average_energy_r_dyn;
        hHrtfStatistics->inter_aural_coherence = hHrtfStatistics->inter_aural_coherence_dyn;
#ifdef NONBE_FIX_AVG_IAC_CLDFB_REVERB
        fread( hHrtfStatistics->average_energy_l_dyn, sizeof( const float ), lr_iac_len, f_hrtf );
        fread( hHrtfStatistics->average_energy_r_dyn, sizeof( const float ), lr_iac_len, f_hrtf );
        fread( hHrtfStatistics->inter_aural_coherence_dyn, sizeof( const float ), lr_iac_len, f_hrtf );
#else
        switch ( sampleRate )
        {
            case 48000:
                memcpy( hHrtfStatistics->average_energy_l_dyn, defaultHRIR_left_avg_power_48kHz, sizeof( float ) * lr_iac_len );
                memcpy( hHrtfStatistics->average_energy_r_dyn, defaultHRIR_left_avg_power_48kHz, sizeof( float ) * lr_iac_len );
                memcpy( hHrtfStatistics->inter_aural_coherence, defaultHRIR_left_avg_power_48kHz, sizeof( float ) * lr_iac_len );
                break;
            case 32000:
                memcpy( hHrtfStatistics->average_energy_l_dyn, defaultHRIR_left_avg_power_32kHz, sizeof( float ) * lr_iac_len );
                memcpy( hHrtfStatistics->average_energy_r_dyn, defaultHRIR_left_avg_power_32kHz, sizeof( float ) * lr_iac_len );
                memcpy( hHrtfStatistics->inter_aural_coherence, defaultHRIR_left_avg_power_32kHz, sizeof( float ) * lr_iac_len );
                break;
            case 16000:
                memcpy( hHrtfStatistics->average_energy_l_dyn, defaultHRIR_left_avg_power_16kHz, sizeof( float ) * lr_iac_len );
                memcpy( hHrtfStatistics->average_energy_r_dyn, defaultHRIR_left_avg_power_16kHz, sizeof( float ) * lr_iac_len );
                memcpy( hHrtfStatistics->inter_aural_coherence, defaultHRIR_left_avg_power_16kHz, sizeof( float ) * lr_iac_len );
                break;
        }
#endif
        hHrtfStatistics->fromROM = FALSE;
#else
        /* left/right energy and interaural coherence for late reverb */