Commit a87fe63f authored by PLAINSI's avatar PLAINSI
Browse files

More cleanup

parent 324938bd
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -1335,11 +1335,18 @@ typedef struct {
    unsigned short length[81];
} HUFF_ELEMENTS;

#ifdef FIX_891_PARAMUPMIX_CLEANUP
typedef struct {
    HUFF_ELEMENTS df0;
    HUFF_ELEMENTS df;
} HUFF_TABLE;
#else
typedef struct {
    HUFF_ELEMENTS df0;
    HUFF_ELEMENTS df;
    HUFF_ELEMENTS dt;
} HUFF_TABLE;
#endif

typedef enum {
    ALPHA,
+45 −52
Original line number Diff line number Diff line
@@ -1360,34 +1360,42 @@ static void huffman_decode(
    int32_t *vq )
{
    const int16_t( *huff_node_table )[2];
    int16_t iv, bdt, nquant, offset;

#ifdef FIX_891_PARAMUPMIX_CLEANUP
    int16_t iv, nquant, offset;
    nquant = 0;
    switch ( parType )
    {
#ifdef FIX_891_PARAMUPMIX_CLEANUP
        case ALPHA:
            nquant = ivas_mc_paramupmix_alpha_quant_table.nquant;
            break;
        case BETA:
            nquant = ivas_mc_paramupmix_beta_quant_table[0].nquant;
            break;
        default:
            assert( 0 );
    }

    offset = nquant - 1; /* range of df [-(nquant - 1), nquant - 1] */
#else
    int16_t iv, bdt, nquant, offset;
    nquant = 0;
    switch ( parType )
    {
        case ALPHA:
            nquant = ivas_mc_paramupmix_alpha_quant_table[quant_type].nquant;
            break;
        case BETA:
            nquant = ivas_mc_paramupmix_beta_quant_table[quant_type][0].nquant;
            break;
#endif
        default:
            assert( 0 );
    }

    offset = nquant - 1; /* range of df/dt [-(nquant - 1), nquant - 1] */
#endif

#ifdef FIX_891_PARAMUPMIX_CLEANUP
    bdt = st->bit_stream[st->next_bit_pos];
    st->next_bit_pos++;
#else
    if ( bNoDt )
@@ -1400,76 +1408,61 @@ static void huffman_decode(
        st->next_bit_pos++;
    }
#endif
    if ( bdt )
    { /* Get dt */
#ifdef FIX_891_PARAMUPMIX_CLEANUP
    switch ( parType )
    {
#ifdef FIX_891_PARAMUPMIX_CLEANUP
        case ALPHA:
                huff_node_table = ivas_mc_paramupmix_huff_nodes_dt.alpha;
            huff_node_table = ivas_mc_paramupmix_huff_nodes_df0.alpha;
            break;
        case BETA:
                huff_node_table = ivas_mc_paramupmix_huff_nodes_dt.beta;
            huff_node_table = ivas_mc_paramupmix_huff_nodes_df0.beta;
            break;
        default:
            huff_node_table = NULL;
            assert( 0 );
    }
        for ( iv = 0; iv < IVAS_MAX_NUM_BANDS; iv++ )
    vq[0] = huff_read( st, huff_node_table );

    switch ( parType )
    {
            vq[iv] = huff_read( st, huff_node_table ) + vq[iv] - offset;
        }
#else
        case ALPHA:
                huff_node_table = ivas_mc_paramupmix_huff_nodes_dt.alpha[quant_type];
            huff_node_table = ivas_mc_paramupmix_huff_nodes_df.alpha;
            break;
        case BETA:
                huff_node_table = ivas_mc_paramupmix_huff_nodes_dt.beta[quant_type];
            huff_node_table = ivas_mc_paramupmix_huff_nodes_df.beta;
            break;
        default:
                huff_node_table = NULL;
            assert( 0 );
    }
        for ( iv = ivStart; iv < nv; iv++ )

    for ( iv = 1; iv < IVAS_MAX_NUM_BANDS; iv++ )
    {
            vq[iv] = huff_read( st, huff_node_table ) + vq[iv] - offset;
        }
#endif
        vq[iv] = huff_read( st, huff_node_table ) + vq[iv - 1] - offset;
    }
    else /* Get f0, df */
    {
#else
    if ( bdt )
    { /* Get dt */
        switch ( parType )
        {
#ifdef FIX_891_PARAMUPMIX_CLEANUP
            case ALPHA:
                huff_node_table = ivas_mc_paramupmix_huff_nodes_df0.alpha;
                huff_node_table = ivas_mc_paramupmix_huff_nodes_dt.alpha[quant_type];
                break;
            case BETA:
                huff_node_table = ivas_mc_paramupmix_huff_nodes_df0.beta;
                huff_node_table = ivas_mc_paramupmix_huff_nodes_dt.beta[quant_type];
                break;
            default:
                huff_node_table = NULL;
                assert( 0 );
        }
        vq[0] = huff_read( st, huff_node_table );

        switch ( parType )
        for ( iv = ivStart; iv < nv; iv++ )
        {
            case ALPHA:
                huff_node_table = ivas_mc_paramupmix_huff_nodes_df.alpha;
                break;
            case BETA:
                huff_node_table = ivas_mc_paramupmix_huff_nodes_df.beta;
                break;
            default:
                assert( 0 );
            vq[iv] = huff_read( st, huff_node_table ) + vq[iv] - offset;
        }

        for ( iv = 1; iv < IVAS_MAX_NUM_BANDS; iv++ )
        {
            vq[iv] = huff_read( st, huff_node_table ) + vq[iv - 1] - offset;
    }
#else
    else /* Get f0, df */
    {
        switch ( parType )
        {
            case ALPHA:
                huff_node_table = ivas_mc_paramupmix_huff_nodes_df0.alpha[quant_type];
                break;
@@ -1498,8 +1491,8 @@ static void huffman_decode(
        {
            vq[iv] = huff_read( st, huff_node_table ) + vq[iv - 1] - offset;
        }
#endif
    }
#endif

    return;
}
+10 −7
Original line number Diff line number Diff line
@@ -57,7 +57,7 @@ static void ivas_mc_paramupmix_dmx( MC_PARAMUPMIX_ENC_HANDLE hMCParamUpmix, floa

static void ivas_mc_paramupmix_param_est_enc( MC_PARAMUPMIX_ENC_HANDLE hMCParamUpmix, float *input_frame_t[], const int16_t input_frame, float alphas[MC_PARAMUPMIX_COMBINATIONS][IVAS_MAX_NUM_BANDS], float betas[MC_PARAMUPMIX_COMBINATIONS][IVAS_MAX_NUM_BANDS] );
#ifdef FIX_891_PARAMUPMIX_CLEANUP
static void get_huff_table( const PAR_TYPE par_type, HUFF_TAB *df0, HUFF_TAB *df, HUFF_TAB *dt );
static void get_huff_table( const PAR_TYPE par_type, HUFF_TAB *df0, HUFF_TAB *df );
#else
static void get_huff_table( const PAR_TYPE par_type, const QUANT_TYPE quant_type, HUFF_TAB *df0, HUFF_TAB *df, HUFF_TAB *dt );
#endif
@@ -374,10 +374,13 @@ static void get_huff_table(
    const PAR_TYPE par_type,
#ifndef FIX_891_PARAMUPMIX_CLEANUP
    const QUANT_TYPE quant_type,
#endif
    HUFF_TAB *df0,
    HUFF_TAB *df,
    HUFF_TAB *dt )
#else
    HUFF_TAB *df0,
    HUFF_TAB *df )
#endif
{
    switch ( par_type )
    {
@@ -387,16 +390,12 @@ static void get_huff_table(
            df0->length = huff_alpha_table.df0.length;
            df->value = huff_alpha_table.df.value;
            df->length = huff_alpha_table.df.length;
            dt->value = huff_alpha_table.dt.value;
            dt->length = huff_alpha_table.dt.length;
            break;
        case BETA:
            df0->value = huff_beta_table.df0.value;
            df0->length = huff_beta_table.df0.length;
            df->value = huff_beta_table.df.value;
            df->length = huff_beta_table.df.length;
            dt->value = huff_beta_table.dt.value;
            dt->length = huff_beta_table.dt.length;
            break;
#else
        case ALPHA:
@@ -463,10 +462,14 @@ static void huffman_encode(
#endif
    int32_t icode;
    int16_t offset;
#ifdef FIX_891_PARAMUPMIX_CLEANUP
    HUFF_TAB df0, df;
#else
    HUFF_TAB df0, df, dt;
#endif

#ifdef FIX_891_PARAMUPMIX_CLEANUP
    get_huff_table( parType, &df0, &df, &dt );
    get_huff_table( parType, &df0, &df );
#else
    get_huff_table( parType, quant_type, &df0, &df, &dt );
#endif
+0 −22
Original line number Diff line number Diff line
@@ -750,22 +750,6 @@ const HUFF_TABLE huff_alpha_table =
               9,       10,       10,       11,       11,       12,       12,       12,       13,       13, 
              14,       15,       15,       16,       16,       17,       16,       16,       17,       16, 
              16,       17,       17,       17,       13 }
    },
    {  /* dt */ 
      { 0x00eeee, 0x03b3ee, 0x03b3f6, 0x03b3fc, 0x01d9bc, 0x01d9bd, 0x01d9b2, 0x03b3fe, 0x01d9be, 0x01d9f6, 
        0x01d9fc, 0x00ecda, 0x00ecfa, 0x00eeef, 0x00766e, 0x007776, 0x003b3a, 0x003bba, 0x001d9a, 0x001ddc, 
        0x001dde, 0x000eec, 0x000764, 0x000772, 0x0003b0, 0x0003b8, 0x0001da, 0x0001de, 0x000072, 0x000038, 
        0x00001e, 0x000006, 0x000000, 0x000002, 0x00001f, 0x00003a, 0x000073, 0x0001df, 0x0001db, 0x0003ba, 
        0x0003b1, 0x000773, 0x000765, 0x000eed, 0x000ecc, 0x001d9e, 0x001d9c, 0x003bbe, 0x003b3b, 0x00777e, 
        0x00767c, 0x00eefe, 0x00ecfc, 0x00ecd8, 0x01d9fd, 0x01d9fa, 0x01d9bf, 0x01d9b6, 0x01d9b3, 0x03b3fd, 
        0x01d9b7, 0x03b3ff, 0x03b3ef, 0x03b3f7, 0x00eeff },
      {       16,       18,       18,       18,       17,       17,       17,       18,       17,       17, 
              17,       16,       16,       16,       15,       15,       14,       14,       13,       13, 
              13,       12,       11,       11,       10,       10,        9,        9,        7,        6, 
               5,        3,        1,        2,        5,        6,        7,        9,        9,       10, 
              10,       11,       11,       12,       12,       13,       13,       14,       14,       15, 
              15,       16,       16,       16,       17,       17,       17,       17,       17,       18, 
              17,       18,       18,       18,       16 }
    }
};

@@ -780,12 +764,6 @@ const HUFF_TABLE huff_beta_table =
        0x00000e, 0x00007f, 0x0000fb, 0x0001f3, 0x0001f0, 0x0007c6, 0x001f1f },
      {       13,       12,       10,        9,        8,        7,        5,        3,        1,        2, 
               4,        7,        8,        9,        9,       11,       13 }
    },
    {  /* dt */ 
      { 0x007dfe, 0x003efe, 0x000fbe, 0x0003ee, 0x0000fa, 0x00007e, 0x00001e, 0x000006, 0x000000, 0x000002, 
        0x00000e, 0x00007f, 0x00007c, 0x0001f6, 0x0007de, 0x001f7e, 0x007dff },
      {       15,       14,       12,       10,        8,        7,        5,        3,        1,        2, 
               4,        7,        7,        9,       11,       13,       15 }
    }
};
#else