Originally committed to SVN as r1940.
This commit is contained in:
Rodrigo Braz Monteiro 2008-03-07 00:17:03 +00:00
parent eb5be3115a
commit 7d7ea83d23
2 changed files with 14 additions and 14 deletions

View File

@ -83,27 +83,27 @@ void FFT::DoTransform (size_t n_samples,float *input,float *output_r,float *outp
float cm2 = cos (-2 * delta_angle); float cm2 = cos (-2 * delta_angle);
float cm1 = cos (-delta_angle); float cm1 = cos (-delta_angle);
float w = 2 * cm1; float w = 2 * cm1;
float ar[3], ai[3]; float ar0, ar1, ar2, ai0, ai1, ai2;
// Apply for every sample // Apply for every sample
for(i=0;i<n_samples;i+=BlockSize) { for(i=0;i<n_samples;i+=BlockSize) {
ar[1] = cm1; ar1 = cm1;
ar[2] = cm2; ar2 = cm2;
ai[1] = sm1; ai1 = sm1;
ai[2] = sm2; ai2 = sm2;
for (j=i,n=0;n<BlockEnd;j++,n++) { for (j=i,n=0;n<BlockEnd;j++,n++) {
k = j + BlockEnd; k = j + BlockEnd;
ar[0] = w*ar[1] - ar[2]; ar0 = w*ar1 - ar2;
ai[0] = w*ai[1] - ai[2]; ai0 = w*ai1 - ai2;
ar[2] = ar[1]; ar2 = ar1;
ai[2] = ai[1]; ai2 = ai1;
ar[1] = ar[0]; ar1 = ar0;
ai[1] = ai[0]; ai1 = ai0;
tr = ar[0]*output_r[k] - ai[0]*output_i[k]; tr = ar0*output_r[k] - ai0*output_i[k];
ti = ar[0]*output_i[k] + ai[0]*output_r[k]; ti = ar0*output_i[k] + ai0*output_r[k];
output_r[k] = output_r[j] - tr; output_r[k] = output_r[j] - tr;
output_i[k] = output_i[j] - ti; output_i[k] = output_i[j] - ti;

View File

@ -415,7 +415,7 @@ int DirectShowVideoProvider::NextFrame(DF &df,int &_fn) {
///////////// /////////////
// Get frame // Get frame
const AegiVideoFrame DirectShowVideoProvider::DoGetFrame(int n) { const AegiVideoFrame DirectShowVideoProvider::GetFrame(int n,int formatMask) {
// Normalize frame number // Normalize frame number
if (n >= (signed) num_frames) n = num_frames-1; if (n >= (signed) num_frames) n = num_frames-1;
if (n < 0) n = 0; if (n < 0) n = 0;