X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=wmadec_filter.c;h=b96f1460f45c77928214a884195d85b4eff04a56;hp=7b4b1a28183d0b242eae01c7dafc8b799eb4dc17;hb=a61e862450dc1e74394bf5bbf7002d9947f98d31;hpb=b6fb7ef023664c3276c8113f4a3622e9f09a1430 diff --git a/wmadec_filter.c b/wmadec_filter.c index 7b4b1a28..b96f1460 100644 --- a/wmadec_filter.c +++ b/wmadec_filter.c @@ -15,8 +15,6 @@ * This decoder handles Microsoft Windows Media Audio data version 2. */ -#define _XOPEN_SOURCE 600 - #include #include #include @@ -99,8 +97,6 @@ struct private_wmadec_data { int block_len; /** Current position in frame. */ int block_pos; - /** True if mid/side stereo mode. */ - uint8_t ms_stereo; /** True if channel is coded. */ uint8_t channel_coded[MAX_CHANNELS]; /** log2 ratio frame/exp. length. */ @@ -798,6 +794,7 @@ static int wma_decode_block(struct private_wmadec_data *pwd) int ret, n, v, ch, code, bsize; int coef_nb_bits, total_gain; int nb_coefs[MAX_CHANNELS]; + bool ms_stereo = false; /* mid/side stereo mode */ /* compute current block length */ if (pwd->ahi.use_variable_block_len) { @@ -835,7 +832,7 @@ static int wma_decode_block(struct private_wmadec_data *pwd) return -E_INCOHERENT_BLOCK_LEN; if (pwd->ahi.channels == 2) - pwd->ms_stereo = get_bit(&pwd->gb); + ms_stereo = get_bit(&pwd->gb); v = 0; for (ch = 0; ch < pwd->ahi.channels; ch++) { int a = get_bit(&pwd->gb); @@ -901,7 +898,7 @@ static int wma_decode_block(struct private_wmadec_data *pwd) * special VLC tables are used for ms stereo because there is * potentially less energy there */ - tindex = (ch == 1 && pwd->ms_stereo); + tindex = ch == 1 && ms_stereo; coef_vlc = &pwd->coef_vlc[tindex]; run_table = pwd->run_table[tindex]; level_table = pwd->level_table[tindex]; @@ -936,7 +933,7 @@ static int wma_decode_block(struct private_wmadec_data *pwd) } } compute_mdct_coefficients(pwd, bsize, total_gain, nb_coefs); - if (pwd->ms_stereo && pwd->channel_coded[1]) { + if (ms_stereo && pwd->channel_coded[1]) { float a, b; int i; /* @@ -964,7 +961,7 @@ next: n4 = pwd->block_len / 2; if (pwd->channel_coded[ch]) imdct(pwd->mdct_ctx[bsize], pwd->output, pwd->coefs[ch]); - else if (!(pwd->ms_stereo && ch == 1)) + else if (!(ms_stereo && ch == 1)) memset(pwd->output, 0, sizeof(pwd->output)); /* multiply by the window and add in the frame */