home *** CD-ROM | disk | FTP | other *** search
/ The Best of Windows 95.com 1996 September / WIN95_09964.iso / sound / mpw32-5s.zip / LAYER3.H < prev    next >
C/C++ Source or Header  |  1996-07-27  |  1KB  |  47 lines

  1. #ifndef LAYERIII_H
  2. #define LAYERIII_H
  3.  
  4. #include "all.h"
  5. #include "l3type.h"
  6. #include "ibitstr.h"
  7. #include "obuffer.h"
  8. #include "bit_res.h"
  9. #include "header.h"
  10. #include "synfilt.h"
  11.  
  12. #define SSLIMIT 18
  13. #define SBLIMIT 32
  14.  
  15. // Layer III scalefactors
  16. void III_get_scale_factors(III_scalefac_t *scalefac,
  17.                                     III_side_info_t *si,
  18.                                     Bit_Reserve *br,
  19.                                     int gr, int ch);
  20.  
  21. void III_hufman_decode(int is[SBLIMIT][SSLIMIT], III_side_info_t *si, int ch, int gr,
  22.                                 int part2_start, Header *header, Bit_Reserve *br);
  23.  
  24. void III_dequantize_sample(int is[SBLIMIT][SSLIMIT], real xr[SBLIMIT][SSLIMIT], III_scalefac_t *scalefac,
  25.                                     gr_info_s *gr_info, int ch, Header *header);
  26.  
  27. void III_reorder (real xr[SBLIMIT][SSLIMIT], real ro[SBLIMIT][SSLIMIT],
  28.                         gr_info_s *gr_info, Header *header);
  29.  
  30. void III_stereo(real xr[2][SBLIMIT][SSLIMIT], real lr[2][SBLIMIT][SSLIMIT],
  31.                      III_scalefac_t *scalefac, gr_info_s *gr_info, Header *header);
  32.  
  33. void III_antialias(real xr[SBLIMIT][SSLIMIT], real hybridIn[SBLIMIT][SSLIMIT],
  34.                          gr_info_s *gr_info);
  35.  
  36. void inv_mdct(real *in, real *out, int block_type);
  37.  
  38. void III_hybrid(real *fsIn, real *tsOut, int sb, int ch,
  39.                      gr_info_s *gr_info);
  40.  
  41. void l3decoder(Ibitstream *stream, Header *header, Bit_Reserve *br,
  42.                     III_side_info_t *pIII_side_info, III_scalefac_t *pIII_scalefac,
  43.                     SynthesisFilter *filter1, SynthesisFilter *filter2,
  44.                     Obuffer *buffer);
  45.  
  46. #endif
  47.