I found the solution, here is the explanation : kiss_fft.h ( it only has definitions) kiss_fft.c ( it is the real library with functions, we were missing this file ) it worked fine when compiling : gcc -o example example.c kiss_fft.c -lm Now it works great. Regards, Claudio
Hello, I wrote a simple code to test kiss_fft : prue_getangulozcPQTHD.c : include "kiss_fft.h" .... kiss_fft_cpx cin[Ntama]; kiss_fft_cpx cout[Ntama]; kiss_fft_cfg kiss_fft_state; kiss_fft_state = kiss_fft_alloc(Ntama,0,0,0); for (i=0;i<Ntama;++i) { cin[i].r = 1; cin[i].i = 0; } kiss_fft(kiss_fft_state,cin,cout); free(kiss_fft_state); .... but I got this error when compiling: prue_getangulozcPQTHD.c:(.text+0x51f): undefined reference to kiss_fft_alloc' prue_getangulozcPQTHD.c:(.text+0x816): undefined...
Hello, what is the representation of frequencies in the fftr output? I want to do some operations (average, max, etc.) for a certain frequency range, but i don't know the corresponding frequencies in the fftr output. Is there any document that can help me?
Hello. I've fixed a quick test to reveal the issue: #define FIXED_POINT 32 #include "kiss_fft.h" const kiss_fft_cpx in[] = { {0, 0}, {1, 0}, {2, 0}, {3, 0}, {4, 0}, {5, 0}, {6, 0}, {7, 0} }; kiss_fft_cpx out[8]; int main() { int i; kiss_fft_cfg mycfg = kiss_fft_alloc(8, 0, NULL, NULL); kiss_fft(mycfg, in, out); for(i = 0; i < 8; i++) { printf("%d %d\n", out[i].r, out[i].i); } } And upon execution it returns: 28 0 -2147483644 10 -2147483644 4 -2147483644 2 -2147483644 0 -2147483644 -2147483646 -2147483644...
Hello. I've fixed a quick test to reveal the issue: #define FIXED_POINT 32 #include "kiss_fft.h" const kiss_fft_cpx in[] = { {0, 0}, {1, 0}, {2, 0}, {3, 0}, {4, 0}, {5, 0}, {6, 0}, {7, 0} }; kiss_fft_cpx out[4]; int main() { int i; kiss_fft_cfg mycfg = kiss_fft_alloc(8, 0, NULL, NULL); kiss_fft(mycfg, in, out); for(i = 0; i < 8; i++) { printf("%d %d\n", out[i].r, out[i].i); } } And upon execution it returns: 28 0 -2147483644 10 -2147483644 4 -2147483644 2 -2147483644 0 -2147483644 -2147483646 -2147483644...
I see,that's right
for example, if input is complex value sequence, the complex value sequence length is 4 * 2 * 3 * 5, that is the sequence have 120 complex number, I use "kiss_fft" to compute the DFT, then the output will scale down to 1/120, because "kiss_fft" need to do radix2,radix3,radix4,radix5 computation ,That's right?
for example, if input is complex value sequence, the complex value sequence length is 4 * 2 * 3 * 5, that is the sequence have 120 complex number, I use "kiss_fft" to compute the DFT, then the output will scale down to 1/120, That's right?
for example, if input is complex value sequence, the complex value sequence length is 423*5, that is the sequence have 120 complex number, I use "kiss_fft" to compute the DFT, then the output will scale down to 1/120, That's right?
Then the forward and back FFT output magnitude is smaller than the expected, user is responsible for keeping the output magnitude consistent with expected?
Yes, it is to prevent overflow.
I have some question about fixed-point kiss_fft's butterfly computation. in "kf_bfly2", input divide by 2 use "C_FIXDIV", in "kf_bfly3", input divide by 3 use "C_FIXDIV", in "kf_bfly4", input divide by 4 use "C_FIXDIV", in "kf_bfly5", input divide by 5 use "C_FIXDIV", in "kiss_fftr" also use "C_FIXDIV",from the point of view of FFT algorithm,it's no use, It seems using "C_FIXDIV" just to prevent overflow. but if the input is Q15, what's the output Q value? the output Q value is consistent with input's?...
I have some question about fixed version kiss_fft's butterfly computation. in "kf_bfly2", input divide by 2 use "C_FIXDIV", in "kf_bfly3", input divide by 3 use "C_FIXDIV", in "kf_bfly4", input divide by 4 use "C_FIXDIV", in "kf_bfly5", input divide by 5 use "C_FIXDIV", in "kiss_fftr" also use "C_FIXDIV",from the point of view of FFT algorithm,it's no use, It seems using "C_FIXDIV" just to prevent overflow. but if the input is Q15, what's the output Q value? the output Q value is consistent with...
I have some question about fixed version kiss_fft's butterfly computation. in "kf_bfly2", input divide by 2 use "C_FIXDIV", in "kf_bfly3", input divide by 3 use "C_FIXDIV", in "kf_bfly4", input divide by 4 use "C_FIXDIV", in "kf_bfly5", input divide by 5 use "C_FIXDIV", in "kiss_fftr" also use "C_FIXDIV",from the point of view of FFT algorithm,it's no use, Using "C_FIXDIV" just to prevent overflow? but if the input is Q15, what's the output Q value? the output Q value is consistent with input's?...
Thanks for your answer, let me know if ther is a paper or a documentation about kiss_fft...
Hi Mark, This is to notify about the fix on fixed point numbers : I observed that...
Hi Mark, This is to notify about the fix on fixed point numbers : I observed that...
Hi Mark, This is to notify about the fix : I observed that when I put a #define nfft...
Thank you Mark, Does that mean that I should have got the Inverse FFT output ? The...
The fixed point FFT and IFFT both scale downwards to make overflow impossible.
It has not been much time after downloading kiss_fft 130, and I compiled on VS2015...
It has not been much time after downloading kiss_fft 130, and I compiled on VS2015...
btw .. you can't just "zero some coefficients in the FFT transform" without bad side...
Yes. It certainly is possible. A search for "fft 2d convolution" brings up several...
Hi everyone, I've been using Kiss FFT to filter 1D signals successfully and I have...
Hi everyone, I've been using Kiss FFT to filter 1D signals successfully and I have...
Thanks for the reply. I tried using column major ordering for the matrix as well,...
Thanks for the reply. I tried using column major ordering for the matrix as well,...
I don't have the time right now to dig into your code. My first suspicion is the...
Hi all, I'm trying to use Kiss FFT on some 3D matrices, but my results do not match...
Hi all, I'm trying to use Kiss FFT on some 3D matrices, but my results do not match...
Hello, i'm kinda struggling with our friend Fourier, i'm noob when it comest to DSP,...
I cannot think of any real limitations of KISSFFT in this regard, except perhaps...
Hi, Is there any limitation to the KissFFT library when it comes to choosing the...
hi i am trying to compile a shared library and to include or statically link kiss...
hi i am trying to compile a shared library and to include or statically link kiss...
I found the solution forthis problem on my own through experimenting. It is in the...
I found the mistake on my own through experiments. cx_in must be of the same size...
My formatting was a bit more understandable but now not that important. So where...
My formatting was a bit more understandable, so where could be my fault. I thought...
I suspect you are not initializing all your input. Bob bob90-06@users.sf.net wrote:...
Hello, I have a problem using Kiss FFT. I made an example programme so i could figure...
Hello, I have a problem using Kiss FFT. I made an example programme so i could figure...
Did you look at the derivation pdf available under "files"? I'd say it is pretty...
Hello. I was recently directed to KISSFFT and have spent some time reading about...
Hello I'm having problems creating an FFT from my base image. The sample image I'm...
Hello I'm having problems creating an FFT from my base image. The sample image I'm...
That sounds really cool. I think Eigen eigen.tuxfamily.org would be a natural place...
I have modified KissFFT using C++ templates in order to improve performance. By precomputing...
It seems so, though I can see no reason why. I do some preprocessing on the audio...
Perhaps there is a scaling difference between kissfft and Audacity?
Well, I've written a small test code: #include <iostream> #include "include/kiss_fft/kiss_fft.h"...
Thanks for a reply, I really didn't expect it to be so quick! cx_out is defined as...
Thanks for a reply, I really didn't expect it to be so quick! cx_out is defined as...
Thanks for a reply, I really didn't expect it to be so quick! cx_out is defined as...
Thanks for a reply, I really didn't expect it to be so quick! cx_out is defined as...
Are you sure you are using the float version of kissfft? cx_out should be complex,...
Greethings, and thanks for such a useful library! I'm trying to analyze an audio...