Commit a8858a50 authored by Tapani Pihlajakuja's avatar Tapani Pihlajakuja
Browse files

Merge remote-tracking branch 'origin/main' into...

Merge remote-tracking branch 'origin/main' into basop-2529-masa-metadata-ratio-scaling-issues-in-reading-verification-and-writing
parents 24b2cd2c efc1fc02
Loading
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1251,7 +1251,7 @@ int main(
    /* Set reverb room size if specified */
    if ( args.reverbRoomSize != IVAS_ROOM_SIZE_AUTO )
    {
        if ( ( IVAS_REND_SetReverbRoomSize( hIvasRend, args.reverbRoomSize ) ) != IVAS_ERR_OK )
        if ( ( error = IVAS_REND_SetReverbRoomSize( hIvasRend, args.reverbRoomSize ) ) != IVAS_ERR_OK )
        {
            fprintf( stderr, "\nError setting reverb room size\n" );
            goto cleanup;
+4 −0
Original line number Diff line number Diff line
@@ -108,6 +108,10 @@
#define FIX_BASOP_2513_EXTRA_RETURN_REND_OPEN           /* Nokia: BASOP issue 2513: Removes extra return block */
#define FIX_BASOP_2514_EFAP_PORTING_ERROR               /* Nokia: BASOP issue 2514: Fix wrongly ported line */
#define FIX_BASOP_2516_REND_CUSTOM_LAYOUT_PORT_BUG      /* Nokia: BASOP issue 2516: Fix porting bug in setting planar state for custom layout in renderer */
#define FIX_FLOAT_1569_REND_RENDER_CONFIG_CHECKS        /* Nokia: float issue 1569: fix render config checks in renderer */
#define FIX_BASOP_2526_SPAR_MASA_PARAM_MAP_Q_BUG        /* Nokia: BASOP issue 2526: Fix wrong Q variable in SPAR to MASA param mapping */
#define FIX_BASOP_2524_MASA_REDUCE_META_BUG             /* Nokia: BASOP issue 2524: Fix wrong reset of W_tmp in reduce_metadata_further_fx */
#define FIX_BASOP_2520_PARAMBIN_THRESHOLD_FIX           /* Nokia: BASOP issue 2520: Fix wrong threshold in ParamBin */
#define FIX_BASOP_2529_MASA_RATIO_SCALINGS              /* Nokia: BASOP issue 2529: Fix MASA ratio scalings and verifications */

/* ##################### End NON-BE switches ########################### */
+5 −0
Original line number Diff line number Diff line
@@ -2258,8 +2258,13 @@ void ivas_spar_param_to_masa_param_mapping_fx(
                    move64();
                    move64();
                }
#ifdef FIX_BASOP_2526_SPAR_MASA_PARAM_MAP_Q_BUG
                transportSignalCrossCorrelation_64[bin] = W_add( transportSignalCrossCorrelation_64[bin], W_mult0_32_32( L_shr_sat( inRe_fx[0][slot][bin], sub( q_cldfb[0][slot], common_q ) ), L_shr_sat( inRe_fx[1][slot][bin], sub( q_cldfb[1][slot], common_q ) ) ) ); // Q(2 * common_q)
                transportSignalCrossCorrelation_64[bin] = W_add( transportSignalCrossCorrelation_64[bin], W_mult0_32_32( L_shr_sat( inIm_fx[0][slot][bin], sub( q_cldfb[0][slot], common_q ) ), L_shr_sat( inIm_fx[1][slot][bin], sub( q_cldfb[1][slot], common_q ) ) ) ); // Q(2 * common_q)
#else
                transportSignalCrossCorrelation_64[bin] = W_add( transportSignalCrossCorrelation_64[bin], W_mult0_32_32( L_shr_sat( inRe_fx[0][slot][bin], sub( q_cldfb[0][slot], common_q ) ), L_shr_sat( inRe_fx[1][slot][bin], sub( q_cldfb[0][slot], common_q ) ) ) ); // Q(2 * common_q)
                transportSignalCrossCorrelation_64[bin] = W_add( transportSignalCrossCorrelation_64[bin], W_mult0_32_32( L_shr_sat( inIm_fx[0][slot][bin], sub( q_cldfb[0][slot], common_q ) ), L_shr_sat( inIm_fx[1][slot][bin], sub( q_cldfb[0][slot], common_q ) ) ) ); // Q(2 * common_q)
#endif
                move64();
                move64();
            }
+8 −0
Original line number Diff line number Diff line
@@ -2599,18 +2599,26 @@ static void reduce_metadata_further_fx(
        Word32 x, y, z;
        Word32 veclen, L_tmp;

#ifndef FIX_BASOP_2524_MASA_REDUCE_META_BUG
        W_tmp = 0;
        move64();
#endif
        FOR( band = 0; band < numCodingBands; band++ )
        {
            xSum = 0;
            ySum = 0;
            zSum = 0;
#ifndef FIX_BASOP_2524_MASA_REDUCE_META_BUG
            bandSumEnergy = 0;
            move32();
#endif
            move32();
            move32();
            move32();
#ifdef FIX_BASOP_2524_MASA_REDUCE_META_BUG
            W_tmp = 0;
            move64();
#endif

            FOR( sf = 0; sf < MAX_PARAM_SPATIAL_SUBFRAMES; sf++ )
            {
+4 −0
Original line number Diff line number Diff line
@@ -1646,7 +1646,11 @@ static void ivas_dirac_dec_binaural_formulate_target_covariance_matrices_fx(
            }
            ELSE IF( NE_32( ivas_format, MASA_ISM_FORMAT ) || ( EQ_32( ivas_format, MASA_ISM_FORMAT ) && LT_16( dirIndex, hSpatParamRendCom->numParametricDirections ) ) ) /* For second of the two simultaneous directions */
            {
#ifdef FIX_BASOP_2520_PARAMBIN_THRESHOLD_FIX
                IF( LT_32( ( ratio_fx = hSpatParamRendCom->energy_ratio2_fx[dirac_read_idx][bin] ), 1073741 /* 0.001 in Q30 */ ) )
#else
                IF( LT_32( ( ratio_fx = hSpatParamRendCom->energy_ratio2_fx[dirac_read_idx][bin] ), 10737418 /* 0.01 in Q30 */ ) )
#endif
                {
                    /* This touches only MASA path where second direction always has smaller ratio and
                     * for non-2dir it is zero. As the whole direction contribution is multiplied with
Loading