Mercurial > libavcodec.hg
diff wma.h @ 9868:5cc32c474caf libavcodec
Introduce WMACoef typedef for decoded coefficients
and change default type to float so that the run level
decoding functionality can be shared with wmapro
author | faust3 |
---|---|
date | Sat, 20 Jun 2009 09:05:28 +0000 |
parents | eb5916527064 |
children | 1f6b569bf958 |
line wrap: on
line diff
--- a/wma.h Fri Jun 19 09:56:35 2009 +0000 +++ b/wma.h Sat Jun 20 09:05:28 2009 +0000 @@ -51,6 +51,8 @@ #define VLCBITS 9 #define VLCMAX ((22+VLCBITS-1)/VLCBITS) +typedef float WMACoef; ///< type for decoded coefficients, int16_t would be enough for wma 1/2 + typedef struct CoefVLCTable { int n; ///< total number of codes int max_level; @@ -111,7 +113,7 @@ int exponents_bsize[MAX_CHANNELS]; ///< log2 ratio frame/exp. length DECLARE_ALIGNED_16(float, exponents[MAX_CHANNELS][BLOCK_MAX_SIZE]); float max_exponent[MAX_CHANNELS]; - int16_t coefs1[MAX_CHANNELS][BLOCK_MAX_SIZE]; + WMACoef coefs1[MAX_CHANNELS][BLOCK_MAX_SIZE]; DECLARE_ALIGNED_16(float, coefs[MAX_CHANNELS][BLOCK_MAX_SIZE]); DECLARE_ALIGNED_16(FFTSample, output[BLOCK_MAX_SIZE * 2]); MDCTContext mdct_ctx[BLOCK_NB_SIZES]; @@ -151,7 +153,7 @@ int ff_wma_run_level_decode(AVCodecContext* avctx, GetBitContext* gb, VLC *vlc, const uint16_t *level_table, const uint16_t *run_table, - int version, int16_t *ptr, int offset, + int version, WMACoef *ptr, int offset, int num_coefs, int block_len, int frame_len_bits, int coef_nb_bits);