Commit graph

26 commits

Author SHA1 Message Date
Jean-Marc Valin
24eef1493e Updating dump_modes to include the MDCT and FFT. More work needed. 2010-08-25 18:01:50 -04:00
Jean-Marc Valin
3fc0aada01 FFT cleanup 2010-08-25 17:15:05 -04:00
Jean-Marc Valin
f81a60ca56 DOUBLE_PRECISION and MIXED_PRECISION no longer need to be defined 2010-08-03 15:47:54 -04:00
Jean-Marc Valin
41a5593c95 16-bit bitrev table 2010-07-08 21:02:05 -04:00
Jean-Marc Valin
6c5816ea84 Sharing of the twiddles across multiple FFTs 2010-07-08 20:54:32 -04:00
Jean-Marc Valin
628c025373 Converted a few double-precision constants to single precision 2010-04-16 20:57:56 -04:00
Jean-Marc Valin
30f7f813ea Changed all the celt*int*_t types to remove the _t suffix, which is reserved
by POSIX. The other _t types that are not part of the API are still there
for now. Also, got rid of all that was left of the 64-bit types.
2009-10-17 14:35:13 -04:00
Jean-Marc Valin
1dab60cc91 Better use of the arithmetic operators 2008-09-16 13:29:37 -04:00
Jean-Marc Valin
453ccd829a Generate slightly more accurate WMOPS figures 2008-09-12 20:52:27 -04: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
d857ac48de Using reciprocal approximation instead of full 32-bit division in alg_quant() 2008-03-12 13:26:37 +11:00
Jean-Marc Valin
f93747c44a fixed-point: changed find_spectral_pitch() to use single-precision (16-bit) FFT.
This involved adding kfft_single.[ch] that redefines kiss_fft a second time
with a different prefix. All this is still a bit of a mess now. The mask
had to be converted to 16-bit input, but we're still using floats to apply it.
2008-03-05 17:20:30 +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
2aaa0fee93 fixed-point: overflow debugging now works again. 2008-02-29 16:07:40 +11:00
Jean-Marc Valin
3ca9b1d295 fixed-point: Moved sqrt and cos approximations to mathops.h 2008-02-27 23:50:31 +11:00
Jean-Marc Valin
49ca99efa5 fixed-point: initial support for using the fixed-point MDCT (rest is still all
float)
2008-02-25 14:12:10 +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
e8b6830f53 minor tweak to FFT 2008-02-24 22:06:04 +11:00
Jean-Marc Valin
d911bc4d0d Added a mixed-precision version of the FFT with 32-bit data and 16-bit twiddles. 2008-02-24 17:16:47 +11:00
Jean-Marc Valin
9ced5d042d Created an separate kiss_twiddle_cpx type to make it possible to use
different precision for twiddles and data.
2008-02-24 13:46:30 +11:00
Jean-Marc Valin
25649c1569 Fixed the FFT for higher precision 2008-02-22 16:19:39 +11:00
Jean-Marc Valin
af8402e033 Fixed stuff that got broken during the forward-backward split of the FFT 2008-02-22 12:13:59 +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
d7dfb00886 Made pre-computed twiddles the same for forward and inverse FFT 2008-02-08 13:25:03 +11:00
Jean-Marc Valin
e6586d21fa Real FFT cleanup, plus some testcases 2008-02-08 10:48:15 +11:00
Jean-Marc Valin
4d0a7d0f1b Now using an MDCT implementation I can actually understand. 2008-02-08 10:22:52 +11:00