On 6/21/06, Piotr Majdak piotr@majdak.com wrote:
Chuckk Hubbard wrote:
On 6/20/06, Mathieu Bouchard matju@artengine.ca wrote:
On Mon, 19 Jun 2006, Chuckk Hubbard wrote:
Can it be heard?
If you have any differences between the original and reconstructed signals, then they will be introduced by quantization (try a FFT with 8-bit fixed point DSP) or by overflow or by windowing effects - not by FT->IFT. This means: FT and IFT work as they are supposed to work - all problems and differences in the perfect reconstruction of your signals are caused by inproper signal processing. And this means: if you have differences after FT->IFT then you will have differences after simple multiplications and/or additions too, because your system is not adequate to do this job.
For some reason I hadn't checked this before, and my system is indeed adequate. I wasn't sure if Pure Data's FFT has built-in windowing or not, apparently it doesn't.
I'm specifically curious about seeing integration and convolution, although I haven't found how to do that in Octave yet.
If x is the sequence with your signal in MATLAB (Octave has the same syntax), then
Integration is y=sum(x); Convolution is y=conv(x,f); where f is the sequence with the impulse response of the filter FT is X=fft(x); IFT is y=ifft(X);
The syntax is quite easy - if you need some help about MATLAB, write me a personal mail - I'll do my best.
Cool, thanks, you might hear from me soon. I wonder what's the simplest way to do convolution natively in Pd?
-Chuckk
br, Piotr