Sorry - by inlet~ I meant the inlet of the patch/subpatch, not the block~ object. Say the signal going into the patch is:
1 3 5 7 9 2 4 6 8 0
If there is a [block~ 4 2] inside that patch, the first signal block that comes from the patch's inlet is
1 3 5 7 the next is 5 7 9 2 then 9 2 4 6 and so on.
The outlet of the patch overlaps and adds these blocks, so if you just had the inlet connected directly to the outlet, you'd get
1 3 (5+5) (7+7) (9+9) (2+2) ...
from the patch's outlet.
Ben
On Tue, Aug 27, 2002 at 03:51:15PM -0700, J. Scott Hildebrand wrote:
i'm not exactly sure what you mean by the inlet is giving a block
consisting of the last half of the previous block and the first half of the next block. the inlet takes data in and the outlet takes data out. there is only an inlet in the block~ object and no outlet. and how would i use this overlapping mechanism to do the overlap and add routine for real-time convolution? thanks!
scott
On Tue, 27 Aug 2002 bsaylor@macalester.edu wrote:
I'm not sure what the inlet is for, but yes, just put block~ anywhere in a containing window.
The overlap factor is most useful for when you want to do FFT operations on overlapping, windowed (e.g. Hanning) blocks. It sort of means that instead of just moving on to the next input block, the inlet~ will give a block consisting of (say the overlap factor is 2) the last half of the previous block and and the first half of the next block. The outlet~ then adds the overlapping blocks back together. You need an overlap factor of at least 2 (which seems to be usually good enough) when working with hanning-windowed blocks. For convolution, windowing isn't necessary, so depending on how your algorithm works, an overlap factor of 1 (e.g. no overlap) might work. I think this is all at least conceptually correct; someone correct me if I'm wrong.. :)