From edb66e10f40c532f914adb38b8736e0f4507f434 Mon Sep 17 00:00:00 2001 From: vaclav Date: Thu, 28 Mar 2024 12:45:51 +0100 Subject: [PATCH 01/12] issue 1052: Correctly exit the decoder when EXT is used in SBA format; under FIX_1052_SBA_EXT_OUTPUT --- lib_com/options.h | 1 + lib_dec/ivas_init_dec.c | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/lib_com/options.h b/lib_com/options.h index baac651607..ec163044b8 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -157,6 +157,7 @@ /*#define SPLIT_REND_WITH_HEAD_ROT */ /* Dlb,FhG: Split Rendering contributions 21 and 35 */ #define FIX_1033_MEMORY_LEAK_OMASA /* Nokia / Orange: issue #1033: Memory leak in OMASA to BINAURAL with HRTF with bitrate switching */ +#define FIX_1052_SBA_EXT_OUTPUT /* VA: issue 1052: Correctly exit the decoder when EXT is used in SBA format */ /* #################### End BE switches ################################## */ diff --git a/lib_dec/ivas_init_dec.c b/lib_dec/ivas_init_dec.c index b92dc19ded..ffb8dac341 100644 --- a/lib_dec/ivas_init_dec.c +++ b/lib_dec/ivas_init_dec.c @@ -3072,7 +3072,11 @@ static ivas_error doSanityChecks_IVAS( else if ( st_ivas->ivas_format == SBA_FORMAT ) { /* Verify SBA output coniguration */ +#ifdef FIX_1052_SBA_EXT_OUTPUT + if ( output_config == IVAS_AUDIO_CONFIG_INVALID || output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) +#else if ( output_config == IVAS_AUDIO_CONFIG_INVALID ) +#endif { return IVAS_ERROR( IVAS_ERR_INVALID_OUTPUT_FORMAT, "Incorrect output configuration specified for SBA" ); } -- GitLab From 8c4eb8029222ed4fefa4d38026f9393279b5c2ef Mon Sep 17 00:00:00 2001 From: vaclav Date: Thu, 28 Mar 2024 13:21:18 +0100 Subject: [PATCH 02/12] add sanity checks for output configs. for OMASA/OSBA --- lib_dec/ivas_init_dec.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/lib_dec/ivas_init_dec.c b/lib_dec/ivas_init_dec.c index ffb8dac341..49fba7d121 100644 --- a/lib_dec/ivas_init_dec.c +++ b/lib_dec/ivas_init_dec.c @@ -3096,6 +3096,23 @@ static ivas_error doSanityChecks_IVAS( return IVAS_ERROR( IVAS_ERR_INVALID_OUTPUT_FORMAT, "Incorrect output configuration specified for Multi-channel" ); } } +#ifdef FIX_1052_SBA_EXT_OUTPUT + else if ( st_ivas->ivas_format == MASA_ISM_FORMAT ) + { + if ( output_config == IVAS_AUDIO_CONFIG_INVALID ) + { + return IVAS_ERROR( IVAS_ERR_INVALID_OUTPUT_FORMAT, "Incorrect output configuration specified for OMASA!" ); + } + } + else if ( st_ivas->ivas_format == SBA_ISM_FORMAT ) + { + /* Verify MC output configuration */ + if ( output_config == IVAS_AUDIO_CONFIG_INVALID ) + { + return IVAS_ERROR( IVAS_ERR_INVALID_OUTPUT_FORMAT, "Incorrect output configuration specified for OSBA!" ); + } + } +#endif #ifdef SPLIT_REND_WITH_HEAD_ROT if ( ( output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) && output_Fs != 48000 ) -- GitLab From d03b80a8c46658e6f60a591a90f1a37031d36207 Mon Sep 17 00:00:00 2001 From: vaclav Date: Tue, 9 Apr 2024 10:25:24 +0200 Subject: [PATCH 03/12] enable EXT output in stereo format --- lib_com/options.h | 2 +- lib_dec/ivas_init_dec.c | 42 +++++++++++++++++++++-------------------- 2 files changed, 23 insertions(+), 21 deletions(-) diff --git a/lib_com/options.h b/lib_com/options.h index ec163044b8..9fc41a608b 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -157,7 +157,7 @@ /*#define SPLIT_REND_WITH_HEAD_ROT */ /* Dlb,FhG: Split Rendering contributions 21 and 35 */ #define FIX_1033_MEMORY_LEAK_OMASA /* Nokia / Orange: issue #1033: Memory leak in OMASA to BINAURAL with HRTF with bitrate switching */ -#define FIX_1052_SBA_EXT_OUTPUT /* VA: issue 1052: Correctly exit the decoder when EXT is used in SBA format */ +#define FIX_1052_EXT_OUTPUT /* issue 1052: define EXT decoder output configuration for all IVAS formats */ /* #################### End BE switches ################################## */ diff --git a/lib_dec/ivas_init_dec.c b/lib_dec/ivas_init_dec.c index 49fba7d121..bc0e8b4672 100644 --- a/lib_dec/ivas_init_dec.c +++ b/lib_dec/ivas_init_dec.c @@ -1149,7 +1149,15 @@ ivas_error ivas_init_decoder( if ( output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) { +#ifdef FIX_1052_EXT_OUTPUT + if ( st_ivas->ivas_format == STEREO_FORMAT ) + { + hDecoderConfig->nchan_out = CPE_CHANNELS; + } + else if ( st_ivas->ivas_format == SBA_ISM_FORMAT ) +#else if ( st_ivas->ivas_format == SBA_ISM_FORMAT ) +#endif { hDecoderConfig->nchan_out = audioCfg2channels( IVAS_AUDIO_CONFIG_HOA3 ); hDecoderConfig->nchan_out += st_ivas->nchan_ism; @@ -3056,11 +3064,25 @@ static ivas_error doSanityChecks_IVAS( /* Verify stereo output configuration */ if ( st_ivas->ivas_format == STEREO_FORMAT ) { +#ifdef FIX_1052_EXT_OUTPUT + if ( output_config != IVAS_AUDIO_CONFIG_MONO && output_config != IVAS_AUDIO_CONFIG_STEREO && output_config != IVAS_AUDIO_CONFIG_5_1 && output_config != IVAS_AUDIO_CONFIG_7_1 && output_config != IVAS_AUDIO_CONFIG_5_1_2 && output_config != IVAS_AUDIO_CONFIG_5_1_4 && output_config != IVAS_AUDIO_CONFIG_7_1_4 && output_config != IVAS_AUDIO_CONFIG_LS_CUSTOM && output_config != IVAS_AUDIO_CONFIG_EXTERNAL ) +#else if ( output_config != IVAS_AUDIO_CONFIG_MONO && output_config != IVAS_AUDIO_CONFIG_STEREO && output_config != IVAS_AUDIO_CONFIG_5_1 && output_config != IVAS_AUDIO_CONFIG_7_1 && output_config != IVAS_AUDIO_CONFIG_5_1_2 && output_config != IVAS_AUDIO_CONFIG_5_1_4 && output_config != IVAS_AUDIO_CONFIG_7_1_4 && output_config != IVAS_AUDIO_CONFIG_LS_CUSTOM ) +#endif { return IVAS_ERROR( IVAS_ERR_INVALID_OUTPUT_FORMAT, "Wrong output configuration specified for Stereo!" ); } } +#ifdef FIX_1052_EXT_OUTPUT + /* Verify output configuration for other formats */ + else + { + if ( output_config == IVAS_AUDIO_CONFIG_INVALID ) + { + return IVAS_ERROR( IVAS_ERR_INVALID_OUTPUT_FORMAT, "Incorrect output configuration specified!" ); + } + } +#else else if ( st_ivas->ivas_format == ISM_FORMAT ) { /* Verify ISM output configuration */ @@ -3072,11 +3094,7 @@ static ivas_error doSanityChecks_IVAS( else if ( st_ivas->ivas_format == SBA_FORMAT ) { /* Verify SBA output coniguration */ -#ifdef FIX_1052_SBA_EXT_OUTPUT - if ( output_config == IVAS_AUDIO_CONFIG_INVALID || output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) -#else if ( output_config == IVAS_AUDIO_CONFIG_INVALID ) -#endif { return IVAS_ERROR( IVAS_ERR_INVALID_OUTPUT_FORMAT, "Incorrect output configuration specified for SBA" ); } @@ -3096,22 +3114,6 @@ static ivas_error doSanityChecks_IVAS( return IVAS_ERROR( IVAS_ERR_INVALID_OUTPUT_FORMAT, "Incorrect output configuration specified for Multi-channel" ); } } -#ifdef FIX_1052_SBA_EXT_OUTPUT - else if ( st_ivas->ivas_format == MASA_ISM_FORMAT ) - { - if ( output_config == IVAS_AUDIO_CONFIG_INVALID ) - { - return IVAS_ERROR( IVAS_ERR_INVALID_OUTPUT_FORMAT, "Incorrect output configuration specified for OMASA!" ); - } - } - else if ( st_ivas->ivas_format == SBA_ISM_FORMAT ) - { - /* Verify MC output configuration */ - if ( output_config == IVAS_AUDIO_CONFIG_INVALID ) - { - return IVAS_ERROR( IVAS_ERR_INVALID_OUTPUT_FORMAT, "Incorrect output configuration specified for OSBA!" ); - } - } #endif #ifdef SPLIT_REND_WITH_HEAD_ROT -- GitLab From aacab870e96a3dab97940ac6d9805da8f1c83fd3 Mon Sep 17 00:00:00 2001 From: vaclav Date: Tue, 9 Apr 2024 15:43:00 +0200 Subject: [PATCH 04/12] enable EXT output in MC format --- lib_dec/ivas_init_dec.c | 16 ++++++++++++++++ lib_dec/ivas_masa_dec.c | 4 ++++ lib_dec/ivas_mc_param_dec.c | 4 ++++ lib_dec/ivas_mct_dec.c | 13 +++++++++++++ lib_dec/ivas_output_config.c | 11 +++++++++++ lib_rend/ivas_output_init.c | 4 ++++ 6 files changed, 52 insertions(+) diff --git a/lib_dec/ivas_init_dec.c b/lib_dec/ivas_init_dec.c index bc0e8b4672..2d5e28cc44 100644 --- a/lib_dec/ivas_init_dec.c +++ b/lib_dec/ivas_init_dec.c @@ -1154,6 +1154,10 @@ ivas_error ivas_init_decoder( { hDecoderConfig->nchan_out = CPE_CHANNELS; } + else if ( st_ivas->ivas_format == MC_FORMAT ) + { + hDecoderConfig->nchan_out = audioCfg2channels( st_ivas->transport_config ); + } else if ( st_ivas->ivas_format == SBA_ISM_FORMAT ) #else if ( st_ivas->ivas_format == SBA_ISM_FORMAT ) @@ -1180,7 +1184,19 @@ ivas_error ivas_init_decoder( st_ivas->intern_config = output_config; +#ifdef FIX_1052_EXT_OUTPUT + if ( output_config == IVAS_AUDIO_CONFIG_EXTERNAL && st_ivas->ivas_format == MC_FORMAT ) + { + ivas_output_init( &( st_ivas->hOutSetup ), st_ivas->transport_config ); + st_ivas->intern_config = st_ivas->transport_config; + } + else + { + ivas_output_init( &( st_ivas->hOutSetup ), output_config ); + } +#else ivas_output_init( &( st_ivas->hOutSetup ), output_config ); +#endif if ( st_ivas->ivas_format == SBA_ISM_FORMAT && output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) { diff --git a/lib_dec/ivas_masa_dec.c b/lib_dec/ivas_masa_dec.c index 3d05c01ad4..fce8155d60 100644 --- a/lib_dec/ivas_masa_dec.c +++ b/lib_dec/ivas_masa_dec.c @@ -397,7 +397,11 @@ ivas_error ivas_masa_decode( hMasa->config.coherencePresent = !hQMetaData->all_coherence_zero; +#ifdef FIX_1052_EXT_OUTPUT + if ( st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_EXTERNAL && ( st_ivas->ivas_format == MASA_FORMAT || st_ivas->ivas_format == MASA_ISM_FORMAT ) ) +#else if ( st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) +#endif { index_16bits( hQMetaData, hMasa->data.sph_grid16 ); } diff --git a/lib_dec/ivas_mc_param_dec.c b/lib_dec/ivas_mc_param_dec.c index 4e70916212..500ad71014 100644 --- a/lib_dec/ivas_mc_param_dec.c +++ b/lib_dec/ivas_mc_param_dec.c @@ -148,7 +148,11 @@ ivas_error ivas_param_mc_dec_open( hParamMC->hoa_encoder = NULL; /* determine the synthesis config */ +#ifdef FIX_1052_EXT_OUTPUT + if ( st_ivas->renderer_type == RENDERER_SBA_LINEAR_ENC || st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV || st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV_ROOM || st_ivas->renderer_type == RENDERER_BINAURAL_OBJECTS_TD || st_ivas->transport_config == output_config || output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) +#else if ( st_ivas->renderer_type == RENDERER_SBA_LINEAR_ENC || st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV || st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV_ROOM || st_ivas->renderer_type == RENDERER_BINAURAL_OBJECTS_TD || st_ivas->transport_config == output_config ) +#endif { hParamMC->synthesis_conf = PARAM_MC_SYNTH_DIRECT; } diff --git a/lib_dec/ivas_mct_dec.c b/lib_dec/ivas_mct_dec.c index e0ef92ecfc..392a7569a6 100644 --- a/lib_dec/ivas_mct_dec.c +++ b/lib_dec/ivas_mct_dec.c @@ -673,6 +673,15 @@ ivas_error ivas_mc_dec_config( { st_ivas->transport_config = signaled_config; } +#ifdef FIX_1052_EXT_OUTPUT + else if ( st_ivas->transport_config != signaled_config ) + { +#ifdef DEBUGGING + fprintf( stderr, "\nError: Switching of MC configurations is not supported!\n" ); +#endif + return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "wrong MC configuration signalled!" ); + } +#endif /* select MC format mode */ st_ivas->mc_mode = ivas_mc_mode_select( ivas_mc_map_output_config_to_mc_ls_setup( signaled_config ), st_ivas->hDecoderConfig->ivas_total_brate ); @@ -680,7 +689,11 @@ ivas_error ivas_mc_dec_config( /* MC format switching */ if ( st_ivas->ini_frame != 0 ) { +#ifdef FIX_1052_EXT_OUTPUT + if ( st_ivas->hDecoderConfig->last_ivas_total_brate != st_ivas->hDecoderConfig->ivas_total_brate || last_mc_mode != st_ivas->mc_mode ) +#else if ( st_ivas->hDecoderConfig->last_ivas_total_brate != st_ivas->hDecoderConfig->ivas_total_brate || st_ivas->transport_config != signaled_config || last_mc_mode != st_ivas->mc_mode ) +#endif { #ifdef SPLIT_REND_WITH_HEAD_ROT if ( ( error = ivas_mc_dec_reconfig( st_ivas, nSamplesRendered, pcm_resolution, data ) ) != IVAS_ERR_OK ) diff --git a/lib_dec/ivas_output_config.c b/lib_dec/ivas_output_config.c index 1be9e61829..14e8d050e6 100644 --- a/lib_dec/ivas_output_config.c +++ b/lib_dec/ivas_output_config.c @@ -436,7 +436,11 @@ void ivas_renderer_select( else if ( st_ivas->ivas_format == MC_FORMAT ) { *internal_config = transport_config; +#ifdef FIX_1052_EXT_OUTPUT + if ( st_ivas->mc_mode == MC_MODE_MCT && *internal_config != output_config && output_config != IVAS_AUDIO_CONFIG_EXTERNAL ) +#else if ( st_ivas->mc_mode == MC_MODE_MCT && *internal_config != output_config ) +#endif { if ( output_config != IVAS_AUDIO_CONFIG_FOA && output_config != IVAS_AUDIO_CONFIG_HOA2 && output_config != IVAS_AUDIO_CONFIG_HOA3 ) { @@ -475,7 +479,14 @@ void ivas_renderer_select( } else if ( st_ivas->mc_mode == MC_MODE_MCMASA ) { +#ifdef FIX_1052_EXT_OUTPUT + if ( output_config != IVAS_AUDIO_CONFIG_EXTERNAL ) + { + *internal_config = output_config; + } +#else *internal_config = output_config; +#endif /* No rendering for 1TC to Mono or Stereo and 2TC to Stereo */ if ( output_config == IVAS_AUDIO_CONFIG_MONO || output_config == IVAS_AUDIO_CONFIG_STEREO ) diff --git a/lib_rend/ivas_output_init.c b/lib_rend/ivas_output_init.c index 5d7d4d610f..dc3c11fb44 100644 --- a/lib_rend/ivas_output_init.c +++ b/lib_rend/ivas_output_init.c @@ -408,7 +408,11 @@ int16_t ivas_get_nchan_buffers_dec( { nchan_out_buff = max( nchan_out_buff, st_ivas->hOutSetup.nchan_out_woLFE + st_ivas->hOutSetup.num_lfe ); } +#ifdef FIX_1052_EXT_OUTPUT + else if ( output_config != IVAS_AUDIO_CONFIG_EXTERNAL ) +#else else +#endif { nchan_out_buff = max( audioCfg2channels( st_ivas->transport_config ), audioCfg2channels( st_ivas->intern_config ) ); nchan_out_buff = max( nchan_out_buff, audioCfg2channels( output_config ) ); -- GitLab From 6c0a36dd61c579695356ce25eb83d98cf9262772 Mon Sep 17 00:00:00 2001 From: vaclav Date: Tue, 9 Apr 2024 16:55:51 +0200 Subject: [PATCH 05/12] fix EXT output for McMASA with separated channel --- lib_dec/ivas_jbm_dec.c | 4 ++++ lib_dec/ivas_masa_dec.c | 7 +++++++ 2 files changed, 11 insertions(+) diff --git a/lib_dec/ivas_jbm_dec.c b/lib_dec/ivas_jbm_dec.c index e6a2ee3194..ff3a3e064d 100644 --- a/lib_dec/ivas_jbm_dec.c +++ b/lib_dec/ivas_jbm_dec.c @@ -687,7 +687,11 @@ ivas_error ivas_jbm_dec_tc( /* Delay the separated channel to sync with CLDFB delay of the DirAC synthesis, and synthesize the LFE signal. */ if ( output_config == IVAS_AUDIO_CONFIG_5_1 || output_config == IVAS_AUDIO_CONFIG_7_1 || output_config == IVAS_AUDIO_CONFIG_5_1_4 || output_config == IVAS_AUDIO_CONFIG_7_1_4 || +#ifdef FIX_1052_EXT_OUTPUT + output_config == IVAS_AUDIO_CONFIG_5_1_2 || ( output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM && st_ivas->hOutSetup.num_lfe > 0 ) || output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) +#else output_config == IVAS_AUDIO_CONFIG_5_1_2 || ( output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM && st_ivas->hOutSetup.num_lfe > 0 ) ) +#endif { ivas_lfe_synth_with_filters( st_ivas->hMasa->hMasaLfeSynth, p_output, output_frame, n, LFE_CHANNEL ); } diff --git a/lib_dec/ivas_masa_dec.c b/lib_dec/ivas_masa_dec.c index fce8155d60..df4e775067 100644 --- a/lib_dec/ivas_masa_dec.c +++ b/lib_dec/ivas_masa_dec.c @@ -621,7 +621,11 @@ ivas_error ivas_masa_dec_open( hMasa->config.joinedSubframes = FALSE; /* Create spherical grid only for external output */ +#ifdef FIX_1052_EXT_OUTPUT + if ( st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_EXTERNAL && ( st_ivas->ivas_format == MASA_FORMAT || st_ivas->ivas_format == MASA_ISM_FORMAT ) ) +#else if ( st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) +#endif { if ( ( hMasa->data.sph_grid16 = (SPHERICAL_GRID_DATA *) malloc( sizeof( SPHERICAL_GRID_DATA ) ) ) == NULL ) { @@ -1052,6 +1056,9 @@ static ivas_error init_lfe_synth_data( ( output_config == IVAS_AUDIO_CONFIG_5_1 || output_config == IVAS_AUDIO_CONFIG_7_1 || output_config == IVAS_AUDIO_CONFIG_5_1_2 || output_config == IVAS_AUDIO_CONFIG_5_1_4 || output_config == IVAS_AUDIO_CONFIG_7_1_4 || +#ifdef FIX_1052_EXT_OUTPUT + output_config == IVAS_AUDIO_CONFIG_EXTERNAL || +#endif output_config == IVAS_AUDIO_CONFIG_FOA || output_config == IVAS_AUDIO_CONFIG_HOA2 || output_config == IVAS_AUDIO_CONFIG_HOA3 || ( output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM && st_ivas->hOutSetup.num_lfe > 0 ) ) ) -- GitLab From a9c7f053e4087f7f7c1653a95190193703ed0c23 Mon Sep 17 00:00:00 2001 From: vaclav Date: Tue, 9 Apr 2024 17:03:16 +0200 Subject: [PATCH 06/12] fix EXT output for ParamUpmixMC --- lib_dec/ivas_output_config.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib_dec/ivas_output_config.c b/lib_dec/ivas_output_config.c index 14e8d050e6..d1cd8c2d2d 100644 --- a/lib_dec/ivas_output_config.c +++ b/lib_dec/ivas_output_config.c @@ -454,7 +454,11 @@ void ivas_renderer_select( else if ( st_ivas->mc_mode == MC_MODE_PARAMUPMIX ) { *internal_config = transport_config; +#ifdef FIX_1052_EXT_OUTPUT + if ( *internal_config != output_config && output_config != IVAS_AUDIO_CONFIG_EXTERNAL ) +#else if ( *internal_config != output_config ) +#endif { if ( output_config != IVAS_AUDIO_CONFIG_FOA && output_config != IVAS_AUDIO_CONFIG_HOA2 && output_config != IVAS_AUDIO_CONFIG_HOA3 ) { -- GitLab From 066dfc28570b2a1a4ed6430fa4bc7aade2d2975a Mon Sep 17 00:00:00 2001 From: vaclav Date: Mon, 6 May 2024 13:44:37 +0200 Subject: [PATCH 07/12] add FIX_1052_EXT_OUTPUT_SBA --- lib_com/options.h | 1 + lib_dec/ivas_init_dec.c | 55 ++++++++++++++++++++++++++++++++++++ lib_dec/ivas_output_config.c | 8 ++++++ lib_dec/ivas_spar_decoder.c | 13 +++++++++ 4 files changed, 77 insertions(+) diff --git a/lib_com/options.h b/lib_com/options.h index bb8ad40657..430cc40ef3 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -160,6 +160,7 @@ #define FIX_1038_OFFSET_TO_NULL_PTR_IN_EVS_TCX_BFI /* FhG: move setting of pointers for parameter decoding so they are skipped in lost frames when they are not needed */ #define FIX_1043_JBM_MD_BUFFER /* VA: issue 1043: JBM MD handle allocation is avoided in non-JBM EXT operations */ #define FIX_1052_EXT_OUTPUT /* issue 1052: define EXT decoder output configuration for all IVAS formats */ +#define FIX_1052_EXT_OUTPUT_SBA /* #################### End BE switches ################################## */ diff --git a/lib_dec/ivas_init_dec.c b/lib_dec/ivas_init_dec.c index be3140440d..c767259dcd 100644 --- a/lib_dec/ivas_init_dec.c +++ b/lib_dec/ivas_init_dec.c @@ -57,6 +57,10 @@ static ivas_error ivas_read_format( Decoder_Struct *st_ivas, int16_t *num_bits_r static ivas_error doSanityChecks_IVAS( Decoder_Struct *st_ivas ); +#ifdef FIX_1052_EXT_OUTPUT_SBA +static AUDIO_CONFIG ivas_set_audio_config_from_sba_order( const int16_t sba_order ); + +#endif #ifdef SPLIT_REND_WITH_HEAD_ROT static ivas_error ivas_dec_reconfig_split_rend( Decoder_Struct *st_ivas ); @@ -1158,6 +1162,12 @@ ivas_error ivas_init_decoder( { hDecoderConfig->nchan_out = audioCfg2channels( st_ivas->transport_config ); } +#ifdef FIX_1052_EXT_OUTPUT + else if ( st_ivas->ivas_format == SBA_FORMAT ) + { + hDecoderConfig->nchan_out = audioCfg2channels( ivas_set_audio_config_from_sba_order( st_ivas->sba_order ) ); + } +#endif else if ( st_ivas->ivas_format == SBA_ISM_FORMAT ) #else if ( st_ivas->ivas_format == SBA_ISM_FORMAT ) @@ -1190,6 +1200,13 @@ ivas_error ivas_init_decoder( ivas_output_init( &( st_ivas->hOutSetup ), st_ivas->transport_config ); st_ivas->intern_config = st_ivas->transport_config; } +#ifdef FIX_1052_EXT_OUTPUT_SBA + else if ( output_config == IVAS_AUDIO_CONFIG_EXTERNAL && st_ivas->ivas_format == SBA_FORMAT ) + { + st_ivas->intern_config = ivas_set_audio_config_from_sba_order( st_ivas->sba_order ); + ivas_output_init( &( st_ivas->hOutSetup ), st_ivas->intern_config ); + } +#endif else { ivas_output_init( &( st_ivas->hOutSetup ), output_config ); @@ -1418,7 +1435,11 @@ ivas_error ivas_init_decoder( return error; } +#ifdef FIX_1052_EXT_OUTPUT_SBA + if ( hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_FOA && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_MONO && !( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_EXTERNAL && st_ivas->intern_config == IVAS_AUDIO_CONFIG_FOA ) ) +#else if ( hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_FOA && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_MONO ) +#endif { if ( ( error = ivas_dirac_dec_config( st_ivas, DIRAC_OPEN ) ) != IVAS_ERR_OK ) { @@ -3193,3 +3214,37 @@ static ivas_error doSanityChecks_IVAS( return IVAS_ERR_OK; } + + +#ifdef FIX_1052_EXT_OUTPUT_SBA +/*-------------------------------------------------------------------* + * ivas_set_audio_config_from_sba_order() + * + * + *-------------------------------------------------------------------*/ + +/*! r: audio configuration */ +static AUDIO_CONFIG ivas_set_audio_config_from_sba_order( + const int16_t sba_order /* i : Ambisonic (SBA) order */ +) +{ + AUDIO_CONFIG audio_config; + + switch ( sba_order ) + { + case SBA_FOA_ORDER: + audio_config = IVAS_AUDIO_CONFIG_FOA; + break; + case SBA_HOA2_ORDER: + audio_config = IVAS_AUDIO_CONFIG_HOA2; + break; + case SBA_HOA3_ORDER: + audio_config = IVAS_AUDIO_CONFIG_HOA3; + break; + default: + audio_config = IVAS_AUDIO_CONFIG_INVALID; + } + + return audio_config; +} +#endif diff --git a/lib_dec/ivas_output_config.c b/lib_dec/ivas_output_config.c index d1cd8c2d2d..d76b960401 100644 --- a/lib_dec/ivas_output_config.c +++ b/lib_dec/ivas_output_config.c @@ -349,7 +349,15 @@ void ivas_renderer_select( if ( ivas_format == SBA_FORMAT && ( output_config != IVAS_AUDIO_CONFIG_5_1 && output_config != IVAS_AUDIO_CONFIG_5_1_2 && output_config != IVAS_AUDIO_CONFIG_5_1_4 && output_config != IVAS_AUDIO_CONFIG_7_1 && output_config != IVAS_AUDIO_CONFIG_7_1_4 && output_config != IVAS_AUDIO_CONFIG_LS_CUSTOM && output_config != IVAS_AUDIO_CONFIG_MONO && output_config != IVAS_AUDIO_CONFIG_STEREO ) ) { +#ifdef FIX_1052_EXT_OUTPUT_SBA + if ( output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) + { + /* 'internal_config' was already set in ivas_set_audio_config_from_sba_order() */ + } + else if ( output_config == IVAS_AUDIO_CONFIG_HOA2 || output_config == IVAS_AUDIO_CONFIG_FOA ) +#else if ( output_config == IVAS_AUDIO_CONFIG_HOA2 || output_config == IVAS_AUDIO_CONFIG_FOA ) +#endif { *internal_config = output_config; } diff --git a/lib_dec/ivas_spar_decoder.c b/lib_dec/ivas_spar_decoder.c index 2e0f4ae0eb..06d9f25307 100644 --- a/lib_dec/ivas_spar_decoder.c +++ b/lib_dec/ivas_spar_decoder.c @@ -1556,7 +1556,11 @@ void ivas_spar_dec_upmixer_sf( } } +#ifdef FIX_1052_EXT_OUTPUT_SBA + if ( hDecoderConfig->ivas_total_brate < IVAS_24k4 && ( st_ivas->intern_config == IVAS_AUDIO_CONFIG_HOA2 || st_ivas->intern_config == IVAS_AUDIO_CONFIG_HOA3 ) ) +#else if ( ( hDecoderConfig->ivas_total_brate < IVAS_24k4 ) && ( ( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_HOA2 ) || ( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_HOA3 ) ) ) +#endif { ivas_spar_calc_smooth_facs( cldfb_in_ts_re[0], cldfb_in_ts_im[0], num_spar_bands, hSpar->subframe_nbslots[hSpar->subframes_rendered], hSpar->subframes_rendered == 0, &hSpar->hFbMixer->pFb->fb_bin_to_band, hSpar->hMdDec->smooth_fac, hSpar->hMdDec->smooth_buf ); } @@ -1565,7 +1569,12 @@ void ivas_spar_dec_upmixer_sf( { md_idx = hSpar->render_to_md_map[ts + slot_idx_start]; ivas_spar_get_parameters( hSpar, hDecoderConfig, md_idx, numch_out, numch_in, num_spar_bands, mixer_mat ); + +#ifdef FIX_1052_EXT_OUTPUT_SBA + if ( hDecoderConfig->ivas_total_brate < IVAS_24k4 && ( st_ivas->intern_config == IVAS_AUDIO_CONFIG_HOA2 || st_ivas->intern_config == IVAS_AUDIO_CONFIG_HOA3 ) ) +#else if ( ( hDecoderConfig->ivas_total_brate < IVAS_24k4 ) && ( ( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_HOA2 ) || ( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_HOA3 ) ) ) +#endif { for ( spar_band = 0; spar_band < num_spar_bands; spar_band++ ) { @@ -1654,7 +1663,11 @@ void ivas_spar_dec_upmixer_sf( } } +#ifdef FIX_1052_EXT_OUTPUT_SBA + if ( hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_FOA && hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO && hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_MONO && !( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_EXTERNAL && st_ivas->intern_config == IVAS_AUDIO_CONFIG_FOA ) ) +#else if ( hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_FOA && hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO && hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_MONO ) +#endif { ivas_dirac_dec_render_sf( st_ivas, output, nchan_internal, cldfb_in_ts_re, cldfb_in_ts_im ); } -- GitLab From 5cea4581fe8b996e81141c2bed94b5ee66f696b9 Mon Sep 17 00:00:00 2001 From: vaclav Date: Mon, 6 May 2024 13:48:12 +0200 Subject: [PATCH 08/12] typo --- lib_dec/ivas_init_dec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib_dec/ivas_init_dec.c b/lib_dec/ivas_init_dec.c index 33fca1afdf..e53033ba84 100644 --- a/lib_dec/ivas_init_dec.c +++ b/lib_dec/ivas_init_dec.c @@ -1152,7 +1152,7 @@ ivas_error ivas_init_decoder( { hDecoderConfig->nchan_out = audioCfg2channels( st_ivas->transport_config ); } -#ifdef FIX_1052_EXT_OUTPUT +#ifdef FIX_1052_EXT_OUTPUT_SBA else if ( st_ivas->ivas_format == SBA_FORMAT ) { hDecoderConfig->nchan_out = audioCfg2channels( ivas_set_audio_config_from_sba_order( st_ivas->sba_order ) ); -- GitLab From f5c9d812ecd4a2190e209d6cf732d4879755f99e Mon Sep 17 00:00:00 2001 From: vaclav Date: Mon, 6 May 2024 14:54:28 +0200 Subject: [PATCH 09/12] simplification --- lib_dec/ivas_init_dec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib_dec/ivas_init_dec.c b/lib_dec/ivas_init_dec.c index e53033ba84..0952117e6a 100644 --- a/lib_dec/ivas_init_dec.c +++ b/lib_dec/ivas_init_dec.c @@ -1427,7 +1427,7 @@ ivas_error ivas_init_decoder( } #ifdef FIX_1052_EXT_OUTPUT_SBA - if ( hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_FOA && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_MONO && !( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_EXTERNAL && st_ivas->intern_config == IVAS_AUDIO_CONFIG_FOA ) ) + if ( output_config != IVAS_AUDIO_CONFIG_FOA && output_config != IVAS_AUDIO_CONFIG_STEREO && output_config != IVAS_AUDIO_CONFIG_MONO && !( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_EXTERNAL && st_ivas->intern_config == IVAS_AUDIO_CONFIG_FOA ) ) #else if ( hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_FOA && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_MONO ) #endif -- GitLab From 484240f3c3a584fff63646bebd7da99ba929fbda Mon Sep 17 00:00:00 2001 From: vaclav Date: Tue, 7 May 2024 09:37:37 +0200 Subject: [PATCH 10/12] remove FIX_1052_EXT_OUTPUT_SBA --- lib_com/options.h | 1 - lib_dec/ivas_init_dec.c | 55 ------------------------------------ lib_dec/ivas_output_config.c | 8 ------ lib_dec/ivas_spar_decoder.c | 12 -------- 4 files changed, 76 deletions(-) diff --git a/lib_com/options.h b/lib_com/options.h index e34b164b9d..ac92dff0ee 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -158,7 +158,6 @@ #define FIX_NUM_SUBFRAME_UPDATE #define FIX_1052_EXT_OUTPUT /* issue 1052: define EXT decoder output configuration for all IVAS formats */ -#define FIX_1052_EXT_OUTPUT_SBA #define FIX_1053_REVERB_RECONFIGURATION /* Philips: issue 1053: fix for dynamic switching of acoustic environment */ diff --git a/lib_dec/ivas_init_dec.c b/lib_dec/ivas_init_dec.c index 0952117e6a..4493369fa0 100644 --- a/lib_dec/ivas_init_dec.c +++ b/lib_dec/ivas_init_dec.c @@ -59,10 +59,6 @@ static ivas_error ivas_read_format( Decoder_Struct *st_ivas, int16_t *num_bits_r static ivas_error doSanityChecks_IVAS( Decoder_Struct *st_ivas ); -#ifdef FIX_1052_EXT_OUTPUT_SBA -static AUDIO_CONFIG ivas_set_audio_config_from_sba_order( const int16_t sba_order ); - -#endif #ifdef SPLIT_REND_WITH_HEAD_ROT static ivas_error ivas_dec_reconfig_split_rend( Decoder_Struct *st_ivas ); @@ -1152,12 +1148,6 @@ ivas_error ivas_init_decoder( { hDecoderConfig->nchan_out = audioCfg2channels( st_ivas->transport_config ); } -#ifdef FIX_1052_EXT_OUTPUT_SBA - else if ( st_ivas->ivas_format == SBA_FORMAT ) - { - hDecoderConfig->nchan_out = audioCfg2channels( ivas_set_audio_config_from_sba_order( st_ivas->sba_order ) ); - } -#endif else if ( st_ivas->ivas_format == SBA_ISM_FORMAT ) #else if ( st_ivas->ivas_format == SBA_ISM_FORMAT ) @@ -1190,13 +1180,6 @@ ivas_error ivas_init_decoder( ivas_output_init( &( st_ivas->hOutSetup ), st_ivas->transport_config ); st_ivas->intern_config = st_ivas->transport_config; } -#ifdef FIX_1052_EXT_OUTPUT_SBA - else if ( output_config == IVAS_AUDIO_CONFIG_EXTERNAL && st_ivas->ivas_format == SBA_FORMAT ) - { - st_ivas->intern_config = ivas_set_audio_config_from_sba_order( st_ivas->sba_order ); - ivas_output_init( &( st_ivas->hOutSetup ), st_ivas->intern_config ); - } -#endif else { ivas_output_init( &( st_ivas->hOutSetup ), output_config ); @@ -1426,11 +1409,7 @@ ivas_error ivas_init_decoder( return error; } -#ifdef FIX_1052_EXT_OUTPUT_SBA - if ( output_config != IVAS_AUDIO_CONFIG_FOA && output_config != IVAS_AUDIO_CONFIG_STEREO && output_config != IVAS_AUDIO_CONFIG_MONO && !( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_EXTERNAL && st_ivas->intern_config == IVAS_AUDIO_CONFIG_FOA ) ) -#else if ( hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_FOA && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO && st_ivas->hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_MONO ) -#endif { if ( ( error = ivas_dirac_dec_config( st_ivas, DIRAC_OPEN ) ) != IVAS_ERR_OK ) { @@ -3239,37 +3218,3 @@ static ivas_error doSanityChecks_IVAS( return IVAS_ERR_OK; } - - -#ifdef FIX_1052_EXT_OUTPUT_SBA -/*-------------------------------------------------------------------* - * ivas_set_audio_config_from_sba_order() - * - * - *-------------------------------------------------------------------*/ - -/*! r: audio configuration */ -static AUDIO_CONFIG ivas_set_audio_config_from_sba_order( - const int16_t sba_order /* i : Ambisonic (SBA) order */ -) -{ - AUDIO_CONFIG audio_config; - - switch ( sba_order ) - { - case SBA_FOA_ORDER: - audio_config = IVAS_AUDIO_CONFIG_FOA; - break; - case SBA_HOA2_ORDER: - audio_config = IVAS_AUDIO_CONFIG_HOA2; - break; - case SBA_HOA3_ORDER: - audio_config = IVAS_AUDIO_CONFIG_HOA3; - break; - default: - audio_config = IVAS_AUDIO_CONFIG_INVALID; - } - - return audio_config; -} -#endif diff --git a/lib_dec/ivas_output_config.c b/lib_dec/ivas_output_config.c index 6cec77d14b..a547d96ac0 100644 --- a/lib_dec/ivas_output_config.c +++ b/lib_dec/ivas_output_config.c @@ -346,15 +346,7 @@ void ivas_renderer_select( if ( ivas_format == SBA_FORMAT && ( output_config != IVAS_AUDIO_CONFIG_5_1 && output_config != IVAS_AUDIO_CONFIG_5_1_2 && output_config != IVAS_AUDIO_CONFIG_5_1_4 && output_config != IVAS_AUDIO_CONFIG_7_1 && output_config != IVAS_AUDIO_CONFIG_7_1_4 && output_config != IVAS_AUDIO_CONFIG_LS_CUSTOM && output_config != IVAS_AUDIO_CONFIG_MONO && output_config != IVAS_AUDIO_CONFIG_STEREO ) ) { -#ifdef FIX_1052_EXT_OUTPUT_SBA - if ( output_config == IVAS_AUDIO_CONFIG_EXTERNAL ) - { - /* 'internal_config' was already set in ivas_set_audio_config_from_sba_order() */ - } - else if ( output_config == IVAS_AUDIO_CONFIG_HOA2 || output_config == IVAS_AUDIO_CONFIG_FOA ) -#else if ( output_config == IVAS_AUDIO_CONFIG_HOA2 || output_config == IVAS_AUDIO_CONFIG_FOA ) -#endif { *internal_config = output_config; } diff --git a/lib_dec/ivas_spar_decoder.c b/lib_dec/ivas_spar_decoder.c index 06d9f25307..d04436f59c 100644 --- a/lib_dec/ivas_spar_decoder.c +++ b/lib_dec/ivas_spar_decoder.c @@ -1556,11 +1556,7 @@ void ivas_spar_dec_upmixer_sf( } } -#ifdef FIX_1052_EXT_OUTPUT_SBA - if ( hDecoderConfig->ivas_total_brate < IVAS_24k4 && ( st_ivas->intern_config == IVAS_AUDIO_CONFIG_HOA2 || st_ivas->intern_config == IVAS_AUDIO_CONFIG_HOA3 ) ) -#else if ( ( hDecoderConfig->ivas_total_brate < IVAS_24k4 ) && ( ( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_HOA2 ) || ( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_HOA3 ) ) ) -#endif { ivas_spar_calc_smooth_facs( cldfb_in_ts_re[0], cldfb_in_ts_im[0], num_spar_bands, hSpar->subframe_nbslots[hSpar->subframes_rendered], hSpar->subframes_rendered == 0, &hSpar->hFbMixer->pFb->fb_bin_to_band, hSpar->hMdDec->smooth_fac, hSpar->hMdDec->smooth_buf ); } @@ -1570,11 +1566,7 @@ void ivas_spar_dec_upmixer_sf( md_idx = hSpar->render_to_md_map[ts + slot_idx_start]; ivas_spar_get_parameters( hSpar, hDecoderConfig, md_idx, numch_out, numch_in, num_spar_bands, mixer_mat ); -#ifdef FIX_1052_EXT_OUTPUT_SBA - if ( hDecoderConfig->ivas_total_brate < IVAS_24k4 && ( st_ivas->intern_config == IVAS_AUDIO_CONFIG_HOA2 || st_ivas->intern_config == IVAS_AUDIO_CONFIG_HOA3 ) ) -#else if ( ( hDecoderConfig->ivas_total_brate < IVAS_24k4 ) && ( ( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_HOA2 ) || ( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_HOA3 ) ) ) -#endif { for ( spar_band = 0; spar_band < num_spar_bands; spar_band++ ) { @@ -1663,11 +1655,7 @@ void ivas_spar_dec_upmixer_sf( } } -#ifdef FIX_1052_EXT_OUTPUT_SBA - if ( hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_FOA && hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO && hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_MONO && !( hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_EXTERNAL && st_ivas->intern_config == IVAS_AUDIO_CONFIG_FOA ) ) -#else if ( hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_FOA && hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_STEREO && hDecoderConfig->output_config != IVAS_AUDIO_CONFIG_MONO ) -#endif { ivas_dirac_dec_render_sf( st_ivas, output, nchan_internal, cldfb_in_ts_re, cldfb_in_ts_im ); } -- GitLab From 78351678e668dacb3409a0eea966c1da7dd68f27 Mon Sep 17 00:00:00 2001 From: vaclav Date: Tue, 7 May 2024 15:41:42 +0200 Subject: [PATCH 11/12] merge with main --- lib_com/options.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib_com/options.h b/lib_com/options.h index 3148950450..50be299d97 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -158,14 +158,14 @@ #define SPLIT_REND_POSE_CORRECTION_UNUSED_BITS #define FIX_NUM_SUBFRAME_UPDATE -#define FIX_1052_EXT_OUTPUT /* issue 1052: define EXT decoder output configuration for all IVAS formats */ - #define FIX_1053_REVERB_RECONFIGURATION /* Philips: issue 1053: fix for dynamic switching of acoustic environment */ #define FIX_1082_INSTRUM_FAILED_LC3PLUS /* VoiceAge: issue 1082: fix ambiguous syntax in LC3Plus code leading to fails of instrumented builds */ #define FIX_1077_MEMORY_TEST_MISSING /* orange: issue 1077 : add missing memory test*/ #define FIX_1081_BINAURAL_SPLIT_PCM_SANITY_CHECK /* VA: issue 1081: correct error print-out when BINAURAL_SPLIT_PCM is requested */ +#define FIX_1052_EXT_OUTPUT /* issue 1052: define EXT decoder output configuration for stereo and MC formats */ + /* #################### End BE switches ################################## */ -- GitLab From 3db5895c8217e75e176ea5089368453f2a77208d Mon Sep 17 00:00:00 2001 From: vaclav Date: Wed, 8 May 2024 16:41:55 +0200 Subject: [PATCH 12/12] comment --- lib_com/options.h | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/lib_com/options.h b/lib_com/options.h index d66e8b4b67..bfc16fcaab 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -160,13 +160,11 @@ #define FIX_NUM_SUBFRAME_UPDATE #define FIX_1053_REVERB_RECONFIGURATION /* Philips: issue 1053: fix for dynamic switching of acoustic environment */ - #define CONF_DISTATT /* Eri: Make distance attenuation configurable */ #define FIX_1082_INSTRUM_FAILED_LC3PLUS /* VoiceAge: issue 1082: fix ambiguous syntax in LC3Plus code leading to fails of instrumented builds */ - #define FIX_1077_MEMORY_TEST_MISSING /* orange: issue 1077 : add missing memory test*/ #define FIX_1081_BINAURAL_SPLIT_PCM_SANITY_CHECK /* VA: issue 1081: correct error print-out when BINAURAL_SPLIT_PCM is requested */ -#define FIX_1052_EXT_OUTPUT /* issue 1052: define EXT decoder output configuration for stereo and MC formats */ +#define FIX_1052_EXT_OUTPUT /* VA: issue 1052: define EXT decoder output configuration for stereo and MC formats */ /* #################### End BE switches ################################## */ @@ -177,7 +175,6 @@ #define NONBE_FIX_ISM_XOVER_BR /* FhG: issue 1072: select OSBA coding method depending on number of object and bitrate */ #define NONBE_FIX_1028_1DB_TCX_LEVEL_DROP /* VA: Harmonize the logic setting LP weighting factor between TCX encoder and TCX decoder */ - #define NONBE_FIX_SBA_SIGNALING_BITS_B /* FhG: issue 1061: option B: signal sba order additionally in OSBA */ #define NONBE_FIX_MC_LFE_LPF /* Dlb: Adding the LFE LPF filter back for MC content. */ -- GitLab