Mercurial > mplayer.hg
comparison libfaad2/cfft.h @ 12527:4a370c80fe5c
update to the 2.0 release of faad, patch by adland
author | diego |
---|---|
date | Wed, 02 Jun 2004 22:59:04 +0000 |
parents | e989150f8216 |
children | d81145997036 |
comparison
equal
deleted
inserted
replaced
12526:e183ad37d24c | 12527:4a370c80fe5c |
---|---|
1 /* | 1 /* |
2 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding | 2 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding |
3 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com | 3 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com |
4 ** | 4 ** |
5 ** This program is free software; you can redistribute it and/or modify | 5 ** This program is free software; you can redistribute it and/or modify |
6 ** it under the terms of the GNU General Public License as published by | 6 ** it under the terms of the GNU General Public License as published by |
7 ** the Free Software Foundation; either version 2 of the License, or | 7 ** the Free Software Foundation; either version 2 of the License, or |
8 ** (at your option) any later version. | 8 ** (at your option) any later version. |
20 ** forbidden. | 20 ** forbidden. |
21 ** | 21 ** |
22 ** Commercial non-GPL licensing of this software is possible. | 22 ** Commercial non-GPL licensing of this software is possible. |
23 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com. | 23 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com. |
24 ** | 24 ** |
25 ** $Id: cfft.h,v 1.6 2003/07/29 08:20:12 menno Exp $ | 25 ** $Id: cfft.h,v 1.1 2003/08/30 22:30:21 arpi Exp $ |
26 **/ | 26 **/ |
27 | 27 |
28 #ifndef __CFFT_H__ | 28 #ifndef __CFFT_H__ |
29 #define __CFFT_H__ | 29 #define __CFFT_H__ |
30 | 30 |
31 #ifdef __cplusplus | 31 #ifdef __cplusplus |
32 extern "C" { | 32 extern "C" { |
33 #endif | 33 #endif |
34 | 34 |
35 typedef struct | |
36 { | |
37 uint16_t n; | |
38 uint16_t ifac[15]; | |
39 complex_t *work; | |
40 complex_t *tab; | |
41 } cfft_info; | |
42 | |
35 | 43 |
36 void cfftf(cfft_info *cfft, complex_t *c); | 44 void cfftf(cfft_info *cfft, complex_t *c); |
37 void cfftb(cfft_info *cfft, complex_t *c); | 45 void cfftb(cfft_info *cfft, complex_t *c); |
38 cfft_info *cffti(uint16_t n); | 46 cfft_info *cffti(uint16_t n); |
39 void cfftu(cfft_info *cfft); | 47 void cfftu(cfft_info *cfft); |
40 | 48 |
41 | 49 #ifdef USE_SSE |
42 static void passf2(uint16_t ido, uint16_t l1, complex_t *cc, complex_t *ch, | 50 void cfftb_sse(cfft_info *cfft, complex_t *c); |
43 complex_t *wa, int8_t isign); | 51 #endif |
44 static void passf3(uint16_t ido, uint16_t l1, complex_t *cc, complex_t *ch, | |
45 complex_t *wa1, complex_t *wa2, int8_t isign); | |
46 static void passf4(uint16_t ido, uint16_t l1, complex_t *cc, complex_t *ch, | |
47 complex_t *wa1, complex_t *wa2, complex_t *wa3, int8_t isign); | |
48 static void passf5(uint16_t ido, uint16_t l1, complex_t *cc, complex_t *ch, | |
49 complex_t *wa1, complex_t *wa2, complex_t *wa3, complex_t *wa4, | |
50 int8_t isign); | |
51 INLINE void cfftf1(uint16_t n, complex_t *c, complex_t *ch, | |
52 uint16_t *ifac, complex_t *wa, int8_t isign); | |
53 static void cffti1(uint16_t n, complex_t *wa, uint16_t *ifac); | |
54 | 52 |
55 | 53 |
56 #ifdef __cplusplus | 54 #ifdef __cplusplus |
57 } | 55 } |
58 #endif | 56 #endif |