KissFFT is a lightweight FFT implementation in C. The emphasis was put on making the code small, and able to be implemented quickly. It isn't the fastest computationally, but the time lost crunching numbers is more than made up for by how easy it is to use.
Questions tagged [kissfft]
70 questions
8
votes
2 answers
kissfft scaling
I am looking to compute a fast correlation using FFTs and the kissfft library, and scaling needs to be precise. What scaling is necessary (forward and backwards) and what value do I use to scale my data?

Matt Esch
- 22,661
- 8
- 53
- 51
8
votes
3 answers
Applying Kiss FFT on audio samples and getting NaN output?
The title explains my problem.
What I am trying to do is quite simple:
Load MP3 track (via libmpg123)
Read samples
Apply Kiss FFT on the samples
What I have tried so far
inline float scale(kiss_fft_scalar val)
{
int g = 0;
return val < 0…

ains
- 1,436
- 4
- 18
- 33
5
votes
2 answers
Gaussian Blur with FFT Questions
I have a current implementation of Gaussian Blur using regular convolution. It is efficient enough for small kernels, but once the kernels size gets a little bigger, the performance takes a hit. So, I am thinking to implement the convolution using…

rwb
- 621
- 1
- 12
- 21
5
votes
1 answer
dyld: Library not loaded: ..... How to correctly tell GCC Compiler where to find another static library?
I wrote C program that calculates the time step iterations of wavefunctions to solve the time depended Schrödinger equation.
At some step I need to do forward and backward Fast Fourier Transformations (FFT) for which I used the library…

Asti
- 51
- 4
5
votes
1 answer
KISS FFT output with or without windowing
I am currently trying to implement fft into avr32 micro controllers for signal processing purposes using kiss fft.
And having a strange problem with my output.
Basically, I am passing ADC samples (testing with function generator) into fft (real…

Jin
- 119
- 7
5
votes
1 answer
Kiss FFT seems to multiply data by the number of points that it transforms
My limited understanding of the Fourier transform is that you should be able to toggle between the time and frequency domain without changing the original data. So, here is a summary of what I (think I) am doing:
Using kiss_fft_next_fast_size(994)…

mosi
- 247
- 1
- 2
- 10
4
votes
1 answer
How to perform FFT2D (Fast Fourier Transform 2D) R, G, B color component
I am new in fast fourier transform (FFT) and does not have much idea, how it calculate in programming language such as C++. Here is method of FFT2D
void FFT2D(Complex *f, Complex *F, int width, int height);
It takes an input image f…

user553710
- 210
- 2
- 9
- 16
3
votes
2 answers
Why does my KISS FFT plot show duplicate peaks mirrored on the y-axis?
I'm a beginner with FFT concepts and so what I understand is that if I put in 1024 signals, I'll get 513 bins back ranging from 0hz to 22050Hz (in the case of a 44100Hz sampling rate). Using KISS FFT in Cinder the getBinSize function returns the…

geranyl
- 55
- 1
- 5
3
votes
2 answers
How to interpret the result from KissFFT's kiss_fftr (FFT for a real signal) function
I'm using KissFFT's real function to transform some real audio signals. I'm confused, since I input a real signal with nfft samples, but the result is nfft/2+1 complex frequency bins.
From KissFFT's README:
The real (i.e. not complex) optimization…

Steve Barna
- 1,378
- 3
- 13
- 23
3
votes
2 answers
FFT Convolution - Really low PSNR
I'm convoluting an image (512*512) with a FFT filter (kernelsize=10), it looks good.
But when I compare it with an image which I convoluted the normal way the result was horrible.
The PSNR is about 35.
67,187/262,144 Pixel values have a difference…

Marco
- 301
- 4
- 15
3
votes
1 answer
FFT Convolution - How to apply Kernel
I'm pretty new to Image Processing and found out that the FFT convolution speeds up the convolution with large kernel sizes a lot.
My question is, how can I apply a kernel to a image in frequency space when using kissFFT?
I already did the…

Marco
- 301
- 4
- 15
3
votes
1 answer
Complex frequencies to real signal transform with kiss_fft
I am trying to FFT my complex signal and the output should be real. So I make this code
#include
#include
#include
#include "lib\kiss_fftr.c"
int N = 16;
void TestFftReal(const char* title, const kiss_fft_cpx …

srky
- 350
- 2
- 4
- 12
3
votes
1 answer
What's the equivalent function in KissFFT for fftw_plan_dft_r2c_1d() from FFTW?
I've got a project that uses fftw_plan_dft_r2c_1d and fftw_plan_dft_c2r_1d from FFTW, as well as fftw_execute. What are the equivalent functions in KissFFT?

fredley
- 32,953
- 42
- 145
- 236
3
votes
1 answer
Using KissFFT on a wave file
I am trying to use the KissFFT Library with this 11 second 44kHz .wav sample file as a test input.
However as I process the file with a window size of 512, I am getting only 1 output value. Which is weird, the 11 sec .wav file at 44kHz should not…

Joseph Azzam
- 105
- 1
- 14
3
votes
1 answer
KissFFT Versus DSPIC - Rounding Errors
Trying to get the KissFFT fixed point implementation to line up with the DSPIC. The issue is that the fixed point implementation in Kiss is a true fixed point but the dspic does the multiplies and sums in a 40 bit register then shifts down to 16…

user2848810
- 1,187
- 1
- 8
- 12