]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - wmadec_filter.c
Makefile: Simplify option parsing for verbose build.
[paraslash.git] / wmadec_filter.c
index 5106724d90778097c80fa3a1e6a44578a3770ac6..20f9df44b92b35061980d857f86c9ccee40b4bcd 100644 (file)
@@ -71,9 +71,10 @@ struct private_wmadec_data {
        int use_exp_vlc;
        /** Whether perceptual noise is added. */
        int use_noise_coding;
+       /** Depends on number of the bits per second and the frame length. */
        int byte_offset_bits;
+       /** Only used if use_exp_vlc is true. */
        struct vlc exp_vlc;
-       int exponent_sizes[BLOCK_NB_SIZES];
        uint16_t exponent_bands[BLOCK_NB_SIZES][25];
        /** The index of the first coef in high band. */
        int high_band_start[BLOCK_NB_SIZES];
@@ -227,8 +228,9 @@ static void compute_scale_factor_band_sizes(struct private_wmadec_data *pwd,
        const uint8_t *table;
 
        for (k = 0; k < pwd->nb_block_sizes; k++) {
-               block_len = pwd->frame_len >> k;
+               int exponent_size;
 
+               block_len = pwd->frame_len >> k;
                table = NULL;
                a = pwd->frame_len_bits - BLOCK_MIN_BITS - k;
                if (a < 3) {
@@ -243,7 +245,7 @@ static void compute_scale_factor_band_sizes(struct private_wmadec_data *pwd,
                        n = *table++;
                        for (i = 0; i < n; i++)
                                pwd->exponent_bands[k][i] = table[i];
-                       pwd->exponent_sizes[k] = n;
+                       exponent_size = n;
                } else {
                        j = 0;
                        lpos = 0;
@@ -260,7 +262,7 @@ static void compute_scale_factor_band_sizes(struct private_wmadec_data *pwd,
                                        break;
                                lpos = pos;
                        }
-                       pwd->exponent_sizes[k] = j;
+                       exponent_size = j;
                }
 
                /* max number of coefs */
@@ -268,7 +270,7 @@ static void compute_scale_factor_band_sizes(struct private_wmadec_data *pwd,
                /* high freq computation */
                pwd->high_band_start[k] = (int) ((block_len * 2 * high_freq)
                        / ahi->sample_rate + 0.5);
-               n = pwd->exponent_sizes[k];
+               n = exponent_size;
                j = 0;
                pos = 0;
                for (i = 0; i < n; i++) {
@@ -502,9 +504,8 @@ static int wma_decode_init(char *initial_buf, int len, struct private_wmadec_dat
 
        if (pwd->use_exp_vlc) {
                PARA_INFO_LOG("using exp_vlc\n");
-               init_vlc(&pwd->exp_vlc, EXPVLCBITS,
-               sizeof(wma_scale_huffbits), wma_scale_huffbits,
-               wma_scale_huffcodes, 4);
+               init_vlc(&pwd->exp_vlc, EXPVLCBITS, sizeof(wma_scale_huffbits),
+                       wma_scale_huffbits, wma_scale_huffcodes, 4);
        } else {
                PARA_INFO_LOG("using curve\n");
                wma_lsp_to_curve_init(pwd, pwd->frame_len);
@@ -1266,7 +1267,7 @@ success:
 err:
        assert(ret < 0);
        t->error = ret;
-       btr_remove_node(btrn);
+       btr_remove_node(&fn->btrn);
 }
 
 static void wmadec_open(struct filter_node *fn)