Re: Convolution with large filters?
Re: Convolution with large filters?
- Subject: Re: Convolution with large filters?
- From: Ross Bencina <email@hidden>
- Date: Sun, 12 Feb 2012 22:31:56 +1100
On 12/02/2012 7:54 AM, Nikolai Collinsky wrote:
> Partitioned convolution is your friend here for longer impulse
responses. You might have to write some convolution code yourself going
via FFT calls.
>
> For the minimal delay version of this, see:
> William G. Gardner. Efficient convolution without input-output delay.
Journal of the Audio Engineering Society, 43(3):127–136,
> 1995.
And for the uniform partitioning case, this is a reasonable introduction:
Anders Torger, Angelo Farina. REAL-TIME PARTITIONED CONVOLUTION FOR
AMBIOPHONICS SURROUND SOUND
http://www.acoustics.net/objects/pdf/article_farina04.pdf
http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=969576
Historically, Gardener's non-uniform partitioning algorithm was covered
by notorious patent from Lake DSP (now Dolby). Perhaps this has expired,
or is very close to expiring in the USA although I think there is a
newer European patent. Googling "Lake DSP convolution patent" brings up
some hits.
I believe Microsoft has a newer patent on certain "optimal" partitioning
schemes.
For medium size convolutions there is also this O(n^log2(3)) scheme (not
sure what the official name for it is):
http://www.musicdsp.org/showone.php?id=65
http://www.musicdsp.org/showone.php?id=66
The biggest problem with FFT based block-wise convolution is that it's
difficult to spread the CPU load evenly when you have a small audio
callback buffer size. There was a paper discussing some approaches at
last year's DAFx conference.
HTH
Ross.
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden