mdct.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. /********************************************************************
  2. * *
  3. * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
  4. * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
  5. * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH *
  6. * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
  7. * *
  8. * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2000 *
  9. * by Monty <monty@xiph.org> and the XIPHOPHORUS Company *
  10. * http://www.xiph.org/ *
  11. * *
  12. ********************************************************************
  13. function: modified discrete cosine transform prototypes
  14. last mod: $Id: mdct.h,v 1.12.2.1 2000/11/04 06:21:45 xiphmont Exp $
  15. ********************************************************************/
  16. #ifndef _OGG_mdct_H_
  17. #define _OGG_mdct_H_
  18. #include "vorbis/codec.h"
  19. typedef struct {
  20. int n;
  21. int log2n;
  22. float *trig;
  23. int *bitrev;
  24. } mdct_lookup;
  25. extern void mdct_init(mdct_lookup *lookup,int n);
  26. extern void mdct_clear(mdct_lookup *l);
  27. extern void mdct_forward(mdct_lookup *init, float *in, float *out);
  28. extern void mdct_backward(mdct_lookup *init, float *in, float *out);
  29. #endif