On Fri, Nov 01, 2002 at 03:13:28 +0100, Tim Goetze wrote:
Blackman-Harris
has the best sidelobe rejection, which is probably what we
just to make sure we're talking about the same thing:
double blackman (int i)
{
return 0.42
- 0.5 * cos (2 * (double) i * M_PI / WINDOW)
+ 0.08 * cos (4 * (double) i * M_PI / WINDOW);
}
I have:
double arg = 2.0 * M_PI / (double)(FRAME_LENGTH-1);
for (i=0; i < FRAME_LENGTH; i++) {
// Blackman-Harris
window[i] = 0.35875f - 0.48829f * cos(arg * (float)i) + 0.14128f *
cos(2.0f * arg * (float)i) - 0.01168f *
cos(3.0f * arg * (float)i);
// Gain correction
window[i] *= 0.761f;
}
But mine could just be unoptimised.
just did the same plot with applying the above window
before the FT;
it does not look fundamentally different. plot is at
http://quitte.de/spectral-evolution-windowed.gif
Well, the noise floor is lower and the harmincs are sharper, which is what
you would expect for a better analysis window. It shows that the harmonics
really are coming and going though.
It does. Well
in my randomly picked test set it did, when the harmonic
amplitudes are real it may be smoother. I'l clean up the code later, make
it LERP between harmonic sets and send it to you, but I have sleave for
work now.
could be we can get away with something like a simple four-sample
xfade, though that could introduce unrelated harmonics. better
than an unmasked discontinuity still. hmmm.
Well, I think its best to develop with maximum wuality, then when its
working, work out how much we can reduce the CPU cost and still have it
sound good.
Interesting. It
takes 1/2 as much as a single (optimised) valve here.
did some tests with valve and harmonic_gen at different frames/cycle,
the results seem to support my above cache theory; the chebyshev
is costing a lot less at larger block sizes than the valve. you run
them at 128/44.1 i understand?
For realtime, but I do my performance test at 1024/44, silly really, but I
have a patched applyplugin that reports cycle cost.
good god. know an alternative source for calculating
the
coefficients? Bill?
I have some text books that will have it in, I can compare that to NR.
- Steve