Mercurial > libavcodec.hg
comparison dca.c @ 8077:574a0dcc4488 libavcodec
Fix selection of quant step table
author | banan |
---|---|
date | Tue, 28 Oct 2008 14:50:46 +0000 |
parents | 6bc70b15451d |
children | c23f2088d7c0 |
comparison
equal
deleted
inserted
replaced
8076:b33be95359db | 8077:574a0dcc4488 |
---|---|
97 int sample_blocks; ///< number of PCM sample blocks | 97 int sample_blocks; ///< number of PCM sample blocks |
98 int frame_size; ///< primary frame byte size | 98 int frame_size; ///< primary frame byte size |
99 int amode; ///< audio channels arrangement | 99 int amode; ///< audio channels arrangement |
100 int sample_rate; ///< audio sampling rate | 100 int sample_rate; ///< audio sampling rate |
101 int bit_rate; ///< transmission bit rate | 101 int bit_rate; ///< transmission bit rate |
102 int bit_rate_index; ///< transmission bit rate index | |
102 | 103 |
103 int downmix; ///< embedded downmix enabled | 104 int downmix; ///< embedded downmix enabled |
104 int dynrange; ///< embedded dynamic range flag | 105 int dynrange; ///< embedded dynamic range flag |
105 int timestamp; ///< embedded time stamp flag | 106 int timestamp; ///< embedded time stamp flag |
106 int aux_data; ///< auxiliary data flag | 107 int aux_data; ///< auxiliary data flag |
245 return -1; | 246 return -1; |
246 s->amode = get_bits(&s->gb, 6); | 247 s->amode = get_bits(&s->gb, 6); |
247 s->sample_rate = dca_sample_rates[get_bits(&s->gb, 4)]; | 248 s->sample_rate = dca_sample_rates[get_bits(&s->gb, 4)]; |
248 if (!s->sample_rate) | 249 if (!s->sample_rate) |
249 return -1; | 250 return -1; |
250 s->bit_rate = dca_bit_rates[get_bits(&s->gb, 5)]; | 251 s->bit_rate_index; = get_bits(&s->gb, 5); |
252 s->bit_rate = dca_bit_rates[s->bit_rate_index]; | |
251 if (!s->bit_rate) | 253 if (!s->bit_rate) |
252 return -1; | 254 return -1; |
253 | 255 |
254 s->downmix = get_bits(&s->gb, 1); | 256 s->downmix = get_bits(&s->gb, 1); |
255 s->dynrange = get_bits(&s->gb, 1); | 257 s->dynrange = get_bits(&s->gb, 1); |
850 /* | 852 /* |
851 * Audio data | 853 * Audio data |
852 */ | 854 */ |
853 | 855 |
854 /* Select quantization step size table */ | 856 /* Select quantization step size table */ |
855 if (s->bit_rate == 0x1f) | 857 if (s->bit_rate_index == 0x1f) |
856 quant_step_table = lossless_quant_d; | 858 quant_step_table = lossless_quant_d; |
857 else | 859 else |
858 quant_step_table = lossy_quant_d; | 860 quant_step_table = lossy_quant_d; |
859 | 861 |
860 for (k = 0; k < s->prim_channels; k++) { | 862 for (k = 0; k < s->prim_channels; k++) { |