Commit 76262b6d authored by vaillancour's avatar vaillancour
Browse files

Merge branch 'main' into...

Merge branch 'main' into 1905-integrate-acelp-evs-function-that-introduces-with-minor-rounding-differences-replace-norm_corr_ivas
parents b3ac0dc7 2ba9f36e
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -88,6 +88,7 @@
#define ISSUE_1866_replace_overflow_libdec                    /* FhG: BE - Replace BASOPoverflow operators all over the lib_dec module if Overflow result is not used */

#define NONBE_FIX_TCX5_INTERLEAVING_FOR_FS_IN_UNEQUAL_FS_OUT /* FhG: apply correct TCX5 grouping/interleaving when input_fs != output_fs */
#define FIX_1917_DIRAC_RENDER_PTR_INCR                       /* FhG: fix wrong pointer increment in ivas_dirac_dec_render_sf_fx() for object rendering */

#define FIX_1824
#define FIX_1822
+4 −0
Original line number Diff line number Diff line
@@ -3796,7 +3796,11 @@ void ivas_dirac_dec_render_sf_fx(
                                    tc_re_fx++;
                                    Cldfb_ImagBuffer_fx[j2][k][l] = Madd_32_32( Cldfb_ImagBuffer_fx[j2][k][l], g_fx, *tc_im_fx );
                                    move32();
#ifdef FIX_1917_DIRAC_RENDER_PTR_INCR
                                    tc_im_fx++;
#else
                                    tc_re_fx++;
#endif
                                }
                                w1_fx += hSpatParamRendCom->num_freq_bands;
                            }
+46 −0
Original line number Diff line number Diff line
@@ -2824,6 +2824,52 @@ ivas_error IVAS_DEC_FeedRenderConfig(
    Copy32( renderConfig.roomAcoustics.pAcoustic_rt60_fx, hRenderConfig->roomAcoustics.pAcoustic_rt60_fx, CLDFB_NO_CHANNELS_MAX ); // Q26
    Copy32( renderConfig.roomAcoustics.pAcoustic_dsr_fx, hRenderConfig->roomAcoustics.pAcoustic_dsr_fx, CLDFB_NO_CHANNELS_MAX );   // Q30

#ifdef FIX_1053_REVERB_RECONFIGURATION
    /* Re-initialize reverb instance if already available */

    /* TD renderer Jot reverberator */
    IF( hIvasDec->st_ivas->hReverb != NULL )
    {
        IF( ( error = ivas_reverb_open_fx( &hIvasDec->st_ivas->hReverb, hIvasDec->st_ivas->hHrtfStatistics, hRenderConfig, hIvasDec->st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK )
        {
            return error;
        }
    }

    /* CREND Jot reverberator */
    test();
    test();
    IF( hIvasDec->st_ivas->hCrendWrapper != NULL && hIvasDec->st_ivas->hCrendWrapper->hCrend[0] != NULL && hIvasDec->st_ivas->hCrendWrapper->hCrend[0]->hReverb != NULL )
    {
        IF( ( error = ivas_reverb_open_fx( &hIvasDec->st_ivas->hCrendWrapper->hCrend[0]->hReverb, hIvasDec->st_ivas->hHrtfStatistics, hRenderConfig, hIvasDec->st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK )
        {
            return error;
        }
    }

    test();
    /* FB reverberator */
    IF( hIvasDec->st_ivas->hDiracDecBin[0] != NULL && hIvasDec->st_ivas->hDiracDecBin[0]->hReverb != NULL )
    {
        ivas_binaural_reverb_close_fx( &( hIvasDec->st_ivas->hDiracDecBin[0]->hReverb ) );
        IF( ( error = ivas_binaural_reverb_init( &( hIvasDec->st_ivas->hDiracDecBin[0]->hReverb ), hIvasDec->st_ivas->hHrtfStatistics, hIvasDec->st_ivas->hSpatParamRendCom->num_freq_bands, CLDFB_NO_COL_MAX / MAX_PARAM_SPATIAL_SUBFRAMES, &( hRenderConfig->roomAcoustics ), hIvasDec->st_ivas->hDecoderConfig->output_Fs, NULL, NULL ) ) != IVAS_ERR_OK )
        {
            return error;
        }
    }

    test();
    /* Fastconv CLDFB reverberator */
    IF( hIvasDec->st_ivas->hBinRenderer != NULL && hIvasDec->st_ivas->hBinRenderer->hReverb != NULL )
    {
        ivas_binaural_reverb_close_fx( &( hIvasDec->st_ivas->hBinRenderer->hReverb ) );
        IF( ( error = ivas_binaural_reverb_init( &( hIvasDec->st_ivas->hBinRenderer->hReverb ), hIvasDec->st_ivas->hHrtfStatistics, hIvasDec->st_ivas->hBinRenderer->conv_band, hIvasDec->st_ivas->hBinRenderer->timeSlots, &( hRenderConfig->roomAcoustics ), hIvasDec->st_ivas->hDecoderConfig->output_Fs, NULL, NULL ) ) != IVAS_ERR_OK )
        {
            return error;
        }
    }
#endif

    Copy( renderConfig.directivity_fx, hRenderConfig->directivity_fx, 3 * MAX_NUM_OBJECTS );
#ifdef CONF_DISTATT
    Copy32( renderConfig.distAtt_fx, hRenderConfig->distAtt_fx, 3 );