Mercurial > libavcodec.hg
comparison wma.h @ 10314:ab687351bfef libavcodec
WMA: store level_table as floats, use type punning for sign flip in decode
author | mru |
---|---|
date | Tue, 29 Sep 2009 10:38:34 +0000 |
parents | 38ab367d4231 |
children | 34a65026fa06 |
comparison
equal
deleted
inserted
replaced
10313:f7376a522a7e | 10314:ab687351bfef |
---|---|
91 | 91 |
92 /* there are two possible tables for spectral coefficients */ | 92 /* there are two possible tables for spectral coefficients */ |
93 //FIXME the following 3 tables should be shared between decoders | 93 //FIXME the following 3 tables should be shared between decoders |
94 VLC coef_vlc[2]; | 94 VLC coef_vlc[2]; |
95 uint16_t *run_table[2]; | 95 uint16_t *run_table[2]; |
96 uint16_t *level_table[2]; | 96 float *level_table[2]; |
97 uint16_t *int_table[2]; | 97 uint16_t *int_table[2]; |
98 const CoefVLCTable *coef_vlcs[2]; | 98 const CoefVLCTable *coef_vlcs[2]; |
99 /* frame info */ | 99 /* frame info */ |
100 int frame_len; ///< frame length in samples | 100 int frame_len; ///< frame length in samples |
101 int frame_len_bits; ///< frame_len = 1 << frame_len_bits | 101 int frame_len_bits; ///< frame_len = 1 << frame_len_bits |
151 int ff_wma_total_gain_to_bits(int total_gain); | 151 int ff_wma_total_gain_to_bits(int total_gain); |
152 int ff_wma_end(AVCodecContext *avctx); | 152 int ff_wma_end(AVCodecContext *avctx); |
153 unsigned int ff_wma_get_large_val(GetBitContext* gb); | 153 unsigned int ff_wma_get_large_val(GetBitContext* gb); |
154 int ff_wma_run_level_decode(AVCodecContext* avctx, GetBitContext* gb, | 154 int ff_wma_run_level_decode(AVCodecContext* avctx, GetBitContext* gb, |
155 VLC *vlc, | 155 VLC *vlc, |
156 const uint16_t *level_table, const uint16_t *run_table, | 156 const float *level_table, const uint16_t *run_table, |
157 int version, WMACoef *ptr, int offset, | 157 int version, WMACoef *ptr, int offset, |
158 int num_coefs, int block_len, int frame_len_bits, | 158 int num_coefs, int block_len, int frame_len_bits, |
159 int coef_nb_bits); | 159 int coef_nb_bits); |
160 | 160 |
161 #endif /* AVCODEC_WMA_H */ | 161 #endif /* AVCODEC_WMA_H */ |