Loading lib_dec/ivas_jbm_dec.c +6 −5 Original line number Diff line number Diff line Loading @@ -904,10 +904,11 @@ void ivas_jbm_dec_feed_tc_to_renderer( { ivas_ism_dec_digest_tc( st_ivas ); } #ifdef NONBE_FIX_982_OMASA_DELAY_COMP_5MS if ( st_ivas->renderer_type == RENDERER_BINAURAL_PARAMETRIC || st_ivas->renderer_type == RENDERER_DIRAC ) { int16_t obj, num_objects; int16_t num_objects; /* Delay the signal to match CLDFB delay. Delay the whole buffer. */ num_objects = 0; if ( ( st_ivas->ism_mode == ISM_MASA_MODE_MASA_ONE_OBJ || st_ivas->ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ ) && st_ivas->renderer_type != RENDERER_BINAURAL_PARAMETRIC ) Loading @@ -918,13 +919,13 @@ void ivas_jbm_dec_feed_tc_to_renderer( { num_objects = st_ivas->nchan_ism; } for ( obj = 0; obj < num_objects; obj++ ) for ( n = 0; n < num_objects; n++ ) { if ( st_ivas->ism_mode == ISM_MASA_MODE_DISC && st_ivas->renderer_type == RENDERER_BINAURAL_PARAMETRIC ) { v_multc( st_ivas->hTcBuffer->tc[CPE_CHANNELS + obj], OMASA_TDREND_MATCHING_GAIN, st_ivas->hTcBuffer->tc[CPE_CHANNELS + obj], st_ivas->hTcBuffer->n_samples_available ); v_multc( st_ivas->hTcBuffer->tc[CPE_CHANNELS + n], OMASA_TDREND_MATCHING_GAIN, st_ivas->hTcBuffer->tc[CPE_CHANNELS + n], st_ivas->hTcBuffer->n_samples_available ); } delay_signal( st_ivas->hTcBuffer->tc[CPE_CHANNELS + obj], st_ivas->hTcBuffer->n_samples_available, st_ivas->hMasaIsmData->delayBuffer[obj], st_ivas->hMasaIsmData->delayBuffer_size ); delay_signal( st_ivas->hTcBuffer->tc[CPE_CHANNELS + n], st_ivas->hTcBuffer->n_samples_available, st_ivas->hMasaIsmData->delayBuffer[n], st_ivas->hMasaIsmData->delayBuffer_size ); } } #endif Loading lib_dec/ivas_omasa_dec.c +2 −3 Original line number Diff line number Diff line Loading @@ -42,11 +42,11 @@ #endif #include "wmc_auto.h" #ifndef NONBE_FIX_982_OMASA_DELAY_COMP_5MS /*------------------------------------------------------------------------- * Local constants *------------------------------------------------------------------------*/ #ifndef NONBE_FIX_982_OMASA_DELAY_COMP_5MS #define OMASA_TDREND_MATCHING_GAIN 0.7943f #endif /*-------------------------------------------------------------------* Loading Loading @@ -671,7 +671,6 @@ ivas_error ivas_omasa_dirac_td_binaural_jbm( } } #endif ivas_dirac_dec_binaural_render( st_ivas, nSamplesAsked, nSamplesRendered, nSamplesAvailable, nchan_transport, output_f ); /* reset combined orientation access index before calling the td renderer */ Loading lib_rend/ivas_dirac_dec_binaural_functions.c +4 −0 Original line number Diff line number Diff line Loading @@ -2145,7 +2145,11 @@ static void ivas_dirac_dec_binaural_determine_processing_matrices( if ( ivas_format == MASA_ISM_FORMAT ) { #ifdef NONBE_FIX_982_OMASA_DELAY_COMP_5MS gainFactor = OMASA_TDREND_MATCHING_GAIN * sqrtf( hDiracDecBin->earlyPartEneCorrection[bin] ); #else gainFactor = 0.7943f * sqrtf( hDiracDecBin->earlyPartEneCorrection[bin] ); #endif } else { Loading Loading
lib_dec/ivas_jbm_dec.c +6 −5 Original line number Diff line number Diff line Loading @@ -904,10 +904,11 @@ void ivas_jbm_dec_feed_tc_to_renderer( { ivas_ism_dec_digest_tc( st_ivas ); } #ifdef NONBE_FIX_982_OMASA_DELAY_COMP_5MS if ( st_ivas->renderer_type == RENDERER_BINAURAL_PARAMETRIC || st_ivas->renderer_type == RENDERER_DIRAC ) { int16_t obj, num_objects; int16_t num_objects; /* Delay the signal to match CLDFB delay. Delay the whole buffer. */ num_objects = 0; if ( ( st_ivas->ism_mode == ISM_MASA_MODE_MASA_ONE_OBJ || st_ivas->ism_mode == ISM_MASA_MODE_PARAM_ONE_OBJ ) && st_ivas->renderer_type != RENDERER_BINAURAL_PARAMETRIC ) Loading @@ -918,13 +919,13 @@ void ivas_jbm_dec_feed_tc_to_renderer( { num_objects = st_ivas->nchan_ism; } for ( obj = 0; obj < num_objects; obj++ ) for ( n = 0; n < num_objects; n++ ) { if ( st_ivas->ism_mode == ISM_MASA_MODE_DISC && st_ivas->renderer_type == RENDERER_BINAURAL_PARAMETRIC ) { v_multc( st_ivas->hTcBuffer->tc[CPE_CHANNELS + obj], OMASA_TDREND_MATCHING_GAIN, st_ivas->hTcBuffer->tc[CPE_CHANNELS + obj], st_ivas->hTcBuffer->n_samples_available ); v_multc( st_ivas->hTcBuffer->tc[CPE_CHANNELS + n], OMASA_TDREND_MATCHING_GAIN, st_ivas->hTcBuffer->tc[CPE_CHANNELS + n], st_ivas->hTcBuffer->n_samples_available ); } delay_signal( st_ivas->hTcBuffer->tc[CPE_CHANNELS + obj], st_ivas->hTcBuffer->n_samples_available, st_ivas->hMasaIsmData->delayBuffer[obj], st_ivas->hMasaIsmData->delayBuffer_size ); delay_signal( st_ivas->hTcBuffer->tc[CPE_CHANNELS + n], st_ivas->hTcBuffer->n_samples_available, st_ivas->hMasaIsmData->delayBuffer[n], st_ivas->hMasaIsmData->delayBuffer_size ); } } #endif Loading
lib_dec/ivas_omasa_dec.c +2 −3 Original line number Diff line number Diff line Loading @@ -42,11 +42,11 @@ #endif #include "wmc_auto.h" #ifndef NONBE_FIX_982_OMASA_DELAY_COMP_5MS /*------------------------------------------------------------------------- * Local constants *------------------------------------------------------------------------*/ #ifndef NONBE_FIX_982_OMASA_DELAY_COMP_5MS #define OMASA_TDREND_MATCHING_GAIN 0.7943f #endif /*-------------------------------------------------------------------* Loading Loading @@ -671,7 +671,6 @@ ivas_error ivas_omasa_dirac_td_binaural_jbm( } } #endif ivas_dirac_dec_binaural_render( st_ivas, nSamplesAsked, nSamplesRendered, nSamplesAvailable, nchan_transport, output_f ); /* reset combined orientation access index before calling the td renderer */ Loading
lib_rend/ivas_dirac_dec_binaural_functions.c +4 −0 Original line number Diff line number Diff line Loading @@ -2145,7 +2145,11 @@ static void ivas_dirac_dec_binaural_determine_processing_matrices( if ( ivas_format == MASA_ISM_FORMAT ) { #ifdef NONBE_FIX_982_OMASA_DELAY_COMP_5MS gainFactor = OMASA_TDREND_MATCHING_GAIN * sqrtf( hDiracDecBin->earlyPartEneCorrection[bin] ); #else gainFactor = 0.7943f * sqrtf( hDiracDecBin->earlyPartEneCorrection[bin] ); #endif } else { Loading