#N canvas 517 74 562 603 10;
#X declare -stdpath ./;
#X obj 6 579 cnv 15 552 21 empty empty empty 20 12 0 14 #e0e0e0 #202020 0;
#X obj 6 379 cnv 3 550 3 empty empty inlets 8 12 0 13 #dcdcdc #000000 0;
#X obj 6 490 cnv 3 550 3 empty empty outlets 8 12 0 13 #dcdcdc #000000 0;
#X obj 6 520 cnv 3 550 3 empty empty arguments 8 12 0 13 #dcdcdc #000000 0;
#X obj 87 445 cnv 17 3 17 empty empty 1 5 9 0 16 #dcdcdc #9c9c9c 0;
#X text 149 386 signal;
#X text 148 498 signal;
#X obj 87 466 cnv 17 3 17 empty empty 2 5 9 0 16 #dcdcdc #9c9c9c 0;
#X obj 87 497 cnv 17 3 17 empty empty 0 5 9 0 16 #dcdcdc #9c9c9c 0;
#X floatatom 369 170 0 0 4096 0 - - - 0;
#X obj 204 149 noise~;
#X text 131 543 2) float;
#X text 131 559 3) float;
#X obj 87 387 cnv 17 3 54 empty empty 0 5 9 0 16 #dcdcdc #9c9c9c 0;
#X floatatom 286 168 0 0 4096 0 - - - 0;
#X msg 146 150 clear;
#X text 155 405 clear;
#X text 283 150 Offset;
#X text 365 150 Table size/length;
#X text 198 405 - clears current input history;
#X text 130 527 1) symbol;
#X text 197 526 - table name, f 48;
#X text 197 445 - offset (samples);
#X text 198 385 - the signal to be convolved with samples from the buffer;
#X text 197 543 - table offset (default 0), f 48;
#X text 197 559 - table size/length (default 0 \, maximum is 4096);
#X text 70 88 [buffir~] is a table/buffer based FIR (finite impulse response) filter. An input signal is convolved with 'n' samples of a buffer.;
#X text 126 423 set <list>;
#X text 113 446 float/signal;
#X text 113 468 float/signal;
#X text 197 498 - the filtered signal;
#X text 197 468 - size/length (samples) - maximum is 4096;
#X obj 204 195 cyclone/buffir~ \$0-IR 0 4096;
#X text 197 423 - set <buffer/table name \, offset \, size> (resets arguments);
#N canvas 937 208 429 215 set_buffer~ 0;
#X msg 151 133 open;
#X text 28 19 The [buffir~] object works with any kind of array set in Pd \, and not only from the [buffer~] object. In the case of a multi channel [buffer~] object \, [buffir~] can only read its first channel.;
#X obj 129 160 cyclone/buffer~ \$0-IR @samps 4096;
#X obj 129 102 cyclone/loadmess fill sinc 32;
#X connect 0 0 2 0;
#X connect 3 0 2 0;
#X restore 434 255 pd set_buffer~;
#X obj 204 231 output~;
#X obj 2 4 header buffir~;
#X text 22 63 Convolve with a buffer;
#X obj 59 255 declare -stdpath ./;
#X text 48 327 see also:;
#X obj 409 342 open-else;
#X msg 409 316 conv~;
#X text 115 318 Plugdata users or those with ELSE can use the much better and more powerful [else/conv~] for partitioned convolution as an alternative., f 46;
#X text 450 315 <-- click;
#X connect 9 0 32 2;
#X connect 10 0 32 0;
#X connect 14 0 32 1;
#X connect 15 0 32 0;
#X connect 32 0 35 0;
#X connect 41 0 40 0;
