Commit c10fcf4e authored by Marek Szczerba's avatar Marek Szczerba
Browse files

Merge branch '1741_ref_enable_switches' into 'float-pc'

[Non-BE][Rend Non-BE]Enable switches following HRTF model MR

See merge request !1816
parents 9ad5c93b 4f8a059b
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -183,8 +183,8 @@
#define FIX_1022_REMOVE_PARAMISM_DEC                    /* VA: issue 1022: remove unused function ivas_param_ism_dec() */

#define USE_NEW_HRTF_BINARY_FILE_FORMAT                 /* Orange: to activate when decided to change the hrtf binary file format */
//#define NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES       /* Philips: Use pre-computed HRTF average L/R energies and IAC in all renderers	*/
//#define FIX_638_ENERGIE_IAC_ROM_TABLES                  /* Orange: Missing left/right and coherence late reverb tables in binary format */
#define NONBE_FIX_922_PRECOMPUTED_HRTF_PROPERTIES       /* Philips: Use pre-computed HRTF average L/R energies and IAC in all renderers	*/
#define FIX_638_ENERGIE_IAC_ROM_TABLES                  /* Orange: Missing left/right and coherence late reverb tables in binary format */
#define FIX_WARNING_RENDER_CONFIG                       /* Orange: fix warning on windows build */
#define FIX_INV_DIFFUSE_WEIGHT                          /* Orange : Fix error in energy compensation in late binaural */

+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 */