Commit graph

41 commits

Author SHA1 Message Date
Jean-Marc Valin
3ccf3a5655 Reverted to the old MDCT behaviour of only doing down-scaling in the FFT. 2008-04-22 17:08:59 +10:00
Jean-Marc Valin
8ddd7f400d mdct_backward now does the WOLA, so there isn't much left in compute_inv_mdcts 2008-04-22 13:37:16 +10:00
Jean-Marc Valin
4989c1212a Moved the windowing from compute_inv_mdcts() to mdct_backward() 2008-04-22 12:18:36 +10:00
Jean-Marc Valin
447e5b8fc6 Separated the pre-rotate from the window+shuffling and further simplified
everything.
2008-04-22 10:13:25 +10:00
Jean-Marc Valin
ef0d5f15c7 Further simplifications to the forward mdct 2008-04-22 09:49:22 +10:00
Jean-Marc Valin
41880805ab non-negative mdct input index 2008-04-22 07:50:50 +10:00
Jean-Marc Valin
30e1b4d36c Moved the windowing operation from compute_mdcts() to mdct_forward() in an
attempt to reduce copying.
2008-04-22 00:10:52 +10:00
Jean-Marc Valin
884916fb27 better mdct_backward() indexing 2008-04-19 12:53:43 +10:00
Jean-Marc Valin
39aad911d9 Made twiddle pointer in mdct more explicit 2008-04-17 07:29:53 +10:00
Jean-Marc Valin
c1a4c2ec44 some index work (simplifications for dumb compilers) on IMDCT 2008-04-10 18:54:02 +10:00
Jean-Marc Valin
df9275b31a Not all compilers are equal -- making it clearer how the MDCT indexing is done 2008-04-10 14:38:14 +10:00
Jean-Marc Valin
bd2828f64b Decision on whether to use pitch is now taken only based on energy in the
first three bands (instead of total MDCT window energy)
2008-03-26 08:10:27 +11:00
Jean-Marc Valin
3203474732 Using restrict to make it clear there's no aliasing issues in the mdct. 2008-03-22 11:23:57 +11:00
Jean-Marc Valin
a536f77202 Added a few "restrict" keywords and changed some divisions to shifts 2008-03-22 09:01:50 +11:00
Jean-Marc Valin
32d8c10df9 Removed potentially unused var in MDCT init 2008-03-21 13:11:16 +11:00
Jean-Marc Valin
6e09f680f1 fixed-point: fix for 32-bit TI FFT 2008-03-21 12:47:41 +11:00
Jean-Marc Valin
70162a4f82 fixed-point: Wrapper for the 32-bit complex FFT used in the MDCT so we can use
the TI dsplib FFT.
2008-03-21 12:09:27 +11:00
Jean-Marc Valin
c7e0b76c06 Making sure not to use the C library calls directly 2008-03-16 07:55:29 +11:00
Jean-Marc Valin
31b79d1993 Changed definition of VARDECL to make it more flexible. No actual code change. 2008-03-12 17:17:23 +11:00
Jean-Marc Valin
c209c342bf fixed-point: defined HALF32() and used it for the forward mdct. 2008-03-07 17:50:45 +11:00
Jean-Marc Valin
a78dc946cd Making 16-bit compilers happy 2008-03-05 08:15:55 +11:00
Jean-Marc Valin
d748cd5570 Another C90-fying pass. Fixed some warnings in the process. 2008-03-01 07:27:03 +11:00
Jean-Marc Valin
81b38c2295 Moved mdct state and window to the mode so it can be shared between multiple
encoders and decoders.
2008-02-29 21:08:49 +11:00
Jean-Marc Valin
877b1975b6 fixed-point: converted intra prediction and folding, unb0rked mixed-precision 2008-02-29 16:40:39 +11:00
Jean-Marc Valin
8600f69f79 Initial support for a managed stack/scratchpad. Still needs some work. 2008-02-29 15:14:12 +11:00
Jean-Marc Valin
9a5f3d2e6d 16-bit fixes and warning fixes 2008-02-26 10:38:17 +11:00
Jean-Marc Valin
65d79e4419 Corrected the last digit of pi after massive public outcry :-) 2008-02-26 07:38:27 +11:00
Jean-Marc Valin
b4dfce4665 fixed-point: Using a NORM_SCALING of 16384, sig_norm_t is still a float though. 2008-02-25 17:41:30 +11:00
Jean-Marc Valin
bd43729ecd MDCT is in fixed-point now 2008-02-25 12:07:13 +11:00
Jean-Marc Valin
2e8a3b20d0 MDCT conversion, part I. 2008-02-25 11:49:38 +11:00
Jean-Marc Valin
44830b0440 Float FFT now does the same scaling as the fixed-point FFT 2008-02-24 22:36:05 +11:00
Jean-Marc Valin
2c1d2f5bcc MDCT now scales down by N/2 instead of N/4. The factor two is moved to the
overlap-add during synthesis.
2008-02-22 21:54:11 +11:00
Jean-Marc Valin
37d13ceebe Adding celt_sig_t where needed 2008-02-22 14:45:58 +11:00
Jean-Marc Valin
0bb05bc5ea Another bunch of C99 array conversions (few more to go) 2008-02-20 13:43:40 +11:00
Jean-Marc Valin
02fa913c32 More C89 fixes, making sure to include config.h from all source files. 2008-02-20 12:09:29 +11:00
Jean-Marc Valin
a85657bd29 removed // comments and added stack_alloc.h (not used everywhere yet)
to make the code more C89-friendly.
2008-02-20 11:59:30 +11:00
Jean-Marc Valin
6211c90def Split the radix functions into forward and backward versions, removed the
"inverse" flag from the state so it can be shared between the forward and
inverse transforms.
2008-02-08 14:21:20 +11:00
Jean-Marc Valin
4d0a7d0f1b Now using an MDCT implementation I can actually understand. 2008-02-08 10:22:52 +11:00
Jean-Marc Valin
f02ba11950 MDCT analysis-synthesis (untested) 2007-11-30 01:10:42 +11:00
Jean-Marc Valin
842b445e1b There's nothing, but it now compiles 2007-11-29 17:19:47 +11:00
Jean-Marc Valin
63590897db Initial commit with the autotools stuff and files taken from Speex and Vorbis. 2007-11-29 17:01:16 +11:00