smallft.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. /********************************************************************
  2. * *
  3. * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
  4. * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
  5. * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  6. * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
  7. * *
  8. * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
  9. * by the XIPHOPHORUS Company http://www.xiph.org/ *
  10. * *
  11. ********************************************************************
  12. function: fft transform
  13. last mod: $Id: smallft.h,v 1.3 2003/09/16 18:35:45 jm Exp $
  14. ********************************************************************/
  15. /**
  16. @file smallft.h
  17. @brief Discrete Rotational Fourier Transform (DRFT)
  18. */
  19. #ifndef _V_SMFT_H_
  20. #define _V_SMFT_H_
  21. #ifdef __cplusplus
  22. extern "C" {
  23. #endif
  24. /** Discrete Rotational Fourier Transform lookup */
  25. struct drft_lookup{
  26. int n;
  27. float *trigcache;
  28. int *splitcache;
  29. };
  30. extern void spx_drft_forward(struct drft_lookup *l,float *data);
  31. extern void spx_drft_backward(struct drft_lookup *l,float *data);
  32. extern void spx_drft_init(struct drft_lookup *l,int n);
  33. extern void spx_drft_clear(struct drft_lookup *l);
  34. #ifdef __cplusplus
  35. }
  36. #endif
  37. #endif