Loading lib_rend/ivas_crend_fx.c +130 −3 Original line number Diff line number Diff line Loading @@ -87,7 +87,7 @@ ivas_error ivas_hrtf_init( move16(); move16(); move16(); #ifdef FIX_POINT_CREND_HRTF_FILE_FORMAT #ifdef FIX_CREND_SIMPLIFY_CODE hHrtf->factor_Q_latency_s_fx = 0; move16(); hHrtf->factor_Q_inv_diffuse_weight = 0; Loading Loading @@ -348,17 +348,32 @@ static ivas_error ivas_rend_initCrend_fx( hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_48kHz; // Q0 hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_48kHz; // Q0 #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_BRIR_coeff_Q_48kHz_fx; move16(); move16(); move16(); #endif } ELSE { hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_48kHz; // Q0 hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_48kHz; // Q0 #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_HRIR_coeff_Q_48kHz_fx; move16(); move16(); move16(); #endif } move32(); move16(); move16(); FOR( j = 0; j < BINAURAL_CHANNELS; j++ ) { IF( EQ_16( outConfig, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) ) Loading Loading @@ -390,12 +405,28 @@ static ivas_error ivas_rend_initCrend_fx( hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_32kHz; // Q0 hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_32kHz; // Q0 #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_BRIR_coeff_Q_32kHz_fx; move16(); move16(); move16(); #endif } ELSE { hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_32kHz; // Q0 hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_32kHz; // Q0 #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_HRIR_coeff_Q_32kHz_fx; move16(); move16(); move16(); #endif } move32(); move16(); Loading Loading @@ -432,12 +463,28 @@ static ivas_error ivas_rend_initCrend_fx( hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_16kHz; #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_BRIR_coeff_Q_32kHz_fx; move16(); move16(); move16(); #endif } ELSE { hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_16kHz; #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_HRIR_coeff_Q_16kHz_fx; move16(); move16(); move16(); #endif } move32(); move16(); Loading Loading @@ -599,6 +646,14 @@ static ivas_error ivas_rend_initCrend_fx( hHrtf->latency_s_fx = CRendBin_HOA3_HRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_HOA3_HRIR_max_num_iterations_48kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA3_HRIR_index_frequency_max_diffuse_48kHz; #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA3_HRIR_coeff_Q_48kHz_fx; move16(); move16(); move16(); #endif move32(); move16(); move16(); Loading Loading @@ -638,6 +693,14 @@ static ivas_error ivas_rend_initCrend_fx( hHrtf->latency_s_fx = CRendBin_HOA3_HRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_HOA3_HRIR_max_num_iterations_32kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA3_HRIR_index_frequency_max_diffuse_32kHz; #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA3_HRIR_coeff_Q_32kHz_fx; move16(); move16(); move16(); #endif move32(); move16(); move16(); Loading Loading @@ -681,6 +744,14 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA3_HRIR_coeff_Q_16kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { Loading Loading @@ -729,6 +800,15 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA2_HRIR_coeff_Q_48kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { Loading Loading @@ -768,6 +848,14 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA2_HRIR_coeff_Q_32kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { Loading Loading @@ -808,6 +896,15 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA2_HRIR_coeff_Q_16kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { Loading Loading @@ -855,6 +952,14 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_FOA_HRIR_coeff_Q_48kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { Loading Loading @@ -894,7 +999,14 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_FOA_HRIR_coeff_Q_32kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { FOR( j = 0; j < BINAURAL_CHANNELS; j++ ) Loading Loading @@ -934,6 +1046,14 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_FOA_HRIR_coeff_Q_16kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { Loading Loading @@ -1008,6 +1128,13 @@ static ivas_error ivas_rend_initCrend_fx( move16(); move16(); move16(); hHrtf->factor_Q_inv_diffuse_weight = hHrtfCrend->factor_Q_inv_diffuse_weight; hHrtf->factor_Q_latency_s_fx = hHrtfCrend->factor_Q_latency_s_fx; hHrtf->factor_Q_pOut_to_bin = hHrtfCrend->factor_Q_pOut_to_bin; move16(); move16(); move16(); FOR( j = 0; j < BINAURAL_CHANNELS; j++ ) { Loading lib_util/hrtf_file_reader.c +2 −2 Original line number Diff line number Diff line Loading @@ -775,7 +775,7 @@ static ivas_error TDREND_LoadBSplineBinary( fread( (Word32 *) model->EL_dyn_fx, sizeof( Word32 ), model->AlphaN * HRTF_MODEL_N_SECTIONS, f_hrtf ); for ( j = 0; j < model->AlphaN * HRTF_MODEL_N_SECTIONS; j++ ) { model->EL_dyn_fx[j] = L_shl_r( model->EL_dyn_fx[j], sub( Q30, factor_Q ) ); model->EL_dyn_fx[j] = L_shl_r( model->EL_dyn_fx[j], sub( Q28, factor_Q ) ); } model->ER_dyn_fx = (Word32 *) malloc( model->AlphaN * HRTF_MODEL_N_SECTIONS * sizeof( Word32 ) ); Loading @@ -786,7 +786,7 @@ static ivas_error TDREND_LoadBSplineBinary( fread( (Word32 *) model->ER_dyn_fx, sizeof( Word32 ), model->AlphaN * HRTF_MODEL_N_SECTIONS, f_hrtf ); for ( j = 0; j < model->AlphaN * HRTF_MODEL_N_SECTIONS; j++ ) { model->ER_dyn_fx[j] = L_shl_r( model->ER_dyn_fx[j], sub( Q30, factor_Q ) ); model->ER_dyn_fx[j] = L_shl_r( model->ER_dyn_fx[j], sub( Q28, factor_Q ) ); } /* Set const pointers */ Loading Loading
lib_rend/ivas_crend_fx.c +130 −3 Original line number Diff line number Diff line Loading @@ -87,7 +87,7 @@ ivas_error ivas_hrtf_init( move16(); move16(); move16(); #ifdef FIX_POINT_CREND_HRTF_FILE_FORMAT #ifdef FIX_CREND_SIMPLIFY_CODE hHrtf->factor_Q_latency_s_fx = 0; move16(); hHrtf->factor_Q_inv_diffuse_weight = 0; Loading Loading @@ -348,17 +348,32 @@ static ivas_error ivas_rend_initCrend_fx( hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_48kHz; // Q0 hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_48kHz; // Q0 #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_BRIR_coeff_Q_48kHz_fx; move16(); move16(); move16(); #endif } ELSE { hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_48kHz; // Q0 hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_48kHz; // Q0 #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_HRIR_coeff_Q_48kHz_fx; move16(); move16(); move16(); #endif } move32(); move16(); move16(); FOR( j = 0; j < BINAURAL_CHANNELS; j++ ) { IF( EQ_16( outConfig, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) ) Loading Loading @@ -390,12 +405,28 @@ static ivas_error ivas_rend_initCrend_fx( hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_32kHz; // Q0 hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_32kHz; // Q0 #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_BRIR_coeff_Q_32kHz_fx; move16(); move16(); move16(); #endif } ELSE { hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_32kHz; // Q0 hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_32kHz; // Q0 #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_HRIR_coeff_Q_32kHz_fx; move16(); move16(); move16(); #endif } move32(); move16(); Loading Loading @@ -432,12 +463,28 @@ static ivas_error ivas_rend_initCrend_fx( hHrtf->latency_s_fx = CRendBin_Combined_BRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_Combined_BRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_BRIR_index_frequency_max_diffuse_16kHz; #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_BRIR_coeff_Q_32kHz_fx; move16(); move16(); move16(); #endif } ELSE { hHrtf->latency_s_fx = CRendBin_Combined_HRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_Combined_HRIR_max_num_iterations_16kHz; hHrtf->index_frequency_max_diffuse = CRendBin_Combined_HRIR_index_frequency_max_diffuse_16kHz; #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_Combined_HRIR_coeff_Q_16kHz_fx; move16(); move16(); move16(); #endif } move32(); move16(); Loading Loading @@ -599,6 +646,14 @@ static ivas_error ivas_rend_initCrend_fx( hHrtf->latency_s_fx = CRendBin_HOA3_HRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_HOA3_HRIR_max_num_iterations_48kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA3_HRIR_index_frequency_max_diffuse_48kHz; #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA3_HRIR_coeff_Q_48kHz_fx; move16(); move16(); move16(); #endif move32(); move16(); move16(); Loading Loading @@ -638,6 +693,14 @@ static ivas_error ivas_rend_initCrend_fx( hHrtf->latency_s_fx = CRendBin_HOA3_HRIR_latency_s_fx; // Q31 hHrtf->max_num_iterations = CRendBin_HOA3_HRIR_max_num_iterations_32kHz; hHrtf->index_frequency_max_diffuse = CRendBin_HOA3_HRIR_index_frequency_max_diffuse_32kHz; #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA3_HRIR_coeff_Q_32kHz_fx; move16(); move16(); move16(); #endif move32(); move16(); move16(); Loading Loading @@ -681,6 +744,14 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA3_HRIR_coeff_Q_16kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { Loading Loading @@ -729,6 +800,15 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA2_HRIR_coeff_Q_48kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { Loading Loading @@ -768,6 +848,14 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA2_HRIR_coeff_Q_32kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { Loading Loading @@ -808,6 +896,15 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_HOA2_HRIR_coeff_Q_16kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { Loading Loading @@ -855,6 +952,14 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_FOA_HRIR_coeff_Q_48kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { Loading Loading @@ -894,7 +999,14 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_FOA_HRIR_coeff_Q_32kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { FOR( j = 0; j < BINAURAL_CHANNELS; j++ ) Loading Loading @@ -934,6 +1046,14 @@ static ivas_error ivas_rend_initCrend_fx( move32(); move16(); move16(); #ifdef FIX_CREND_SIMPLIFY_CODE 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_fx; hHrtf->factor_Q_pOut_to_bin = CRendBin_FOA_HRIR_coeff_Q_16kHz_fx; move16(); move16(); move16(); #endif FOR( i = 0; i < hHrtf->max_num_ir; i++ ) { Loading Loading @@ -1008,6 +1128,13 @@ static ivas_error ivas_rend_initCrend_fx( move16(); move16(); move16(); hHrtf->factor_Q_inv_diffuse_weight = hHrtfCrend->factor_Q_inv_diffuse_weight; hHrtf->factor_Q_latency_s_fx = hHrtfCrend->factor_Q_latency_s_fx; hHrtf->factor_Q_pOut_to_bin = hHrtfCrend->factor_Q_pOut_to_bin; move16(); move16(); move16(); FOR( j = 0; j < BINAURAL_CHANNELS; j++ ) { Loading
lib_util/hrtf_file_reader.c +2 −2 Original line number Diff line number Diff line Loading @@ -775,7 +775,7 @@ static ivas_error TDREND_LoadBSplineBinary( fread( (Word32 *) model->EL_dyn_fx, sizeof( Word32 ), model->AlphaN * HRTF_MODEL_N_SECTIONS, f_hrtf ); for ( j = 0; j < model->AlphaN * HRTF_MODEL_N_SECTIONS; j++ ) { model->EL_dyn_fx[j] = L_shl_r( model->EL_dyn_fx[j], sub( Q30, factor_Q ) ); model->EL_dyn_fx[j] = L_shl_r( model->EL_dyn_fx[j], sub( Q28, factor_Q ) ); } model->ER_dyn_fx = (Word32 *) malloc( model->AlphaN * HRTF_MODEL_N_SECTIONS * sizeof( Word32 ) ); Loading @@ -786,7 +786,7 @@ static ivas_error TDREND_LoadBSplineBinary( fread( (Word32 *) model->ER_dyn_fx, sizeof( Word32 ), model->AlphaN * HRTF_MODEL_N_SECTIONS, f_hrtf ); for ( j = 0; j < model->AlphaN * HRTF_MODEL_N_SECTIONS; j++ ) { model->ER_dyn_fx[j] = L_shl_r( model->ER_dyn_fx[j], sub( Q30, factor_Q ) ); model->ER_dyn_fx[j] = L_shl_r( model->ER_dyn_fx[j], sub( Q28, factor_Q ) ); } /* Set const pointers */ Loading