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);