Commit Graph

7 Commits

Author SHA1 Message Date
Karl Tomlinson
1c1570d60b b=956604 optimize inverse FFT scaling during convolution r=padenot
--HG--
extra : transplant_source : %FD%10%CEAnU%98w%15%9D%9E6l%A7Q1%E1V%CDD
2014-01-08 16:58:11 +13:00
Ralph Giles
7d11abd2ed Bug 865256 - Part 3b: Add a complex->real ifft to FFTBlock. r=ehsan
From ea43bceaf8f6dd2c44d7f55a45f770be19b335a5 Mon Sep 17 00:00:00 2001
Currently FFTBlock only holds the complex frequency domain data
internally, reading and writing to external time domain data
buffers. For PeriodicWave we need to create a real, time domain
signal from real and imaginary frequency domain data. This method
does this without touching the internal output buffer at all.
FFTBlock is just used as a wrapper for kiss_fft_cfg.
2013-09-10 11:00:17 -07:00
Karl Tomlinson
d494799ed1 b=815643 Add Blink's frequency interpolation and group delay methods from FFTFrame to FFTBlock r=ehsan
--HG--
extra : rebase_source : 1e3393c85f1828cbcce49af1e3160fc3535d39b8
2013-08-08 21:38:24 +12:00
Ehsan Akhgari
17e7067306 Bug 886660 - Fix the leak in FFTBlock::SetFFTSize(); r=roc 2013-06-25 20:37:56 -04:00
Ehsan Akhgari
2e533bea4f Bug 815643 - Part 6: Optimize FFTBlock to avoid recreating kiss_fftr_cfg objects all the time; r=roc
Setting up the FFT tables turns out to be quite expensive because of the
large number of calls to sin() and cos().

In the future we may want to look into having a global cache of FFT
tables per size, in order to pay the cost of setting each one of them up
only once.

--HG--
extra : rebase_source : 871d11e7f74db9e3e6c704da9518d40cba3deb8a
2013-06-10 16:09:25 -04:00
Ehsan Akhgari
2ef673d28b Bug 815643 - Part 4: Add the Convolution processing implementation to the build system; r=roc
--HG--
extra : rebase_source : 2a5aa609334c67bb9b09090d9f681c5c3a940c5c
2013-06-10 16:09:01 -04:00
Ehsan Akhgari
82519eedaf Bug 815643 - Part 2: Refactor our Web Audio FFT code into the FFTBlock class; r=roc
This is useful in order for us to be able to borrow code from Blink with
fewer changes, and also to explore faster platform dependent FFT
implementations in the future if needed.

--HG--
extra : rebase_source : 34bbded736e1b385754756513c59ee27ce7552a5
2013-06-10 16:08:21 -04:00