Commit 4c33e820 authored by Sandesh Venkatesh's avatar Sandesh Venkatesh
Browse files

Merge branch 'main' into '736-random-behaviour-of-bwe-at-32-kbps'

# Conflicts:
#   lib_com/options.h
parents fa151856 4b0124e7
Loading
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -447,6 +447,14 @@ int main(
            fprintf( stderr, "Failed to get directivity patterns for one or more of IDs: %d %d %d %d\n\n", arg.directivityPatternId[0], arg.directivityPatternId[1], arg.directivityPatternId[2], arg.directivityPatternId[3] );
            goto cleanup;
        }
#ifdef IVAS_FLOAT_FIXED
        FOR( Word16 i = 0; i < 4; i++ )
        {
            renderConfig.directivity_fx[i * 3] = (Word16) ( renderConfig.directivity[i * 3] * ( 1u << 6 ) );
            renderConfig.directivity_fx[i * 3 + 1] = (Word16) ( renderConfig.directivity[i * 3 + 1] * ( 1u << 6 ) );
            renderConfig.directivity_fx[i * 3 + 2] = (Word16) ( renderConfig.directivity[i * 3 + 2] * ( 1u << 15 ) );
        }
#endif // IVAS_FLOAT_FIXED

        if ( arg.outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
        {
+1 −0
Original line number Diff line number Diff line
@@ -566,6 +566,7 @@ enum

#define FRAMES_PER_SEC                      50
#ifdef IVAS_FLOAT_FIXED
#define MAX_PARAM__SPATIAL_SUB_FRAMES_PER_SEC              200 //(FRAMES_PER_SEC * MAX_PARAM_SPATIAL_SUBFRAMES)
#define ONE_BY_FRAMES_PER_SEC               ((Word32)(0x028F5C29))
#define FRAMES_PER_SEC_BY_2                 (FRAMES_PER_SEC >> 1)
#endif
+8 −5
Original line number Diff line number Diff line
@@ -194,6 +194,13 @@ Word16 Q_factor_L(float x)
        Q = norm_l(abs((Word32)x));
    return Q;
}
Word16 Q_factor_L_32( Word32 x )
{
    Word16 Q = 31;
    if ( x >= 1 || x <= -1 )
        Q = norm_l(L_abs( (Word32) x ) );
    return Q;
}
Word16 Q_factor_arr(float *x, Word16 l)
{
	Word16 Q = 15;
@@ -789,11 +796,7 @@ void stereo_tcx_dec_mode_switch_reconf_To_fixed_2(
                //st->hFdCngDec->msPeriodog_ST_fx[p] = (Word32) ( st->hFdCngDec->msPeriodog_ST[p] * ( 1u << ( 31 - st->hFdCngDec->msPeriodog_ST_exp ) ) );
            }

            st->hFdCngDec->hFdCngCom->cngNoiseLevelExp = 31 - Q4; // Q4
            for ( int p = 0; p < FFTCLDFBLEN; p++ )
            {
                st->hFdCngDec->hFdCngCom->cngNoiseLevel[p] = (Word32) ( st->hFdCngDec->hFdCngCom->cngNoiseLevel_flt[p] * ( 1u << ( 31 - st->hFdCngDec->hFdCngCom->cngNoiseLevelExp ) ) );
            }
            //}
            //st->hFdCngDec->hFdCngCom->sidNoiseEstExp = 31 - Q4;
            //st->hFdCngDec->partNoiseShape_exp = 31 - Q4;
            //for ( int p = 0; p < NPART; p++ )
+3 −1
Original line number Diff line number Diff line
@@ -352,7 +352,9 @@ typedef enum

#define ISM_RADIUS_NBITS                        6 
#define ISM_RADIUS_MIN                          0.0f
#define ISM_RADIUS_MIN_Q9                       0
#define ISM_RADIUS_DELTA                        0.25f /* Max radius = (2^ISM_RADIUS_NBITS-1)*0.25 = 15.75 */
#define ISM_RADIUS_DELTA_Q8                     64
#define ISM_EXTENDED_METADATA_BRATE             IVAS_64k
#define ISM_METADATA_IS_NDP_BITS                1
#define ISM_EXTENDED_METADATA_BITS              1
@@ -1857,7 +1859,7 @@ typedef enum
#define ER_RADIUS_FX                           (1* ONE_IN_Q30) //Q2.30
#define ER_LIST_ORIGIN_X_FX                    (0)
#define ER_LIST_ORIGIN_Y_FX                    (0)
#define ER_LIST_HEIGHT_FX                      (1.6 *ONE_IN_Q22) //Q.22
#define ER_LIST_HEIGHT_FX                      (6710886) /* 1.6 in Q.22 */
#endif // IVAS_FLOAT_FIXED


+11 −1
Original line number Diff line number Diff line
@@ -654,8 +654,18 @@ void ivas_get_dirac_sba_max_md_bits_fx(
    Word16 exp_res = 0;
    IF (var1 % 5 != 0) {
        var4 = BASOP_Util_Add_Mant32Exp(var2_32, exp, ONE_IN_Q30, 1, &exp_res);
        exp = exp_res;
    }
    *metadata_max_bits = extract_l(L_min(MAX16B, L_shr(var4, 14)));
    Word16 flag = BASOP_Util_Cmp_Mant32Exp(MAX16B, 31, var4, exp);
    Word32 tmp;
    if (flag == 1) {
        tmp = var4;
    }
    else {
        tmp = MAX16B;
        exp = 31;
    }
    *metadata_max_bits = (Word16)L_shr(tmp, 31 - exp);;
    *qmetadata_max_bit_req = QMETADATA_MAXBIT_REQ_SBA >> 1;

    return;
Loading