Commit 413767a3 authored by Jan Kiene's avatar Jan Kiene
Browse files

Merge branch...

Merge branch '983-discrete-ism-gain-calculation-not-done-on-the-correct-number-of-objects' into 'main'

Resolve "Discrete ISM gain calculation not done on the correct number of objects"

See merge request !1364
parents 6b8cbc90 bf91bee5
Loading
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -153,6 +153,7 @@

#define FIX_963_USAN_ERROR                              /* Eri: Issue 963: USAN error in Stereo CNG, division by zero */
#define FIX_971_LOG2_IDX_GAIN_0                         /* VA: prevent -Inf due to log2(ratio==0) */
#define FIX_983_DISC_ISM_DIGEST_NUM_OBJS                /* FhG: issue #983: the discrete ISM digest function uses the wrong number of objects */

/* #################### End BE switches ################################## */

+9 −0
Original line number Diff line number Diff line
@@ -996,7 +996,11 @@ void ivas_ism_dec_digest_tc(
         st_ivas->renderer_type == RENDERER_OSBA_STEREO ||
         ( st_ivas->renderer_type == RENDERER_BINAURAL_MIXER_CONV_ROOM && st_ivas->hDecoderConfig->Opt_Headrotation == 0 ) )
    {
#ifdef FIX_983_DISC_ISM_DIGEST_NUM_OBJS
        int16_t i;
#else
        int16_t i, num_objects;
#endif
        int16_t azimuth, elevation;

        /* we have a full frame interpolator, adapt it */
@@ -1029,8 +1033,13 @@ void ivas_ism_dec_digest_tc(
        }

        /* also get the gains here */
#ifdef FIX_983_DISC_ISM_DIGEST_NUM_OBJS
        for ( i = 0; i < st_ivas->nchan_ism; i++ )
#else
        num_objects = st_ivas->nchan_transport;

        for ( i = 0; i < num_objects; i++ )
#endif
        {
            mvr2r( st_ivas->hIsmRendererData->gains[i], st_ivas->hIsmRendererData->prev_gains[i], MAX_OUTPUT_CHANNELS );