From b418fb91e7bb45d7b5f1eb8b19703441ae94eb13 Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Thu, 9 Feb 2006 16:18:39 +0000 Subject: got everything building and working, including building single-object/single-file objects with a shared dylib. Now got to get it integrated into the build system svn path=/trunk/externals/fftease/; revision=4574 --- lib/unconvert.c | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 lib/unconvert.c (limited to 'lib/unconvert.c') diff --git a/lib/unconvert.c b/lib/unconvert.c new file mode 100644 index 0000000..85392dd --- /dev/null +++ b/lib/unconvert.c @@ -0,0 +1,34 @@ +#include "fftease.h" + + + +void unconvert( float *C, float *S, int N2, float *lastphase, float fundamental, float factor ) + +{ + int i, + real, + imag, + amp, + freq; + float mag, + phase; +double sin(), cos(); + + for ( i = 0; i <= N2; i++ ) { + + imag = freq = ( real = amp = i<<1 ) + 1; + + if ( i == N2 ) + real = 1; + + mag = C[amp]; + lastphase[i] += C[freq] - i*fundamental; + phase = lastphase[i]*factor; + S[real] = mag*cos( phase ); + + if ( i != N2 ) + S[imag] = -mag*sin( phase ); + + } + +} -- cgit v1.2.1