Ifft-calculation changed?


#1

I'm using the inversed fft function (using the code from the spectral fft module, but setting the 0 to 1).
Even though it worked before, now it suddenly seems to fully rectify the sine/cosine amplitudes within the calculation, so no inversed sines are possible. So, I'm trying to create a saw-wave using:

int32_t gain=-(1<<31)-1;
for(i=1;i<LENGTH;i++)
{
gain= - gain;
int k=i<<1;
fftbuf[k]=gain/i;
fftbuf[k+1]=0;
}

this shóuld create a saw-wave, but it creates the waveform with only positive amplitudes for the partials.
Even if I remove the "gain= - gain;" part, it just shows the same waveform again, so there's no difference between positive and negative values.
When reading the fftbuf-table out with displays, it shows me it did create both positive and negative amplitudes for the fft-table, but somehow this isn't recognised within the ifft-calculation, creating a waveform with only positive amplitudes for all partials, while I'm 100% sure the calculation was right before...


#2

ok, not sure what exactly was going wrong, but got it to work in another fashion.