Loading lib_com/ivas_cnst.h +2 −0 Original line number Diff line number Diff line Loading @@ -1416,7 +1416,9 @@ typedef enum #endif #define MAX_ANGULAR_STEP_INV ( 1.0f / MAX_ANGULAR_STEP ) #define MAX_INTERPOLATION_STEPS 12 #ifndef FIX_310_TD_REND_DELAY #define BINAURAL_TD_LATENCY_S 0.0f /* ITD fix removes TD renderer delay -- should be cleaned out */ #endif /* ----- Enums - TD Renderer ----- */ Loading lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -153,6 +153,7 @@ #define FIX_301_PLC /* FhG: issue 301 - fix bug of missing update of overlap buffer for DFT-stereo PLC*/ #define FIX_337_TDREND_INTP /* Issue 337: TD renderer interpolation threshold set too low */ #define FIX_310_TD_REND_DELAY /* Adding HRTF delay being read from ROM/Binary file, fix rounding for delay compensation in renderer */ /* ################## End DEVELOPMENT switches ######################### */ /* clang-format on */ Loading lib_rend/ivas_hrtf.c +3 −0 Original line number Diff line number Diff line Loading @@ -211,6 +211,9 @@ void DefaultBSplineModel( HRTF_model_precalc( model ); #ifdef FIX_310_TD_REND_DELAY HrFiltSet_p->latency_s = orange53_rom_latency_s; #endif HrFiltSet_p->SampleRate = output_Fs; HrFiltSet_p->FiltLength = HrFiltSet_p->ModelParams.K; BSplineModelEvalAlloc( &HrFiltSet_p->ModelParams, &HrFiltSet_p->ModelEval ); Loading lib_rend/ivas_objectRenderer.c +8 −1 Original line number Diff line number Diff line Loading @@ -188,8 +188,11 @@ ivas_error ivas_td_binaural_open( } st_ivas->hBinRendererTd = hBinRendererTd; #ifdef FIX_310_TD_REND_DELAY st_ivas->binaural_latency_ns = (int32_t) ( hBinRendererTd->HrFiltSet_p->latency_s * 1000000000.f ); #else st_ivas->binaural_latency_ns = (int32_t) ( BINAURAL_TD_LATENCY_S * 1000000000.f ); #endif return error; } Loading Loading @@ -630,7 +633,11 @@ ivas_error ivas_rend_TDObjRendOpen( pTDRend->hBinRendererTd = hBinRendererTd; #ifdef FIX_310_TD_REND_DELAY pTDRend->binaural_latency_ns = (int32_t) ( hBinRendererTd->HrFiltSet_p->latency_s * 1000000000.f ); #else pTDRend->binaural_latency_ns = (int32_t) ( BINAURAL_TD_LATENCY_S * 1000000000.f ); #endif return IVAS_ERR_OK; } Loading lib_rend/ivas_rom_TdBinauralRenderer.c +3 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,9 @@ * TD Binaural rendering related ROM tables *------------------------------------------------------------------------*/ /* TD renderer HRTF default model Orange53 */ #ifdef FIX_310_TD_REND_DELAY const float orange53_rom_latency_s = 0.000020834f; #endif const int16_t orange53_rom_azimDim2[18] = { 1, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 1, }; Loading
lib_com/ivas_cnst.h +2 −0 Original line number Diff line number Diff line Loading @@ -1416,7 +1416,9 @@ typedef enum #endif #define MAX_ANGULAR_STEP_INV ( 1.0f / MAX_ANGULAR_STEP ) #define MAX_INTERPOLATION_STEPS 12 #ifndef FIX_310_TD_REND_DELAY #define BINAURAL_TD_LATENCY_S 0.0f /* ITD fix removes TD renderer delay -- should be cleaned out */ #endif /* ----- Enums - TD Renderer ----- */ Loading
lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -153,6 +153,7 @@ #define FIX_301_PLC /* FhG: issue 301 - fix bug of missing update of overlap buffer for DFT-stereo PLC*/ #define FIX_337_TDREND_INTP /* Issue 337: TD renderer interpolation threshold set too low */ #define FIX_310_TD_REND_DELAY /* Adding HRTF delay being read from ROM/Binary file, fix rounding for delay compensation in renderer */ /* ################## End DEVELOPMENT switches ######################### */ /* clang-format on */ Loading
lib_rend/ivas_hrtf.c +3 −0 Original line number Diff line number Diff line Loading @@ -211,6 +211,9 @@ void DefaultBSplineModel( HRTF_model_precalc( model ); #ifdef FIX_310_TD_REND_DELAY HrFiltSet_p->latency_s = orange53_rom_latency_s; #endif HrFiltSet_p->SampleRate = output_Fs; HrFiltSet_p->FiltLength = HrFiltSet_p->ModelParams.K; BSplineModelEvalAlloc( &HrFiltSet_p->ModelParams, &HrFiltSet_p->ModelEval ); Loading
lib_rend/ivas_objectRenderer.c +8 −1 Original line number Diff line number Diff line Loading @@ -188,8 +188,11 @@ ivas_error ivas_td_binaural_open( } st_ivas->hBinRendererTd = hBinRendererTd; #ifdef FIX_310_TD_REND_DELAY st_ivas->binaural_latency_ns = (int32_t) ( hBinRendererTd->HrFiltSet_p->latency_s * 1000000000.f ); #else st_ivas->binaural_latency_ns = (int32_t) ( BINAURAL_TD_LATENCY_S * 1000000000.f ); #endif return error; } Loading Loading @@ -630,7 +633,11 @@ ivas_error ivas_rend_TDObjRendOpen( pTDRend->hBinRendererTd = hBinRendererTd; #ifdef FIX_310_TD_REND_DELAY pTDRend->binaural_latency_ns = (int32_t) ( hBinRendererTd->HrFiltSet_p->latency_s * 1000000000.f ); #else pTDRend->binaural_latency_ns = (int32_t) ( BINAURAL_TD_LATENCY_S * 1000000000.f ); #endif return IVAS_ERR_OK; } Loading
lib_rend/ivas_rom_TdBinauralRenderer.c +3 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,9 @@ * TD Binaural rendering related ROM tables *------------------------------------------------------------------------*/ /* TD renderer HRTF default model Orange53 */ #ifdef FIX_310_TD_REND_DELAY const float orange53_rom_latency_s = 0.000020834f; #endif const int16_t orange53_rom_azimDim2[18] = { 1, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 1, };