Loading lib_dec/ivas_binRenderer_internal.c +1 −1 Original line number Diff line number Diff line Loading @@ -1084,7 +1084,7 @@ static ivas_error ivas_binaural_hrtf_open_fx( { FOR( j = 0; j < HRTF_LS_CHANNELS; j++ ) { #ifdef FIX_POINT_HRTF_FILE_OPTIM #ifdef FIX_1123_FASTCONV_PARAMBIN_16BIT_ROM HrtfFastConv->leftReal_fx[i][j] = leftHRIRReal_fx[i][j]; HrtfFastConv->leftImag_fx[i][j] = leftHRIRImag_fx[i][j]; HrtfFastConv->rightReal_fx[i][j] = rightHRIRReal_fx[i][j]; Loading lib_rend/ivas_crend.c +15 −15 Original line number Diff line number Diff line Loading @@ -294,7 +294,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_48kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_48kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_BRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_BRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_Combined_BRIR_inv_diffuse_weight_Q_48kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_BRIR_coeff_Q_48kHz; } Loading @@ -303,7 +303,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_48kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_48kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_Combined_HRIR_inv_diffuse_weight_Q_48kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_HRIR_coeff_Q_48kHz; } Loading Loading @@ -344,7 +344,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_32kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_32kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_BRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_BRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_Combined_BRIR_inv_diffuse_weight_Q_32kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_BRIR_coeff_Q_32kHz; } Loading @@ -353,7 +353,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_32kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_32kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_Combined_HRIR_inv_diffuse_weight_Q_32kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_HRIR_coeff_Q_32kHz; } Loading Loading @@ -394,7 +394,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_16kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_BRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_BRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_Combined_BRIR_inv_diffuse_weight_Q_16kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_BRIR_coeff_Q_16kHz; } Loading @@ -403,7 +403,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_16kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_Combined_HRIR_inv_diffuse_weight_Q_16kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_HRIR_coeff_Q_16kHz; } Loading Loading @@ -572,7 +572,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_HOA3_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_HOA3_HRIR_max_num_iterations_48kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA3_HRIR_index_frequency_max_diffuse_48kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA3_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA3_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_HOA3_HRIR_inv_diffuse_weight_Q_48kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA3_HRIR_coeff_Q_48kHz; move32(); Loading Loading @@ -616,7 +616,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_HOA3_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_HOA3_HRIR_max_num_iterations_32kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA3_HRIR_index_frequency_max_diffuse_32kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA3_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA3_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_HOA3_HRIR_inv_diffuse_weight_Q_32kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA3_HRIR_coeff_Q_32kHz; move32(); Loading Loading @@ -662,7 +662,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_HOA3_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_HOA3_HRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA3_HRIR_index_frequency_max_diffuse_16kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA3_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA3_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_HOA3_HRIR_inv_diffuse_weight_Q_16kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA3_HRIR_coeff_Q_16kHz; move16(); Loading Loading @@ -714,7 +714,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_HOA2_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_HOA2_HRIR_max_num_iterations_48kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA2_HRIR_index_frequency_max_diffuse_48kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA2_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA2_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_HOA2_HRIR_inv_diffuse_weight_Q_48kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA2_HRIR_coeff_Q_48kHz; move32(); Loading Loading @@ -759,7 +759,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_HOA2_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_HOA2_HRIR_max_num_iterations_32kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA2_HRIR_index_frequency_max_diffuse_32kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA2_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA2_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_HOA2_HRIR_inv_diffuse_weight_Q_32kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA2_HRIR_coeff_Q_32kHz; move32(); Loading Loading @@ -804,7 +804,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_HOA2_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_HOA2_HRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA2_HRIR_index_frequency_max_diffuse_16kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA2_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA2_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_HOA2_HRIR_inv_diffuse_weight_Q_16kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA2_HRIR_coeff_Q_16kHz; move32(); Loading Loading @@ -857,7 +857,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_FOA_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_FOA_HRIR_max_num_iterations_48kHz; hHrtf->index_frequency_max_diffuse = CRendBin_FOA_HRIR_index_frequency_max_diffuse_48kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_FOA_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_FOA_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_FOA_HRIR_inv_diffuse_weight_Q_48kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_FOA_HRIR_coeff_Q_48kHz; move16(); Loading Loading @@ -902,7 +902,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_FOA_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_FOA_HRIR_max_num_iterations_32kHz; hHrtf->index_frequency_max_diffuse = CRendBin_FOA_HRIR_index_frequency_max_diffuse_32kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_FOA_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_FOA_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_FOA_HRIR_inv_diffuse_weight_Q_32kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_FOA_HRIR_coeff_Q_32kHz; move16(); Loading Loading @@ -949,7 +949,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_FOA_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_FOA_HRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_FOA_HRIR_index_frequency_max_diffuse_16kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_FOA_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_FOA_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_FOA_HRIR_inv_diffuse_weight_Q_16kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_FOA_HRIR_coeff_Q_16kHz; move32(); Loading lib_rend/ivas_objectRenderer_mix.c +0 −1 Original line number Diff line number Diff line Loading @@ -594,7 +594,6 @@ static ivas_error DefaultBSplineModel_fx( model->azimKSeq_fx[i][j] = L_shl( L_mult0( defaultHRIR_rom_azimSegSamples[0], j ), Q22 ); } } j = j; } #else FOR( i = 1; i < sub( model->elevDim3, 1 ); i++ ) Loading lib_rend/ivas_reverb.c +12 −18 Original line number Diff line number Diff line Loading @@ -147,14 +147,10 @@ typedef struct ivas_reverb_params_t const Word16 *pHrtf_avg_pwr_response_l_const_fx; /* The HRTF set's average left ear power response */ const Word16 *pHrtf_avg_pwr_response_r_const_fx; /* The HRTF set's average right ear power response */ const Word16 *pHrtf_inter_aural_coherence_const_fx; /* The HRTF set's inter-aural coherence for diffuse sound */ #else #endif Word32 *pHrtf_avg_pwr_response_l_fx; /* The HRTF set's average left ear power response */ Word32 *pHrtf_avg_pwr_response_r_fx; /* The HRTF set's average right ear power response */ Word32 *pHrtf_inter_aural_coherence_fx; /* The HRTF set's inter-aural coherence for diffuse sound */ const Word32 *pHrtf_avg_pwr_response_l_const_fx; /* The HRTF set's average left ear power response */ const Word32 *pHrtf_avg_pwr_response_r_const_fx; /* The HRTF set's average right ear power response */ const Word32 *pHrtf_inter_aural_coherence_const_fx; /* The HRTF set's inter-aural coherence for diffuse sound */ #endif Word16 do_corr_filter; /* Flag indicating whether correlation filters should be used. */ /* Correlation only supported and needed for binaural playback (i.e. */ /* when nr_outputs != 2 correlation filtering is never supported). */ Loading Loading @@ -1262,7 +1258,7 @@ static void set_fft_and_datablock_sizes_fx( return; } #ifndef FIX_POINT_HRTF_FILE_FORMAT_REVERB /*-----------------------------------------------------------------------------------------* * Function set_reverb_acoustic_data() * Loading @@ -1278,15 +1274,11 @@ static void set_reverb_acoustic_data_fx( const Word16 nr_fc_input, const Word16 nr_fc_fft_filter ) { #ifndef FIX_POINT_HRTF_FILE_FORMAT_REVERB Word16 nr_out_ch, hrtf_idx, offset, iter_idx, bin_idx; Word32 *pHrtf_set_l_re_fx[MAX_INTERN_CHANNELS]; Word32 *pHrtf_set_l_im_fx[MAX_INTERN_CHANNELS]; Word32 *pHrtf_set_r_re_fx[MAX_INTERN_CHANNELS]; Word32 *pHrtf_set_r_im_fx[MAX_INTERN_CHANNELS]; #else Word16 bin_idx; #endif Word32 ln_1e6_inverted_fx, delay_diff_fx, L_tmp; Word16 exp_argument_fx, tmp, tmp_flag, exp_argument_e; Word16 pow_exp; Loading @@ -1301,7 +1293,6 @@ static void set_reverb_acoustic_data_fx( Word32 *pDsr_fx = pParams->pDsr_fx; Word16 *pDsr_e = pParams->pDsr_e; #ifndef FIX_POINT_HRTF_FILE_FORMAT_REVERB /* use crend hrtf filters */ IF( hHrtf != NULL ) { Loading Loading @@ -1342,7 +1333,6 @@ static void set_reverb_acoustic_data_fx( pParams->pHrtf_avg_pwr_response_r_const_fx = (const Word32 *) pParams->pHrtf_avg_pwr_response_r_fx; pParams->pHrtf_inter_aural_coherence_const_fx = (const Word32 *) pParams->pHrtf_inter_aural_coherence_fx; } #endif /* interpolate input table data for T60 and DSR to the FFT filter grid */ ivas_reverb_interpolate_acoustic_data_fx( nr_fc_input, pFc_input_fx, pAcoustic_rt60_fx, pAcoustic_dsr_fx, nr_fc_fft_filter, pFc_fx, pRt60_fx, pDsr_fx, pRt60_e, pDsr_e ); Loading Loading @@ -1400,7 +1390,7 @@ static void set_reverb_acoustic_data_fx( return; } #endif /*-----------------------------------------------------------------------------------------* * Function setup_FDN_branches_fx() * Loading Loading @@ -1497,7 +1487,11 @@ ivas_error ivas_reverb_open_fx( Word32 pTime_window_fx[RV_FILTER_MAX_FFT_SIZE]; Word32 freq_step_fx; Word16 fft_hist_size, transition_start, transition_length; #ifdef FIX_POINT_HRTF_FILE_FORMAT_REVERB Word16 nr_fc_fft_filter; #else Word16 nr_fc_input, nr_fc_fft_filter; #endif rv_fftwf_type_complex_fx pFft_wf_filter_ch0_fx[RV_LENGTH_NR_FC]; rv_fftwf_type_complex_fx pFft_wf_filter_ch1_fx[RV_LENGTH_NR_FC]; Loading @@ -1506,8 +1500,9 @@ ivas_error ivas_reverb_open_fx( subframe_len = shr( output_frame, 2 ); /*output_frame / MAX_PARAM_SPATIAL_SUBFRAMES*/ predelay_bf_len = output_frame; move16(); #ifndef FIX_POINT_HRTF_FILE_FORMAT_REVERB nr_fc_input = hRenderConfig->roomAcoustics.nBands; #endif /* Allocate main reverb. handle */ IF( ( pState = (REVERB_HANDLE) malloc( sizeof( REVERB_DATA ) ) ) == NULL ) { Loading Loading @@ -1555,7 +1550,6 @@ ivas_error ivas_reverb_open_fx( { params.pFc_fx[bin_idx] = W_extract_l( W_mult0_32_32( freq_step_fx, bin_idx ) ); /*Q14*/ } set_reverb_acoustic_data_fx( ¶ms, &hRenderConfig->roomAcoustics, nr_fc_input, nr_fc_fft_filter ); params.pHrtf_avg_pwr_response_l_const_fx = hHrtfStatistics->average_energy_l; params.pHrtf_avg_pwr_response_r_const_fx = hHrtfStatistics->average_energy_r; params.pHrtf_inter_aural_coherence_const_fx = hHrtfStatistics->inter_aural_coherence; Loading lib_rend/ivas_rom_TdBinauralRenderer.c +1 −1 Original line number Diff line number Diff line Loading @@ -48,7 +48,7 @@ *------------------------------------------------------------------------*/ /* TD renderer default HRIR model */ #ifdef DEBUGGING /* Generated on 17-Jan-2025 with Matlab version 23.2.0.2668659 (R2023b) Update 9 by marcemerit on MACA64 */ /* Generated on 18-Jan-2025 with Matlab version 23.2.0.2668659 (R2023b) Update 9 by marcemerit on MACA64 */ #endif #ifdef IVAS_FLOAT_FIXED Loading
lib_dec/ivas_binRenderer_internal.c +1 −1 Original line number Diff line number Diff line Loading @@ -1084,7 +1084,7 @@ static ivas_error ivas_binaural_hrtf_open_fx( { FOR( j = 0; j < HRTF_LS_CHANNELS; j++ ) { #ifdef FIX_POINT_HRTF_FILE_OPTIM #ifdef FIX_1123_FASTCONV_PARAMBIN_16BIT_ROM HrtfFastConv->leftReal_fx[i][j] = leftHRIRReal_fx[i][j]; HrtfFastConv->leftImag_fx[i][j] = leftHRIRImag_fx[i][j]; HrtfFastConv->rightReal_fx[i][j] = rightHRIRReal_fx[i][j]; Loading
lib_rend/ivas_crend.c +15 −15 Original line number Diff line number Diff line Loading @@ -294,7 +294,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_48kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_48kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_BRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_BRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_Combined_BRIR_inv_diffuse_weight_Q_48kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_BRIR_coeff_Q_48kHz; } Loading @@ -303,7 +303,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_48kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_48kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_Combined_HRIR_inv_diffuse_weight_Q_48kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_HRIR_coeff_Q_48kHz; } Loading Loading @@ -344,7 +344,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_32kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_32kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_BRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_BRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_Combined_BRIR_inv_diffuse_weight_Q_32kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_BRIR_coeff_Q_32kHz; } Loading @@ -353,7 +353,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_32kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_32kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_Combined_HRIR_inv_diffuse_weight_Q_32kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_HRIR_coeff_Q_32kHz; } Loading Loading @@ -394,7 +394,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_16kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_BRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_BRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_Combined_BRIR_inv_diffuse_weight_Q_16kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_BRIR_coeff_Q_16kHz; } Loading @@ -403,7 +403,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_16kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_Combined_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_Combined_HRIR_inv_diffuse_weight_Q_16kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_HRIR_coeff_Q_16kHz; } Loading Loading @@ -572,7 +572,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_HOA3_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_HOA3_HRIR_max_num_iterations_48kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA3_HRIR_index_frequency_max_diffuse_48kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA3_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA3_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_HOA3_HRIR_inv_diffuse_weight_Q_48kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA3_HRIR_coeff_Q_48kHz; move32(); Loading Loading @@ -616,7 +616,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_HOA3_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_HOA3_HRIR_max_num_iterations_32kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA3_HRIR_index_frequency_max_diffuse_32kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA3_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA3_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_HOA3_HRIR_inv_diffuse_weight_Q_32kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA3_HRIR_coeff_Q_32kHz; move32(); Loading Loading @@ -662,7 +662,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_HOA3_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_HOA3_HRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA3_HRIR_index_frequency_max_diffuse_16kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA3_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA3_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_HOA3_HRIR_inv_diffuse_weight_Q_16kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA3_HRIR_coeff_Q_16kHz; move16(); Loading Loading @@ -714,7 +714,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_HOA2_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_HOA2_HRIR_max_num_iterations_48kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA2_HRIR_index_frequency_max_diffuse_48kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA2_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA2_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_HOA2_HRIR_inv_diffuse_weight_Q_48kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA2_HRIR_coeff_Q_48kHz; move32(); Loading Loading @@ -759,7 +759,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_HOA2_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_HOA2_HRIR_max_num_iterations_32kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA2_HRIR_index_frequency_max_diffuse_32kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA2_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA2_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_HOA2_HRIR_inv_diffuse_weight_Q_32kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA2_HRIR_coeff_Q_32kHz; move32(); Loading Loading @@ -804,7 +804,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_HOA2_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_HOA2_HRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA2_HRIR_index_frequency_max_diffuse_16kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA2_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_HOA2_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_HOA2_HRIR_inv_diffuse_weight_Q_16kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA2_HRIR_coeff_Q_16kHz; move32(); Loading Loading @@ -857,7 +857,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_FOA_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_FOA_HRIR_max_num_iterations_48kHz; hHrtf->index_frequency_max_diffuse = CRendBin_FOA_HRIR_index_frequency_max_diffuse_48kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_FOA_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_FOA_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_FOA_HRIR_inv_diffuse_weight_Q_48kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_FOA_HRIR_coeff_Q_48kHz; move16(); Loading Loading @@ -902,7 +902,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_FOA_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_FOA_HRIR_max_num_iterations_32kHz; hHrtf->index_frequency_max_diffuse = CRendBin_FOA_HRIR_index_frequency_max_diffuse_32kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_FOA_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_FOA_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_FOA_HRIR_inv_diffuse_weight_Q_32kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_FOA_HRIR_coeff_Q_32kHz; move16(); Loading Loading @@ -949,7 +949,7 @@ static ivas_error ivas_rend_initCrend( hHrtf->latency_s_fx = CRendBin_FOA_HRIR_latency_s_fx; hHrtf->max_num_iterations = CRendBin_FOA_HRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_FOA_HRIR_index_frequency_max_diffuse_16kHz; hHrtf->factor_Q_latency_s_fx = CRendBin_FOA_HRIR_latency_s_Q; hHrtf->factor_Q_latency_s_fx = CRendBin_FOA_HRIR_Q_latency_s_fx; hHrtf->factor_Q_inv_diffuse_weight = CRendBin_FOA_HRIR_inv_diffuse_weight_Q_16kHz; hHrtf->factor_Q_pOut_to_bin = CRendBin_FOA_HRIR_coeff_Q_16kHz; move32(); Loading
lib_rend/ivas_objectRenderer_mix.c +0 −1 Original line number Diff line number Diff line Loading @@ -594,7 +594,6 @@ static ivas_error DefaultBSplineModel_fx( model->azimKSeq_fx[i][j] = L_shl( L_mult0( defaultHRIR_rom_azimSegSamples[0], j ), Q22 ); } } j = j; } #else FOR( i = 1; i < sub( model->elevDim3, 1 ); i++ ) Loading
lib_rend/ivas_reverb.c +12 −18 Original line number Diff line number Diff line Loading @@ -147,14 +147,10 @@ typedef struct ivas_reverb_params_t const Word16 *pHrtf_avg_pwr_response_l_const_fx; /* The HRTF set's average left ear power response */ const Word16 *pHrtf_avg_pwr_response_r_const_fx; /* The HRTF set's average right ear power response */ const Word16 *pHrtf_inter_aural_coherence_const_fx; /* The HRTF set's inter-aural coherence for diffuse sound */ #else #endif Word32 *pHrtf_avg_pwr_response_l_fx; /* The HRTF set's average left ear power response */ Word32 *pHrtf_avg_pwr_response_r_fx; /* The HRTF set's average right ear power response */ Word32 *pHrtf_inter_aural_coherence_fx; /* The HRTF set's inter-aural coherence for diffuse sound */ const Word32 *pHrtf_avg_pwr_response_l_const_fx; /* The HRTF set's average left ear power response */ const Word32 *pHrtf_avg_pwr_response_r_const_fx; /* The HRTF set's average right ear power response */ const Word32 *pHrtf_inter_aural_coherence_const_fx; /* The HRTF set's inter-aural coherence for diffuse sound */ #endif Word16 do_corr_filter; /* Flag indicating whether correlation filters should be used. */ /* Correlation only supported and needed for binaural playback (i.e. */ /* when nr_outputs != 2 correlation filtering is never supported). */ Loading Loading @@ -1262,7 +1258,7 @@ static void set_fft_and_datablock_sizes_fx( return; } #ifndef FIX_POINT_HRTF_FILE_FORMAT_REVERB /*-----------------------------------------------------------------------------------------* * Function set_reverb_acoustic_data() * Loading @@ -1278,15 +1274,11 @@ static void set_reverb_acoustic_data_fx( const Word16 nr_fc_input, const Word16 nr_fc_fft_filter ) { #ifndef FIX_POINT_HRTF_FILE_FORMAT_REVERB Word16 nr_out_ch, hrtf_idx, offset, iter_idx, bin_idx; Word32 *pHrtf_set_l_re_fx[MAX_INTERN_CHANNELS]; Word32 *pHrtf_set_l_im_fx[MAX_INTERN_CHANNELS]; Word32 *pHrtf_set_r_re_fx[MAX_INTERN_CHANNELS]; Word32 *pHrtf_set_r_im_fx[MAX_INTERN_CHANNELS]; #else Word16 bin_idx; #endif Word32 ln_1e6_inverted_fx, delay_diff_fx, L_tmp; Word16 exp_argument_fx, tmp, tmp_flag, exp_argument_e; Word16 pow_exp; Loading @@ -1301,7 +1293,6 @@ static void set_reverb_acoustic_data_fx( Word32 *pDsr_fx = pParams->pDsr_fx; Word16 *pDsr_e = pParams->pDsr_e; #ifndef FIX_POINT_HRTF_FILE_FORMAT_REVERB /* use crend hrtf filters */ IF( hHrtf != NULL ) { Loading Loading @@ -1342,7 +1333,6 @@ static void set_reverb_acoustic_data_fx( pParams->pHrtf_avg_pwr_response_r_const_fx = (const Word32 *) pParams->pHrtf_avg_pwr_response_r_fx; pParams->pHrtf_inter_aural_coherence_const_fx = (const Word32 *) pParams->pHrtf_inter_aural_coherence_fx; } #endif /* interpolate input table data for T60 and DSR to the FFT filter grid */ ivas_reverb_interpolate_acoustic_data_fx( nr_fc_input, pFc_input_fx, pAcoustic_rt60_fx, pAcoustic_dsr_fx, nr_fc_fft_filter, pFc_fx, pRt60_fx, pDsr_fx, pRt60_e, pDsr_e ); Loading Loading @@ -1400,7 +1390,7 @@ static void set_reverb_acoustic_data_fx( return; } #endif /*-----------------------------------------------------------------------------------------* * Function setup_FDN_branches_fx() * Loading Loading @@ -1497,7 +1487,11 @@ ivas_error ivas_reverb_open_fx( Word32 pTime_window_fx[RV_FILTER_MAX_FFT_SIZE]; Word32 freq_step_fx; Word16 fft_hist_size, transition_start, transition_length; #ifdef FIX_POINT_HRTF_FILE_FORMAT_REVERB Word16 nr_fc_fft_filter; #else Word16 nr_fc_input, nr_fc_fft_filter; #endif rv_fftwf_type_complex_fx pFft_wf_filter_ch0_fx[RV_LENGTH_NR_FC]; rv_fftwf_type_complex_fx pFft_wf_filter_ch1_fx[RV_LENGTH_NR_FC]; Loading @@ -1506,8 +1500,9 @@ ivas_error ivas_reverb_open_fx( subframe_len = shr( output_frame, 2 ); /*output_frame / MAX_PARAM_SPATIAL_SUBFRAMES*/ predelay_bf_len = output_frame; move16(); #ifndef FIX_POINT_HRTF_FILE_FORMAT_REVERB nr_fc_input = hRenderConfig->roomAcoustics.nBands; #endif /* Allocate main reverb. handle */ IF( ( pState = (REVERB_HANDLE) malloc( sizeof( REVERB_DATA ) ) ) == NULL ) { Loading Loading @@ -1555,7 +1550,6 @@ ivas_error ivas_reverb_open_fx( { params.pFc_fx[bin_idx] = W_extract_l( W_mult0_32_32( freq_step_fx, bin_idx ) ); /*Q14*/ } set_reverb_acoustic_data_fx( ¶ms, &hRenderConfig->roomAcoustics, nr_fc_input, nr_fc_fft_filter ); params.pHrtf_avg_pwr_response_l_const_fx = hHrtfStatistics->average_energy_l; params.pHrtf_avg_pwr_response_r_const_fx = hHrtfStatistics->average_energy_r; params.pHrtf_inter_aural_coherence_const_fx = hHrtfStatistics->inter_aural_coherence; Loading
lib_rend/ivas_rom_TdBinauralRenderer.c +1 −1 Original line number Diff line number Diff line Loading @@ -48,7 +48,7 @@ *------------------------------------------------------------------------*/ /* TD renderer default HRIR model */ #ifdef DEBUGGING /* Generated on 17-Jan-2025 with Matlab version 23.2.0.2668659 (R2023b) Update 9 by marcemerit on MACA64 */ /* Generated on 18-Jan-2025 with Matlab version 23.2.0.2668659 (R2023b) Update 9 by marcemerit on MACA64 */ #endif #ifdef IVAS_FLOAT_FIXED