diff --git a/lib_com/options.h b/lib_com/options.h index 09e65fa5abe4ca62f3b25b1698ff97724885160a..de0967fc1a4eaf72aa4a75d8187157ffe645525e 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -196,6 +196,8 @@ #define FIX_441_SBA_PARAMBIN_GAINS /* Nokia: Fix issue 441 by changing gains in SBA path of parametric binauralizer */ #define MC_PARAMUPMIX_MODE /* Dlb: Contribution 39: Multichannel Parametric Upmix */ +#define FIX_469_BRSWITCH_PUPMIX /* Dlb: Fix issue 469 for Param Upmix bitrate switching */ + #define HODIRAC /* FhG: Contribution 32: Sector-based HO-DirAC method for SBA at high bitrates */ #define DIRAC_ALLOC_HARM /* VA: harmonize DirAC parameters allocation/deallocation */ diff --git a/lib_dec/ivas_mct_dec.c b/lib_dec/ivas_mct_dec.c index 0dd2552c0f161ac455ac746f48d179993dea6eac..19a0909461a40f3649436dec3bba5a52bb178bf4 100755 --- a/lib_dec/ivas_mct_dec.c +++ b/lib_dec/ivas_mct_dec.c @@ -815,8 +815,17 @@ static ivas_error ivas_mc_dec_reconfig( /* remove ls conversion if it was allocated by ParamMC */ ivas_ls_setup_conversion_close( &st_ivas->hLsSetUpConversion ); } + #ifdef MC_PARAMUPMIX_MODE +#ifdef FIX_469_BRSWITCH_PUPMIX + if ( last_mc_mode == MC_MODE_PARAMUPMIX ) + { + ivas_mc_paramupmix_dec_close( &( st_ivas->hMCParamUpmix ) ); + ivas_ls_setup_conversion_close( &( st_ivas->hLsSetUpConversion ) ); + } +#else ivas_mc_paramupmix_dec_close( &( st_ivas->hMCParamUpmix ) ); +#endif #endif /* De-allocate McMasa-related handles */ ivas_masa_dec_close( &( st_ivas->hMasa ) );