So, i’ve been developing a little convolution plugin, using a friend’s partitioned convolution library.
Now, some plugin hosts, esp. AU hosts (encountered this in Garage Band), sub-divide the audio blocks, so that the blocksize retrieved in
prepareToPlay(...) isn’t reliable at all.
But, the convolution library needs some buffers set to the correct size when loading a filter kernel, something you’d typically avoid doing in the
My first idea would be pre-buffering the smaller buffers, and once the actual source buffer is “full”, perform the convolution, but then, how do i return the results with the correct size ?
Is there any accepted best practice how to handle this situation ?