Commit b817a783 authored by Jan Kiene's avatar Jan Kiene
Browse files

port static scaling from float repository

parent d9fdb374
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -195,6 +195,9 @@ int main(
#ifdef DEBUG_SBA
    int16_t numTransportChannels = 1;
#endif
#ifdef NONBE_FIX_1165_APPLY_LIMITER_ON_ENCODER_DMX
    int32_t cnt_frames_limited, noClipping;
#endif
#endif

#ifdef DEBUGGING
@@ -792,6 +795,17 @@ int main(
    }

#ifdef DEBUGGING
#ifdef NONBE_FIX_1165_APPLY_LIMITER_ON_ENCODER_DMX
    if ( ( cnt_frames_limited = IVAS_ENC_GetCntFramesLimited( hIvasEnc ) ) > 0 )
    {
        fprintf( stdout, "\nLimiter applied in %d frames.\n\n", cnt_frames_limited );
    }
    if ( ( noClipping = IVAS_ENC_GetNoCLipping( hIvasEnc ) ) > 0 )
    {
        fprintf( stdout, "Clipping (saturation) detected: %d samples clipped!!!\n\n", noClipping );
    }
#endif

    print_snr();
#endif
    /*------------------------------------------------------------------------------------------*
+63 −0
Original line number Diff line number Diff line
@@ -1778,6 +1778,69 @@ typedef enum

} STEREO_DMX_EVS_PRC;



/*----------------------------------------------------------------------------------*
 * Static downmix scaling factors
 *----------------------------------------------------------------------------------*/

#ifdef NONBE_FIX_1165_STATIC_SCAL_MCMASA
/* McMASA */
/* 5.1 */
#define ivas_mcmasa_dmx_scal_fac_CICP6_1tc_static     ( 2.44948983f )
#define ivas_mcmasa_dmx_scal_fac_CICP6_1tc_static_inv ( 1.0f / ivas_mcmasa_dmx_scal_fac_CICP6_1tc_static )

/* 7.1 */
#define ivas_mcmasa_dmx_scal_fac_CICP12_1tc_static     ( 2.82842708f )
#define ivas_mcmasa_dmx_scal_fac_CICP12_1tc_static_inv ( 1.0f / ivas_mcmasa_dmx_scal_fac_CICP12_1tc_static )

/* 5.1+2 */
#define ivas_mcmasa_dmx_scal_fac_CICP14_1tc_static     ( 2.82842708f )
#define ivas_mcmasa_dmx_scal_fac_CICP14_1tc_static_inv ( 1.0f / ivas_mcmasa_dmx_scal_fac_CICP14_1tc_static )

/* 5.1+4 */
#define ivas_mcmasa_dmx_scal_fac_CICP16_1tc_static     ( 3.1622777f )
#define ivas_mcmasa_dmx_scal_fac_CICP16_1tc_static_inv ( 1.0f / ivas_mcmasa_dmx_scal_fac_CICP16_1tc_static )

#define ivas_mcmasa_dmx_scal_fac_CICP16_2tc_static     ( 2.44948983f )
#define ivas_mcmasa_dmx_scal_fac_CICP16_2tc_static_inv ( 1.0f / ivas_mcmasa_dmx_scal_fac_CICP16_2tc_static )

#define ivas_mcmasa_dmx_scal_fac_CICP16_3tc_static     ( 2.0f )
#define ivas_mcmasa_dmx_scal_fac_CICP16_3tc_static_inv ( 1.0f / ivas_mcmasa_dmx_scal_fac_CICP16_3tc_static )

/* 7.1+4 */
#define ivas_mcmasa_dmx_scal_fac_CICP19_1tc_static     ( 3.46410155f )
#define ivas_mcmasa_dmx_scal_fac_CICP19_1tc_static_inv ( 1.0f / ivas_mcmasa_dmx_scal_fac_CICP19_1tc_static )

#define ivas_mcmasa_dmx_scal_fac_CICP19_2tc_static     ( 2.64575124f )
#define ivas_mcmasa_dmx_scal_fac_CICP19_2tc_static_inv ( 1.0f / ivas_mcmasa_dmx_scal_fac_CICP19_2tc_static )

#define ivas_mcmasa_dmx_scal_fac_CICP19_3tc_static     ( 2.23606801f )
#define ivas_mcmasa_dmx_scal_fac_CICP19_3tc_static_inv ( 1.0f / ivas_mcmasa_dmx_scal_fac_CICP19_3tc_static )

/* Separated channel */
#define ivas_mcmasa_dmx_scal_fac_sep_chan_static       ( 2.0f )
#define ivas_mcmasa_dmx_scal_fac_sep_chan_static_inv   ( 1.0f / ivas_mcmasa_dmx_scal_fac_sep_chan_static )

#endif

#ifdef NONBE_FIX_1165_STATIC_SCAL_OMASA
/* OMASA */
/* Approximates that 2 channels sum coherently and rest are incoherent */
#define ivas_omasa_dmx_scal_fac_2ch_static     ( 2.0f )
#define ivas_omasa_dmx_scal_fac_2ch_static_inv ( 1.0f / ivas_omasa_dmx_scal_fac_2ch_static )

#define ivas_omasa_dmx_scal_fac_3ch_static     ( 2.23606801f )
#define ivas_omasa_dmx_scal_fac_3ch_static_inv ( 1.0f / ivas_omasa_dmx_scal_fac_3ch_static )

#define ivas_omasa_dmx_scal_fac_4ch_static     ( 2.44948983f )
#define ivas_omasa_dmx_scal_fac_4ch_static_inv ( 1.0f / ivas_omasa_dmx_scal_fac_4ch_static )

#define ivas_omasa_dmx_scal_fac_5ch_static     ( 2.64575124f )
#define ivas_omasa_dmx_scal_fac_5ch_static_inv ( 1.0f / ivas_omasa_dmx_scal_fac_5ch_static )

#endif

#endif
/* clang-format on */
/* IVAS_CNST_H  */
+16 −0
Original line number Diff line number Diff line
@@ -5343,6 +5343,14 @@ ivas_error ivas_mcmasa_dec_reconfig(
    Decoder_Struct *st_ivas                                     /* i/o: IVAS decoder handle                              */
);

#ifdef NONBE_FIX_1165_STATIC_SCAL_MCMASA
void ivas_mcmasa_gain_umx(
    Decoder_Struct *st_ivas,                                   /* i/o: IVAS decoder structure                            */
    float *data_f[],                                           /* i/o: output signals                                    */
    const int16_t output_frame                                 /* i  : output frame length per channel                   */
);

#endif
void ivas_mcmasa_setNumTransportChannels(
    int16_t* nchan_transport,                                   /* o  : Pointer to number of transport channels to be set */
    int16_t* element_mode,                                      /* o  : Pointer to element mode to be set                 */
@@ -5805,6 +5813,14 @@ void ivas_omasa_modify_masa_energy_ratios(
    float masa_to_total_energy_ratio[MAX_PARAM_SPATIAL_SUBFRAMES][MASA_MAXIMUM_CODING_SUBBANDS]
);

#ifdef NONBE_FIX_1165_STATIC_SCAL_OMASA
void ivas_omasa_gain_umx(
    Decoder_Struct *st_ivas,                                   /* i/o: IVAS decoder structure                   */
    float *data_f[],                                           /* i/o: output signals                           */
    const int16_t output_frame                                 /* i  : output frame length per channel          */
);

#endif

/*----------------------------------------------------------------------------------*
 * TD Binaural Object renderer
+124 −11
Original line number Diff line number Diff line
@@ -1831,18 +1831,33 @@ const int16_t Param_MC_index[MAX_CICP_CHANNELS] =
    0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11
};
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
#define ivas_param_mc_dmx_scal_fac_CICP6_2tc_static     4.f /* orig: (2.0f + 2.f * INV_SQRT2) */
#define ivas_param_mc_dmx_scal_fac_CICP6_2tc_static_inv (1.f / ivas_param_mc_dmx_scal_fac_CICP6_2tc_static)
#endif
const float ivas_param_mc_dmx_fac_CICP6_2tc[12] =
{
    1.0f, 0.0f, INV_SQRT2, INV_SQRT2, 1.0f, 0.0f, /*Lt*/
    0.0f, 1.0f, INV_SQRT2, INV_SQRT2, 0.0f, 1.0f  /*Rt*/
};
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
#define ivas_param_mc_dmx_scal_fac_CICP12_2tc_static     4.f /* orig: (3.0f + 2.f * INV_SQRT2) */
#define ivas_param_mc_dmx_scal_fac_CICP12_2tc_static_inv (1.f / ivas_param_mc_dmx_scal_fac_CICP12_2tc_static)
#endif
const float ivas_param_mc_dmx_fac_CICP12_2tc[16] =
{
    1.0f, 0.0f, INV_SQRT2, INV_SQRT2, 1.0f, 0.0f, 1.0f, 0.0f, /*Lt*/
    0.0f, 1.0f, INV_SQRT2, INV_SQRT2, 0.0f, 1.0f, 0.0f, 1.0f  /*Rt*/
};
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
#define ivas_param_mc_dmx_scal_fac_CICP12_3tc_static     4.f /* orig: (3.0f) */
#define ivas_param_mc_dmx_scal_fac_CICP12_3tc_static_inv (1.f / ivas_param_mc_dmx_scal_fac_CICP12_3tc_static)
#endif
const float ivas_param_mc_dmx_fac_CICP12_3tc[24] =
{
    1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, /*Lt*/
@@ -1850,11 +1865,22 @@ const float ivas_param_mc_dmx_fac_CICP12_3tc[24] =
    0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f  /*Ct*/
};
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
#define ivas_param_mc_dmx_scal_fac_CICP14_2tc_static     4.f /* orig: (3.0f + 2.f * INV_SQRT2) */
#define ivas_param_mc_dmx_scal_fac_CICP14_2tc_static_inv (1.f / ivas_param_mc_dmx_scal_fac_CICP14_2tc_static)
#endif
const float ivas_param_mc_dmx_fac_CICP14_2tc[16] =
{
    1.0f, 0.0f, INV_SQRT2, INV_SQRT2, 1.0f, 0.0f, 1.0f, 0.0f, /*Lt*/
    0.0f, 1.0f, INV_SQRT2, INV_SQRT2, 0.0f, 1.0f, 0.0f, 1.0f  /*Rt*/
};
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
#define ivas_param_mc_dmx_scal_fac_CICP14_3tc_static     4.f /* orig: (3.0f) */
#define ivas_param_mc_dmx_scal_fac_CICP14_3tc_static_inv (1.f / ivas_param_mc_dmx_scal_fac_CICP14_3tc_static)
#endif
const float ivas_param_mc_dmx_fac_CICP14_3tc[24] =
{
    1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, /*Lt*/
@@ -1862,6 +1888,11 @@ const float ivas_param_mc_dmx_fac_CICP14_3tc[24] =
    0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, /*Ct*/
};
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
#define ivas_param_mc_dmx_scal_fac_CICP16_3tc_static     (4.0f)
#define ivas_param_mc_dmx_scal_fac_CICP16_3tc_static_inv (1.f / ivas_param_mc_dmx_scal_fac_CICP16_3tc_static)
#endif
const float ivas_param_mc_dmx_fac_CICP16_3tc[30] =
{
    1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, /*Lt*/
@@ -1869,6 +1900,11 @@ const float ivas_param_mc_dmx_fac_CICP16_3tc[30] =
    0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f  /*Ct*/
};
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
#define ivas_param_mc_dmx_scal_fac_CICP19_3tc_static     4.f /* orig: (5.0f) */
#define ivas_param_mc_dmx_scal_fac_CICP19_3tc_static_inv (1.f / ivas_param_mc_dmx_scal_fac_CICP19_3tc_static)
#endif
const float ivas_param_mc_dmx_fac_CICP19_3tc[36] =
{
    1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, /*Lt*/
@@ -2188,7 +2224,13 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP6_2tc,
        &ivas_param_mc_icc_mapping_CICP6_2tc,
        &ivas_param_mc_dmx_fac_CICP6_2tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP6_2tc[0],
        ivas_param_mc_dmx_scal_fac_CICP6_2tc_static,
        ivas_param_mc_dmx_scal_fac_CICP6_2tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP6_2tc[0]
#endif
    },
    /* CICP6 64000 */
    {
@@ -2199,7 +2241,14 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP6_2tc,
        &ivas_param_mc_icc_mapping_CICP6_2tc,
        &ivas_param_mc_dmx_fac_CICP6_2tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP6_2tc[0],
        ivas_param_mc_dmx_scal_fac_CICP6_2tc_static,
        ivas_param_mc_dmx_scal_fac_CICP6_2tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP6_2tc[0]
#endif
    },
    /* CICP6 80000 */
    {
@@ -2210,7 +2259,13 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP6_2tc,
        &ivas_param_mc_icc_mapping_CICP6_2tc,
        &ivas_param_mc_dmx_fac_CICP6_2tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP6_2tc[0],
        ivas_param_mc_dmx_scal_fac_CICP6_2tc_static,
        ivas_param_mc_dmx_scal_fac_CICP6_2tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP6_2tc[0]
#endif
    },
    /* CICP12 48000 */
    {
@@ -2221,7 +2276,14 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP12_2tc,
        &ivas_param_mc_icc_mapping_CICP12_2tc,
        &ivas_param_mc_dmx_fac_CICP12_2tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP12_2tc[0],
        ivas_param_mc_dmx_scal_fac_CICP12_2tc_static,
        ivas_param_mc_dmx_scal_fac_CICP12_2tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP12_2tc[0]
#endif
    },
    /* CICP12 64000 */
    {
@@ -2232,7 +2294,13 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP12_2tc,
        &ivas_param_mc_icc_mapping_CICP12_2tc,
        &ivas_param_mc_dmx_fac_CICP12_2tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP12_2tc[0],
        ivas_param_mc_dmx_scal_fac_CICP12_2tc_static,
        ivas_param_mc_dmx_scal_fac_CICP12_2tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP12_2tc[0]
#endif
    },
    /* CICP12 80000 */
    {
@@ -2243,7 +2311,13 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP12_2tc,
        &ivas_param_mc_icc_mapping_CICP12_2tc,
        &ivas_param_mc_dmx_fac_CICP12_2tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP12_2tc[0],
        ivas_param_mc_dmx_scal_fac_CICP12_2tc_static,
        ivas_param_mc_dmx_scal_fac_CICP12_2tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP12_2tc[0]
#endif
    },
    /* CICP12 96000 */
    {
@@ -2254,7 +2328,13 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP12_3tc,
        &ivas_param_mc_icc_mapping_CICP12_3tc,
        &ivas_param_mc_dmx_fac_CICP12_3tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP12_3tc[0],
        ivas_param_mc_dmx_scal_fac_CICP12_3tc_static,
        ivas_param_mc_dmx_scal_fac_CICP12_3tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP12_3tc[0]
#endif
    },
    /* CICP14 48000 */
    {
@@ -2265,7 +2345,14 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP14_2tc,
        &ivas_param_mc_icc_mapping_CICP14_2tc,
        &ivas_param_mc_dmx_fac_CICP14_2tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP14_2tc[0],
        ivas_param_mc_dmx_scal_fac_CICP14_2tc_static,
        ivas_param_mc_dmx_scal_fac_CICP14_2tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP14_2tc[0]
#endif
    },
    /* CICP14 64000 */
    {
@@ -2276,7 +2363,13 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP14_2tc,
        &ivas_param_mc_icc_mapping_CICP14_2tc,
        &ivas_param_mc_dmx_fac_CICP14_2tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP14_2tc[0],
        ivas_param_mc_dmx_scal_fac_CICP14_2tc_static,
        ivas_param_mc_dmx_scal_fac_CICP14_2tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP14_2tc[0]
#endif
    },
    /* CICP14 80000 */
    {
@@ -2287,7 +2380,13 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP14_2tc,
        &ivas_param_mc_icc_mapping_CICP14_2tc,
        &ivas_param_mc_dmx_fac_CICP14_2tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP14_2tc[0],
        ivas_param_mc_dmx_scal_fac_CICP14_2tc_static,
        ivas_param_mc_dmx_scal_fac_CICP14_2tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP14_2tc[0]
#endif
    },
    /* CICP14 96000 */
    {
@@ -2298,7 +2397,14 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP14_3tc,
        &ivas_param_mc_icc_mapping_CICP14_3tc,
        &ivas_param_mc_dmx_fac_CICP14_3tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP14_3tc[0],
        ivas_param_mc_dmx_scal_fac_CICP14_3tc_static,
        ivas_param_mc_dmx_scal_fac_CICP14_3tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP14_3tc[0]
#endif
    },
    /* CICP16 96000 */
    {
@@ -2309,7 +2415,13 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP16_3tc,
        &ivas_param_mc_icc_mapping_CICP16_3tc,
        &ivas_param_mc_dmx_fac_CICP16_3tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP16_3tc[0],
        ivas_param_mc_dmx_scal_fac_CICP16_3tc_static,
        ivas_param_mc_dmx_scal_fac_CICP16_3tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP16_3tc[0]
#endif
    },
    /* CICP16 128000 */
    {
@@ -2320,7 +2432,13 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP16_3tc,
        &ivas_param_mc_icc_mapping_CICP16_3tc,
        &ivas_param_mc_dmx_fac_CICP16_3tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP16_3tc[0],
        ivas_param_mc_dmx_scal_fac_CICP16_3tc_static,
        ivas_param_mc_dmx_scal_fac_CICP16_3tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP16_3tc[0]
#endif
    },
    /* CICP19 128000 */
    {
@@ -2331,19 +2449,14 @@ const PARAM_MC_CONF ivas_param_mc_conf[PARAM_MC_NUM_CONFIGS] =
        &ivas_param_mc_ild_mapping_CICP19_3tc,
        &ivas_param_mc_icc_mapping_CICP19_3tc,
        &ivas_param_mc_dmx_fac_CICP19_3tc[0],
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
        &ivas_param_mc_ild_fac_CICP19_3tc[0],
        ivas_param_mc_dmx_scal_fac_CICP19_3tc_static,
        ivas_param_mc_dmx_scal_fac_CICP19_3tc_static_inv
#else
        &ivas_param_mc_ild_fac_CICP19_3tc[0]
#endif
    },
    /* CICP19 160000 */
    {
        MC_LS_SETUP_7_1_4,
        12,
        4,
        IVAS_160k,
        &ivas_param_mc_ild_mapping_CICP19_4tc,
        &ivas_param_mc_icc_mapping_CICP19_4tc,
        &ivas_param_mc_dmx_fac_CICP19_4tc[0],
        &ivas_param_mc_ild_fac_CICP19_4tc[0]
    }
};
const float ivas_param_mc_quant_ild_5d1_48[PARAM_MC_SZ_ILD_QUANTIZER_4BITS] =
+29 −0
Original line number Diff line number Diff line
@@ -576,6 +576,10 @@ typedef struct ivas_param_mc_conf_struct /* structure for ROM Table */
    const PARAM_MC_ICC_MAPPING *icc_mapping_conf;
    const float *dmx_fac;
    const float *ild_factors;
#ifdef NONBE_FIX_1165_STATIC_SCAL_PARAMMC
    float static_dmx_fac;
    float static_dmx_fac_inv;
#endif

} PARAM_MC_CONF;

@@ -787,5 +791,30 @@ typedef struct ivas_param_ism_data_structure

} PARAM_ISM_CONFIG_DATA, *PARAM_ISM_CONFIG_HANDLE;

#ifdef NONBE_FIX_1165_APPLY_LIMITER_ON_ENCODER_DMX


/*----------------------------------------------------------------------------------*
 * Limiter structure
 *----------------------------------------------------------------------------------*/

typedef struct
{
    int16_t max_num_channels;
    int16_t num_channels;
    float **channel_ptrs;
    int32_t sampling_rate;
    float gain;
    float release_heuristic;
    float attack_constant;
    int16_t strong_saturation_count;
#ifdef DEBUGGING
    int32_t cnt_frames_limited; /* counter of frames in which the limiter is applied */
#endif

} IVAS_LIMITER, *IVAS_LIMITER_HANDLE;

#endif


#endif /* IVAS_STAT_COM */
Loading