diff --git a/lib_com/options.h b/lib_com/options.h index 71e860604575fbb22f261c97f14c2dffe440c66c..bff4dcaad4a11ee2e62b0f03a76092cbeb3e9704 100755 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -97,6 +97,7 @@ #define NONBE_FIX_935_EARLY_REFLECTIONS_WRONG_ORDER /* Qualcomm: issue 953: fix order or ER channels in LC mode*/ #define FIX_955_FASTCONV_REND_IN_ISM /* VA: put FastConv rendering call under DEBUGGING */ #define NONBE_FIX_967_ISM_MONO_DMX /* FhG: issue 967: accumulating energies in ISM mono DMX */ +#define FIX_959_MASA_LINEAR_REND /* VA: issue 959: remove unused calling of ivas_sba_linear_renderer() in MASA rendering */ #define NONBE_FIX_968_ISM_BRIR_WITH_HEADROTATION_5MS_FIX /* FhG : issue #968: differences between 5ms and 20ms rendering for discrete ISM with BRIR and head rotation*/ diff --git a/lib_dec/ivas_jbm_dec_fx.c b/lib_dec/ivas_jbm_dec_fx.c index 88cba4da4f5c604f5851d8ae3ee795a72d523cf1..246befb84fe64fdf9305a9df0bdfbaf99efdc401 100644 --- a/lib_dec/ivas_jbm_dec_fx.c +++ b/lib_dec/ivas_jbm_dec_fx.c @@ -2104,6 +2104,7 @@ ivas_error ivas_jbm_dec_render_fx( } ELSE IF( EQ_32( st_ivas->ivas_format, MASA_FORMAT ) ) { +#ifndef FIX_959_MASA_LINEAR_REND IF( EQ_32( st_ivas->renderer_type, RENDERER_SBA_LINEAR_DEC ) ) { *nSamplesRendered = s_min( st_ivas->hTcBuffer->n_samples_available, nSamplesAskedLocal ); @@ -2118,6 +2119,9 @@ ivas_error ivas_jbm_dec_render_fx( } } ELSE IF( EQ_32( st_ivas->renderer_type, RENDERER_DIRAC ) ) +#else + IF( EQ_32( st_ivas->renderer_type, RENDERER_DIRAC ) ) +#endif { ivas_dirac_dec_render_fx( st_ivas, nchan_remapped, nSamplesAskedLocal, nSamplesRendered, nSamplesAvailableNext, p_output_fx ); } diff --git a/lib_dec/ivas_output_config_fx.c b/lib_dec/ivas_output_config_fx.c index 9d8a592e0f0524766a6da4a77db6ea0474013d5e..a8adb5387b933e7c9c5092e3327b0a906cdb3938 100644 --- a/lib_dec/ivas_output_config_fx.c +++ b/lib_dec/ivas_output_config_fx.c @@ -445,7 +445,11 @@ void ivas_renderer_select( *internal_config = IVAS_AUDIO_CONFIG_HOA3; move16(); } +#ifdef FIX_959_MASA_LINEAR_REND + *renderer_type = RENDERER_SBA_LINEAR_DEC; +#else st_ivas->renderer_type = RENDERER_SBA_LINEAR_DEC; +#endif move16(); } ELSE IF( ( EQ_32( ivas_format, MASA_FORMAT ) && EQ_32( output_config, IVAS_AUDIO_CONFIG_MONO ) && EQ_16( st_ivas->nchan_transport, 1 ) ) ||