On Mon, Oct 07, 2019 at 11:42:33AM -0700, AKC360 wrote:
Fons Adriaensen-3 wrote
A symmetric FIR of 8192 samples would have a
delay
of 4096 samples, or 85.333 ms...
I am sorry yes I think I have confused the terms being used. I sent an
impulse through JConvolver with the oscilloscope CH1 being connected to the
signal generators Jack output. CH2 was connected to the Jack Output of
Jconvolver. I measeured the time difference on the scope between the two
impulses.
So I guess I am measuring jack latency and the filter delay.
With the minimum partition size equal to the Jack period there is no
additional latency, what you measure is just the filter delay.
I thought with partitioned convolution the filter
delay would be
lowered from the traditional delay(85mS)?
No, the delay is a property of the filter, not of how it is implemented.
You can't have linear phase without the delay... But you could probably
reduce the filter size to 4096. It may affect the Sub crossover a bit,
but I don't think you'd hear the difference.
Thanks for your help with this, my speakers sound so
much better since
going active and linear phase!
No surprise :-)
Hints: set the max size to your filter lenght, this will use less
memory. Also you could set the density to 0.5.
The higher frequency filters probably are much shorter than 8192
samples, with most energy concentrated around sample 4096. You
could leave out the (near) zeros at the start and end, like this:
Replace
/impulse/read 1 1 1 0 0 0 1 High.wav
by
/impulse/read 1 1 1 2048 2048 4096 1 High.wav
or
/impulse/read 1 1 1 3072 3072 2048 1 High.wav
keeping only the central 4096 or 2048 samples.
This may reduce the CPU load (not that it seems to be a problem).
Ciao,
--
FA