diff --git a/lib_com/options.h b/lib_com/options.h index 1229cac95b3822eecd4eb2181df3d72c491fcc18..99120b3e3d3e395bb887a29d3c30443ff572a5f6 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -198,6 +198,7 @@ #define NONBE_FIX_770_PLANAR_SBA_JBM /* FhG : Issue #770: Crash in planar FOA decoding with JBM caused by uninitialized value */ #define NONBE_FIX_760_COHERENCE_MASA /* Nokia: Issue 760: fixes decoder crash for some cases when all energy ratios are 1 */ #define NONBE_FIX_752_OSBA_MISCONFIG_MCT /* FhG: issue 752: misconfiguration of MCT causes crashes for coding with sampling rate under 48kHz at 256kbps*/ +#define NONBE_FIX_787_PARAM_UPMIX_LEVEL /* Dlb: issue 787: fix level of Mono/Stereo for ParamUpmix mode */ #define NONBE_FIX_727_MC_PARAMUPMIX_HEADROTATION /* Dlb : issue 727 : headrotation in MC paramupmix mode*/ #define NONBE_FIX_779_ISM_FREE_REVERB_HANDLE /* VA: issue 779: fix Crash in ISM rate switching with BINAURAL_ROOM_REVERB */ diff --git a/lib_dec/ivas_mc_paramupmix_dec.c b/lib_dec/ivas_mc_paramupmix_dec.c index 07c3695600ae7fe2dbf88dc36eb81e532c2547f3..319c9948f0278d28539d14aca093736ba5b8029b 100644 --- a/lib_dec/ivas_mc_paramupmix_dec.c +++ b/lib_dec/ivas_mc_paramupmix_dec.c @@ -229,6 +229,13 @@ void ivas_mc_paramupmix_dec( if ( ( output_config == IVAS_AUDIO_CONFIG_STEREO ) || ( output_config == IVAS_AUDIO_CONFIG_MONO ) ) { first_empty_channel = 8; /* Don't upmix */ +#ifdef NONBE_FIX_787_PARAM_UPMIX_LEVEL + /* Compensate loudness for not doing full upmix */ + for ( i = 4; i < 8; i++ ) + { + v_multc( output_f[i], 2.0f, output_f[i], L_FRAME48k ); + } +#endif } else {