#N canvas 84 222 646 423 12;
#X obj 60 241 bng 50 250 50 0 start_bang empty start 0 -6 128 8 -24198
-1 -1;
#X text 15 77 load/save/play etc.;
#X obj 364 125 nbx 8 16 0 1e+008 0 0 len_src empty empty 0 -8 128 12
-225271 -1 -1 0 256;
#X text 367 142 (defines the size of the result);
#X obj 362 179 nbx 8 16 0 1e+008 0 0 len_arg empty empty 0 -8 128 12
-225271 -1 -1 0 256;
#X obj 24 122 wedit buf_src;
#X obj 23 176 wedit buf_arg;
#X obj 33 350 wedit buf_res;
#X text 122 255 start convolution;
#X obj 177 356 bng 15 250 50 0 empty empty empty 0 -6 0 8 -258699 -1
-1;
#X obj 201 357 nbx 8 16 0 1e+008 0 0 len_arg empty empty 0 -8 128 12
-261689 -1 -1 1.04858e+006 256;
#X obj 11 10 cnv 15 600 50 empty empty convolve 10 22 0 24 -260818
-1 0;
#X text 202 41 http://www.parasitaere-kapazitaeten.net;
#X text 203 10 fft-based convolution \, (C)2003 Thomas Grill;
#X text 203 25 needs vasp and wedit;
#X text 32 329 result buffer;
#X text 140 121 source buffer;
#X text 137 175 argument buffer;
#N canvas 225 110 484 406 do 0;
#X obj 27 255 vasp.u;
#N canvas 406 75 413 555 convolve 0;
#X obj 217 202 vasp.!;
#X obj 116 163 vasp.f?;
#X obj 216 173 vasp;
#X obj 28 69 vasp;
#N canvas 0 0 458 308 sf 0;
#X obj 39 178 outlet;
#X obj 38 43 inlet;
#X obj 41 79 vasp.s;
#X obj 120 43 inlet;
#X obj 39 118 vasp.f;
#X connect 1 0 2 0;
#X connect 2 0 4 0;
#X connect 3 0 2 1;
#X connect 3 0 4 1;
#X connect 4 0 0 0;
#X restore 215 273 pd sf;
#X obj 53 452 vasp.opt;
#X obj 54 207 vasp;
#X obj 29 39 inlet;
#X obj 132 51 inlet;
#X obj 221 50 inlet;
#X obj 313 50 inlet;
#X obj 43 520 outlet;
#X text 26 15 bang;
#X text 126 21 src1;
#X text 218 20 src2;
#X text 313 22 dst;
#X text 214 220 copy to temp;
#X text 100 519 dst;
#N canvas 0 0 454 304 sf 0;
#X obj 39 178 outlet;
#X obj 38 43 inlet;
#X obj 41 79 vasp.s;
#X obj 120 43 inlet;
#X obj 39 118 vasp.f;
#X connect 1 0 2 0;
#X connect 2 0 4 0;
#X connect 3 0 2 1;
#X connect 3 0 4 1;
#X connect 4 0 0 0;
#X restore 55 235 pd sf;
#X obj 29 298 vasp.->;
#X obj 27 482 vasp.radio;
#X obj 29 94 t a b a;
#X obj 54 393 vasp.cconv;
#X obj 56 259 vasp.= 0;
#N canvas 0 0 452 302 im0 0;
#X obj 32 51 inlet;
#X obj 31 250 outlet;
#X obj 32 83 t a b a;
#X obj 102 121 vasp.f?;
#X obj 60 153 vasp.!;
#X obj 32 210 vasp.join;
#X text 31 10 make empty imaginary part;
#X text 115 153 temporary buffer of same size;
#X text 115 171 (initialized to 0);
#X connect 0 0 2 0;
#X connect 2 0 5 0;
#X connect 2 1 4 0;
#X connect 2 2 3 0;
#X connect 3 0 4 1;
#X connect 4 0 5 1;
#X connect 5 0 1 0;
#X restore 54 363 pd im0;
#N canvas 0 0 452 302 im0 0;
#X obj 32 51 inlet;
#X obj 31 250 outlet;
#X obj 32 83 t a b a;
#X obj 102 121 vasp.f?;
#X obj 60 153 vasp.!;
#X obj 32 210 vasp.join;
#X text 31 10 make empty imaginary part;
#X text 115 153 temporary buffer of same size;
#X text 115 171 (initialized to 0);
#X connect 0 0 2 0;
#X connect 2 0 5 0;
#X connect 2 1 4 0;
#X connect 2 2 3 0;
#X connect 3 0 4 1;
#X connect 4 0 5 1;
#X connect 5 0 1 0;
#X restore 129 363 pd im0;
#X obj 53 424 vasp.re;
#X obj 116 192 rndup2;
#X obj 54 329 vasp.f;
#X text 186 365 make imaginary parts;
#X text 116 423 need only real part;
#X text 124 451 "normalize";
#X text 116 482 filter eventual radio msgs;
#X connect 0 0 4 0;
#X connect 1 0 27 0;
#X connect 2 0 0 0;
#X connect 3 0 21 0;
#X connect 4 0 25 0;
#X connect 5 0 20 0;
#X connect 6 0 18 0;
#X connect 7 0 3 0;
#X connect 8 0 3 1;
#X connect 9 0 2 1;
#X connect 10 0 6 1;
#X connect 18 0 23 0;
#X connect 19 1 28 0;
#X connect 20 1 11 0;
#X connect 21 0 19 0;
#X connect 21 1 2 0;
#X connect 21 1 6 0;
#X connect 21 2 1 0;
#X connect 22 0 26 0;
#X connect 23 0 19 1;
#X connect 24 0 22 0;
#X connect 25 0 22 1;
#X connect 26 0 5 0;
#X connect 27 0 18 1;
#X connect 27 0 4 1;
#X connect 27 0 28 1;
#X connect 28 0 24 0;
#X restore 26 226 pd convolve;
#X obj 26 52 t b b;
#X msg 154 93 vasp buf_arg;
#X msg 267 92 vasp buf_res;
#X obj 306 220 table buf_src 10;
#X obj 307 242 table buf_arg 10;
#X obj 307 264 table buf_res 10;
#X obj 26 23 r start_bang;
#X obj 143 21 r len_src;
#X obj 229 24 r len_arg;
#X obj 25 318 outlet;
#X obj 27 291 vasp.f?;
#X text 83 255 update buffer;
#X obj 147 159 vasp.f;
#X obj 43 157 vasp.f;
#X msg 45 93 vasp buf_src;
#X obj 141 51 r off_src;
#X obj 227 54 r off_arg;
#X obj 43 125 vasp.o;
#X obj 147 127 vasp.o;
#X text 123 225 convolve;
#X connect 0 0 12 0;
#X connect 1 0 0 0;
#X connect 2 0 1 0;
#X connect 2 1 3 0;
#X connect 2 1 4 0;
#X connect 2 1 16 0;
#X connect 3 0 20 0;
#X connect 4 0 1 3;
#X connect 8 0 2 0;
#X connect 9 0 15 1;
#X connect 10 0 14 1;
#X connect 12 0 11 0;
#X connect 14 0 1 2;
#X connect 15 0 1 1;
#X connect 16 0 19 0;
#X connect 17 0 19 1;
#X connect 18 0 20 1;
#X connect 19 0 15 0;
#X connect 20 0 14 0;
#X restore 177 324 pd do;
#X obj 267 125 nbx 8 16 0 1e+008 0 0 off_src empty empty 0 -8 128 12
-225271 -1 -1 0 256;
#X obj 265 179 nbx 8 16 0 1e+008 0 0 off_arg empty empty 0 -8 128 12
-225271 -1 -1 0 256;
#X text 383 103 length;
#X text 288 100 offset;
#X text 286 78 range in samples;
#X connect 18 0 9 0;
#X connect 18 0 10 0;