Commit 61ee7064 authored by Dominik Weckbecker's avatar Dominik Weckbecker 💬
Browse files

fix MASA non-BE-ness

parent ba1338a5
Loading
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -1203,10 +1203,10 @@ enum
#define MASA_LIMIT_NO_BANDS_SUR_COH             8
#define MINIMUM_BIT_BUDGET_NORMAL_META          100
#ifdef HODIRAC
#define DIFF_DFRATIO_2BIT_LIMIT_IDX             4
#else
#define DIFF_DFRATIO_2BIT_LIMIT_IDX             3
#define DIFF_DFRATIO_2BIT_LIMIT_IDX_HODIRAC     4
#endif
#define DIFF_DFRATIO_2BIT_LIMIT_IDX             3

#define DIFF_DFRATIO_1BIT_LIMIT_IDX             6
#define DIFF_EC_HUFF_BAND_LIMIT                 8
#define DIFF_EC_HUFF_GR0_LIMIT                  8
+7 −0
Original line number Diff line number Diff line
@@ -4708,6 +4708,13 @@ void ivas_set_qmetadata_maxbit_req(
    const IVAS_FORMAT ivas_format                               /* i  : IVAS format                                     */
);

#ifdef HODIRAC
/*! r: Bits to be used for quantizing distribution ratio of direct-to-total ratios */
int16_t ivas_get_df_ratio_bits_hodirac(
    int16_t index_diff                                          /* i  : Index of quantized diffuse-to-total ratio       */
);
#endif

/*! r: Bits to be used for quantizing distribution ratio of direct-to-total ratios */
int16_t ivas_get_df_ratio_bits(
    int16_t index_diff                                          /* i  : Index of quantized diffuse-to-total ratio       */
+24 −0
Original line number Diff line number Diff line
@@ -626,6 +626,30 @@ void ivas_qmetadata_direction_vector_to_azimuth_elevation(
    return;
}

#ifdef HODIRAC
/*! r: bits to be used for quantizing ratio of ratios */
int16_t ivas_get_df_ratio_bits_hodirac(
    int16_t index_diff /* i  : index of quantized diffuse-to-total ratio */
)
{
    int16_t dfRatio_bits;

    if ( index_diff >= DIFF_DFRATIO_1BIT_LIMIT_IDX )
    {
        dfRatio_bits = 1;
    }
    else if ( index_diff >= DIFF_DFRATIO_2BIT_LIMIT_IDX_HODIRAC )
    {
        dfRatio_bits = 2;
    }
    else
    {
        dfRatio_bits = 3;
    }

    return dfRatio_bits;
}
#endif

/*---------------------------------------------------------------
 * ivas_get_df_ratio_bits()
+19 −10
Original line number Diff line number Diff line
@@ -1116,7 +1116,16 @@ static void ivas_qmetadata_quantize_diffuseness_nrg_ratios(
            index_diff = masa_sq( diffRatio, diffuseness_thresholds, DIRAC_DIFFUSE_LEVELS );
            diffRatioQ = diffuseness_reconstructions[index_diff];

#ifdef HODIRAC
            if ( hodirac )
            {
                dfRatio_bits = ivas_get_df_ratio_bits_hodirac( index_diff );
            }
            else
#endif
            {
                dfRatio_bits = ivas_get_df_ratio_bits( index_diff );
            }

            dfRatioBits[dir2band] = dfRatio_bits;