Commit 71d5e623 authored by TYAGIRIS's avatar TYAGIRIS
Browse files

fix param bin for ISM SBA renderer

parent 921fa531
Loading
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -118,7 +118,11 @@ ivas_error ivas_td_decorr_reconfig_dec(
    ivas_error error;

    useTdDecorr_new = 0;
#ifdef SBA_AND_OBJECTS
    if ( ivas_format == SBA_FORMAT || ivas_format == SBA_ISM_FORMAT )
#else
    if ( ivas_format == SBA_FORMAT )
#endif
    {
        if ( nchan_transport == 1 )
        {
@@ -146,7 +150,11 @@ ivas_error ivas_td_decorr_reconfig_dec(

        if ( *useTdDecorr )
        {
#ifdef SBA_AND_OBJECTS
            if ( ivas_total_brate >= IVAS_13k2 && ( ivas_format == SBA_FORMAT || ivas_format == SBA_ISM_FORMAT ) )
#else
            if ( ivas_total_brate >= IVAS_13k2 && ivas_format == SBA_FORMAT )
#endif
            {
                if ( *hTdDecorr == NULL )
                {
+29 −1
Original line number Diff line number Diff line
@@ -613,7 +613,11 @@ void ivas_dirac_dec_binaural(
    }

    ivas_dirac_dec_set_md_map( st_ivas, DEFAULT_JBM_CLDFB_TIMESLOTS );
#ifdef SBA_AND_OBJECTS
    if ( st_ivas->ivas_format == SBA_FORMAT || st_ivas->ivas_format == SBA_ISM_FORMAT )
#else
    if ( st_ivas->ivas_format == SBA_FORMAT )
#endif
    {
        ivas_spar_dec_set_render_map( st_ivas, DEFAULT_JBM_CLDFB_TIMESLOTS );
    }
@@ -858,8 +862,12 @@ static void ivas_dirac_dec_binaural_internal(
                    Cldfb_RealBuffer_in[ch][slot],
                    Cldfb_ImagBuffer_in[ch][slot],
                    nBins, st_ivas->cldfbAnaDec[ch] );

#ifdef SBA_AND_OBJECTS
                if ( config_data.nchan_transport == 1 &&
                     ( config_data.ivas_format == SBA_FORMAT || config_data.ivas_format == SBA_ISM_FORMAT ) )
#else
                if ( config_data.nchan_transport == 1 && config_data.ivas_format == SBA_FORMAT )
#endif
                {
                    v_multc( Cldfb_RealBuffer_in[ch][slot], INV_SQRT_2, Cldfb_RealBuffer_in[ch][slot], nBins );
                    v_multc( Cldfb_ImagBuffer_in[ch][slot], INV_SQRT_2, Cldfb_ImagBuffer_in[ch][slot], nBins );
@@ -868,7 +876,11 @@ static void ivas_dirac_dec_binaural_internal(
        }
    }

#ifdef SBA_AND_OBJECTS
    if ( config_data.ivas_format == SBA_FORMAT || config_data.ivas_format == SBA_ISM_FORMAT )
#else
    if ( config_data.ivas_format == SBA_FORMAT )
#endif
    {
        hDiracDecBin->hDiffuseDist = &diffuseDistData;

@@ -1015,7 +1027,11 @@ static void ivas_dirac_dec_binaural_internal(

                hDiracDecBin = st_ivas->hDiracDecBin[pos_idx];
                assert( hDiracDecBin != NULL && "No DiracDecBin handle for this position" );
#ifdef SBA_AND_OBJECTS
                if ( config_data.ivas_format == SBA_FORMAT || config_data.ivas_format == SBA_ISM_FORMAT )
#else
                if ( config_data.ivas_format == SBA_FORMAT )
#endif
                {
                    hDiracDecBin->hDiffuseDist = &diffuseDistData;
                }
@@ -1231,7 +1247,11 @@ static void ivas_dirac_dec_binaural_formulate_input_covariance_matrices(
        }
    }

#ifdef SBA_AND_OBJECTS
    if ( ( ivas_format == SBA_FORMAT || ivas_format == SBA_ISM_FORMAT ) && nchan_transport == 2 )
#else
    if ( ivas_format == SBA_FORMAT && nchan_transport == 2 )
#endif
    {
        float tempRe, tempIm;
#ifdef FIX_647_SILENT_W_PARAMBIN
@@ -1651,7 +1671,11 @@ static void ivas_dirac_dec_binaural_formulate_target_covariance_matrices(
        }
        else /* When rendering binaural, ambience has frequency dependent ICC. */
        {
#ifdef SBA_AND_OBJECTS
            if ( ( ivas_format == SBA_FORMAT || ivas_format == SBA_ISM_FORMAT ) && bin < BINAURAL_COHERENCE_DIFFERENCE_BINS )
#else
            if ( ivas_format == SBA_FORMAT && bin < BINAURAL_COHERENCE_DIFFERENCE_BINS )
#endif
            {
                float diffuseFieldCoherence;
                diffuseFieldCoherence = hDiracDecBin->hDiffuseDist->diffuseRatioX[bin] * hDiracDecBin->diffuseFieldCoherenceX[bin] + hDiracDecBin->hDiffuseDist->diffuseRatioY[bin] * hDiracDecBin->diffuseFieldCoherenceY[bin] + hDiracDecBin->hDiffuseDist->diffuseRatioZ[bin] * hDiracDecBin->diffuseFieldCoherenceZ[bin];
@@ -2340,7 +2364,11 @@ static void ivas_dirac_dec_binaural_determine_processing_matrices(
            {
                decorrelationReductionFactor = sqrtf( fmaxf( 0.0f, hDiracDecBin->frameMeanDiffuseness[bin] ) );
            }
#ifdef SBA_AND_OBJECTS
            if ( ( ivas_format == SBA_FORMAT || ivas_format == SBA_ISM_FORMAT ) && nchan_transport == 1 )
#else
            else if ( ivas_format == SBA_FORMAT && nchan_transport == 1 )
#endif
            {
                decorrelationReductionFactor = 1.0f;
            }