Hi all,
The denormal problem with freeverb/ardour on P-4's is killing me.
Since CMT plugin development seems to be a little stagnant, I decided
to take it into my own hands a bit, but I might need a little help from
a kind someone out there. Is there anyone who can give me a tip on
proper syntax for changing the denormals.h file in freeverb (assuming
this is where the problem lies)?
Details:
On this list and/or posts elsewhere I found that the denormals.h file
for freeverb doesn't work too well with some newer gcc compilers; one
recommendation was to exchange the first statement below with the second
definition:
#define undenormalise(sample) if(((*(unsigned
int*)&sample)&0x7f800000)==0) sample=0.0f
static inline float
undenormalise(volatile float s)
{
s += 9.8607615E-32f;
return s - 9.8607615E-32f;
}
I tried changing it out one-for-one, but.. no good. Ardour still
zombifies after reverb tails die out. Maybe there is somewhere else
that needs changing wrt denormals, or maybe I am just clueless :).
Anyway, I then tried using something like the following....but still no
good, [ardour now doesn't zombify, it's just that freeverb sounds like
@$!&].
#define static inline float undenormalise(volatile float s) { s +=
9.8607615E-32f; return s - 9.8607615E-32f; }
You can probably see that I have no idea what I'm doing, but this seems
like it should be so _simple_. Maybe now is the time to go read up on C++.
Thanks,
Neil