max v2; #N vpatcher 20 50 720 450; #P origin 32 21; #P hidden message 456 87 200 196617 window size 20 50 720 450 \, window exec; #N thispatcher; #Q end; #P hidden newobj 511 108 59 196617 thispatcher; #P hidden newex 409 28 45 196617 loadbang; #P hidden message 409 51 84 196617 read vasplogo.tif; #P user fpic 488 21 186 57 vasplogo.tif 0 0 0 0. 0 0 0; #N vpatcher 93 94 908 393; #P comment 443 224 237 196617 don't miss that!; #P comment 134 257 166 196617 http://www.canto-crudo.com/; #P comment 443 190 237 196617 comparable (but more extensive) functionality; #P comment 64 52 50 196617 about fft:; #P comment 134 190 255 196617 http://www.bath.ac.uk/~masjpf/CDP/CDP.htm; #P comment 84 190 28 196617 CDP:; #P comment 134 113 255 196617 http://sepwww.stanford.edu/oldsep/hale/FftLab.html; #P comment 443 113 73 196617 very useful; #P comment 134 151 225 196617 http://www.fftw.org/links.html; #P comment 443 151 92 196617 more fft links; #P comment 443 80 95 196617 introduction to fft; #P comment 134 80 225 196617 http://www.eptools.com/tn/T0001/INDEX.HTM; #P comment 20 224 92 196617 Numerical Recipes:; #P comment 134 224 272 196617 http://www.nr.com/; #P comment 443 49 305 196617 the author (marius schebella) also handles the documentation for the pure data port of vasp; #P comment 134 52 299 196617 http://www.parasitaere-kapazitaeten.net/Pd/fft_und_pd.htm; #P comment 44 257 68 196617 gŸnther rabl :; #P comment 28 22 107 196622 vasp_links; #P pop; #P newobj 570 248 35 196617 p links; #P comment 509 250 59 196617 useful links; #P comment 45 136 469 196617 consisting of functions to generate and modify buffer content in a non-realtime context.; #P comment 386 250 55 196617 vasps units; #N vpatcher 71 356 541 680; #N vpatcher 442 226 781 479; #P comment 114 90 102 196617 current sampling rate; #P flonum 68 194 54 9 0 0 160 3 0 0 0 221 221 221 222 222 222 0 0 0; #P newex 68 141 27 196617 t b f; #P message 267 140 27 196617 stop; #P message 201 140 65 196617 startwindow; #P newex 201 163 29 196617 dac~; #P comment 126 195 64 196617 period length; #P flonum 68 113 54 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P newex 68 163 27 196617 / 1.; #P flonum 56 89 54 9 0 0 160 3 0 0 0 221 221 221 222 222 222 0 0 0; #P newex 42 65 53 196617 dspstate~; #P comment 126 115 80 196617 frequency in Hz; #P comment 20 21 170 196622 Hz_to_period_length; #P connect 2 1 3 0; #P fasten 5 0 10 0 73 134 73 134; #P fasten 3 0 4 0 61 108 61 108 61 160 73 160; #P connect 10 0 4 0; #P connect 4 0 11 0; #P connect 10 1 4 1; #P fasten 9 0 7 0 272 159 206 159; #P connect 8 0 7 0; #P pop; #P newobj 123 280 109 196617 p Hz_to_period_length; #P comment 103 262 301 196617 sample rate/frequency in Hz = frequency in period length (float); #P comment 60 245 234 196617 - frequencies are always defined in period lengths; #P message 122 197 125 196617 vasp 44100 buf1 22050 0; #P comment 103 171 305 196617 e.g: vasp message with an offset of 0.5 sec. and a length of 1 sec. (sr 44100); #P comment 60 155 366 196617 - lengths and offsets are always defined in samples (depending on sample rate); #P message 123 102 125 196617 vasp 44100 buf1 22050 0; #P comment 60 69 182 196617 - vasp index counting starts from 0; #P comment 38 24 106 196622 vasp_units; #P comment 103 84 313 196617 e.g: channel 0 in a vasp message means first channel in the buffer; #P pop; #P newobj 446 248 38 196617 p units; #P comment 218 250 78 196617 the vasp objects; #P comment 45 250 83 196617 the vasp message; #N vpatcher 740 49 953 357; #N vpatcher 119 475 293 627; #P origin 0 23; #P newex 21 21 39 196617 r ohelp; #P newex 21 41 78 196617 prepend symbol; #P newex 21 92 45 196617 pcontrol; #P message 21 67 41 196617 help \$1; #P connect 3 0 2 0; #P connect 2 0 0 0; #P connect 0 0 1 0; #P pop; #P hidden newobj 60 274 54 196617 p openhelp; #N vpatcher 306 143 730 390; #P comment 132 137 195 196617 rotate buffer content symmetrically; #P message 67 137 52 196617 vasp.xrot; #P message 67 193 59 196617 vasp.xmirr; #P message 67 164 53 196617 vasp.mirr; #P message 67 110 45 196617 vasp.rot; #P message 67 81 59 196617 vasp.xshift; #P message 67 52 53 196617 vasp.shift; #P hidden newex 319 205 39 196617 s ohelp; #P comment 132 193 171 196617 mirrors a vasp symmetrically; #P comment 131 81 228 196617 shifts the buffer content symetrically; #P comment 132 164 171 196617 mirrors a vasp; #P comment 132 52 222 196617 shifts the buffer content; #P comment 132 110 100 196617 rotate buffer content; #P comment 43 23 131 196622 vasp.displace; #P hidden connect 11 0 6 0; #P hidden connect 10 0 6 0; #P hidden connect 9 0 6 0; #P hidden connect 8 0 6 0; #P hidden connect 7 0 6 0; #P hidden connect 12 0 6 0; #P pop; #P newobj 60 178 75 196617 p vasp.displace; #N vpatcher 531 93 1020 661; #P origin 0 41; #P hidden newex 413 514 39 196617 s ohelp; #P message 62 522 51 196617 vasp.part; #P message 62 496 61 196617 vasp.gather; #P message 62 470 49 196617 vasp.spit; #P message 62 444 49 196617 vasp.join; #P message 62 418 52 196617 vasp.split; #P message 62 392 70 196617 vasp.frames?; #P message 62 366 70 196617 vasp.frames+; #P message 62 340 64 196617 vasp.frames; #P message 62 314 55 196617 vasp.offs?; #P message 62 288 55 196617 vasp.offs+; #P message 62 262 50 196617 vasp.offs; #P message 62 236 43 196617 vasp.n?; #P message 62 210 35 196617 vasp.n; #P message 62 184 40 196617 vasp.m; #P message 62 158 61 196617 vasp.update; #P message 62 132 53 196617 vasp.sync; #P message 62 106 45 196617 vasp.chk; #P message 62 80 44 196617 vasp.??; #P message 62 54 38 196617 vasp.?; #P comment 134 80 225 196617 output all non zero samples of a vasp as list; #P comment 134 496 252 196617 gather several vasps into one; #P comment 134 418 252 196617 split a vasp into its vectors; #P comment 134 470 252 196617 spit out vectors of a vasp (one vector after the other); #P comment 134 444 252 196617 join several vasps into one; #P comment 134 392 252 196617 get a vasps frame count; #P comment 134 366 252 196617 raise/lower a vasps frame count; #P comment 134 340 252 196617 set a vasps frame count; #P comment 134 314 252 196617 get a single vectored vasp«s offset(s) into the buffer; #P comment 134 288 252 196617 shift a vasp«s offset(s) into the vector buffers; #P comment 134 262 252 196617 set a vasp«s offset(s) into the vector buffers; #P comment 134 236 252 196617 get the number vectors of a vasp; #P comment 134 210 252 196617 get a vector of a vasp; #P comment 134 184 252 196617 output a vasp multiply; #P comment 134 54 186 196617 output the samples of a vasp as list; #P comment 134 106 110 196617 check vasp dimensions; #P comment 134 132 246 196617 sync 2 or more vasps; #P comment 134 158 252 196617 update the graphics of a patcher (e.g. waveform); #P comment 134 522 238 196617 output vasps with different lengths and offsets; #P comment 27 22 135 196622 define_vasps; #P hidden connect 22 0 39 0; #P hidden connect 38 0 39 0; #P hidden connect 37 0 39 0; #P hidden connect 36 0 39 0; #P hidden connect 35 0 39 0; #P hidden connect 34 0 39 0; #P hidden connect 33 0 39 0; #P hidden connect 32 0 39 0; #P hidden connect 31 0 39 0; #P hidden connect 30 0 39 0; #P hidden connect 29 0 39 0; #P hidden connect 28 0 39 0; #P hidden connect 27 0 39 0; #P hidden connect 26 0 39 0; #P hidden connect 25 0 39 0; #P hidden connect 24 0 39 0; #P hidden connect 23 0 39 0; #P hidden connect 21 0 39 0; #P hidden connect 20 0 39 0; #P pop; #P newobj 60 65 75 196617 p define_vasps; #N vpatcher 463 267 1141 534; #P message 63 228 52 196617 vasp.xtilt; #P comment 130 229 165 196617 symmetrical resampling; #P message 64 204 45 196617 vasp.tilt; #P comment 129 205 165 196617 resampling; #P message 279 81 60 196617 vasp.cnorm; #P message 483 109 70 196617 vasp.rvalleys; #P message 483 137 62 196617 vasp.rpeaks; #P message 483 81 51 196617 vasp.ropt; #P comment 559 109 83 196617 radius valleys; #P comment 559 137 83 196617 radius peaks; #P comment 559 81 83 196617 radius optimize; #P message 483 53 55 196617 vasp.rgate; #P comment 559 53 83 196617 radius gate; #P hidden newex 304 187 39 196617 s ohelp; #P message 64 165 60 196617 vasp.pwrap; #P message 64 137 55 196617 vasp.peaks; #P message 64 109 65 196617 vasp.valleys; #P message 64 81 45 196617 vasp.opt; #P message 64 53 51 196617 vasp.gate; #P comment 129 165 165 196617 wraps value from 0-2¹ to -¹ to ¹; #P comment 129 137 100 196617 local peaks of a vasp; #P comment 129 109 123 196617 local minima of a vasp; #P comment 129 81 134 196617 optimize buffer content; #P comment 129 53 171 196617 gates vasp under a value (amplitude); #P comment 26 25 144 196622 vasp_utilities; #P comment 341 81 125 196617 sets complex radius of all samples to unity; #P hidden connect 25 0 12 0; #P hidden connect 23 0 12 0; #P hidden connect 20 0 12 0; #P hidden connect 19 0 12 0; #P hidden connect 18 0 12 0; #P hidden connect 14 0 12 0; #P hidden connect 10 0 12 0; #P hidden connect 9 0 12 0; #P hidden connect 8 0 12 0; #P hidden connect 7 0 12 0; #P hidden connect 21 0 12 0; #P hidden connect 11 0 12 0; #P pop; #P newobj 60 246 75 196617 p vasp.utilities; #N vpatcher 195 285 765 547; #P origin 0 24; #P message 352 208 53 196617 vasp.rmin; #P message 352 182 55 196617 vasp.rmax; #P comment 426 208 83 196617 radius minimum; #P comment 426 182 83 196617 radius maximum; #P hidden newex 309 229 39 196617 s ohelp; #P message 63 208 48 196617 vasp.min; #P message 63 182 51 196617 vasp.max; #P message 63 156 55 196617 vasp.max?; #P message 63 130 54 196617 vasp.min?; #P message 63 104 62 196617 vasp.amax?; #P message 63 78 59 196617 vasp.amin?; #P message 352 156 62 196617 vasp.rmax?; #P message 352 130 59 196617 vasp.rmin?; #P message 63 52 65 196617 vasp.minmax; #P comment 139 208 171 196617 minimum of vasp and argument; #P comment 139 182 171 196617 maximum of vasp and argument; #P comment 139 130 131 196617 output min. value of a vasp; #P comment 139 156 131 196617 output max. value of a vasp; #P comment 139 104 172 196617 output max. absolute value of a vasp; #P comment 139 78 204 196617 output min. absolute value of a vasp; #P comment 426 156 99 196617 radius max. value; #P comment 426 130 96 196617 radius min. value; #P comment 139 54 228 196617 splits a vasp into minimum and maximum values; #P comment 27 23 140 196622 vasp_minmax_etc.; #P hidden connect 23 0 19 0; #P hidden connect 22 0 19 0; #P hidden connect 18 0 19 0; #P hidden connect 17 0 19 0; #P hidden connect 16 0 19 0; #P hidden connect 15 0 19 0; #P hidden connect 14 0 19 0; #P hidden connect 13 0 19 0; #P hidden connect 12 0 19 0; #P hidden connect 11 0 19 0; #P hidden connect 10 0 19 0; #P pop; #P newobj 60 223 98 196617 p vasp.minmax_etc.; #N vpatcher 480 321 1117 575; #P origin 0 27; #P comment 292 137 98 196617 complex sample^2; #P comment 292 112 148 196617 complex integer power function; #P comment 121 162 98 196617 square root; #P comment 121 188 87 196617 signed sample^2; #P message 230 112 58 196617 vasp.cpowi; #P message 230 137 52 196617 vasp.csqr; #P message 61 214 55 196617 vasp.ssqrt; #P message 61 188 52 196617 vasp.ssqr; #P message 61 162 51 196617 vasp.sqrt; #P message 61 137 45 196617 vasp.sqr; #P message 61 112 50 196617 vasp.pow; #P comment 121 214 98 196617 signed square root; #P comment 121 112 48 196617 samps^x; #P comment 121 137 70 196617 sample^2; #P message 448 112 55 196617 vasp.rpow; #P comment 504 112 112 196617 radius power function; #P hidden newex 346 206 39 196617 s ohelp; #P message 61 85 45 196617 vasp.log; #P message 61 55 48 196617 vasp.exp; #P comment 121 85 86 196617 logarithm; #P comment 121 55 84 196617 exponential; #P comment 27 22 143 196622 vasp_transcendent; #P hidden connect 3 0 5 0; #P hidden connect 4 0 5 0; #P hidden connect 11 0 5 0; #P hidden connect 12 0 5 0; #P hidden connect 13 0 5 0; #P hidden connect 14 0 5 0; #P hidden connect 15 0 5 0; #P hidden connect 17 0 5 0; #P hidden connect 16 0 5 0; #P hidden connect 7 0 5 0; #P pop; #P newobj 60 201 98 196617 p vasp.transcendent; #N vpatcher 508 79 1002 585; #P origin 0 26; #P message 251 114 45 196617 vasp.c!-; #P comment 125 112 100 196617 reverse subtraction; #P message 62 112 40 196617 vasp.!-; #P comment 126 439 100 196617 integral function; #P comment 126 462 100 196617 differential function; #P message 63 462 44 196617 vasp.dif; #P message 63 439 44 196617 vasp.int; #P message 336 70 43 196617 vasp.r+; #P comment 385 70 83 196617 radius offset; #P message 252 182 45 196617 vasp.c!/; #P comment 126 181 100 196617 reverse division; #P message 63 181 41 196617 vasp.!/; #P message 252 205 43 196617 vasp.c=; #P message 252 160 43 196617 vasp.c/; #P message 252 136 44 196617 vasp.c*; #P message 251 92 42 196617 vasp.c-; #P message 251 70 43 196617 vasp.c+; #P hidden newex 417 333 39 196617 s ohelp; #P message 63 416 50 196617 vasp.sign; #P message 63 394 41 196617 vasp.%; #P message 63 373 45 196617 vasp.abs; #P message 63 350 41 196617 vasp.!=; #P message 63 327 44 196617 vasp.==; #P message 63 304 43 196617 vasp.>=; #P message 63 280 43 196617 vasp.<=; #P message 63 256 35 196617 vasp.>; #P message 63 232 35 196617 vasp.<; #P message 63 207 38 196617 vasp.=; #P message 63 159 38 196617 vasp./; #P message 63 135 39 196617 vasp.*; #P message 62 92 35 196617 vasp.-; #P message 62 70 38 196617 vasp.+; #P comment 126 304 100 196617 vasp >= x; #P comment 126 280 100 196617 vasp >= x; #P comment 126 256 100 196617 vasp > x; #P comment 126 232 100 196617 vasp < x; #P comment 126 327 58 196617 equal to; #P comment 126 135 100 196617 multiplication; #P comment 126 159 100 196617 division; #P comment 125 92 100 196617 subtraction; #P comment 126 350 58 196617 not equal to; #P comment 126 394 158 196617 modulo (remainder of a division); #P comment 126 373 128 196617 absolute value of a vasp; #P comment 125 70 100 196617 addition; #P comment 251 49 73 196617 complex ....; #P comment 27 24 151 196622 vasp_arithmetic; #P comment 126 207 100 196617 vasp = x; #P comment 126 416 204 196617 values < 0 become -1 | values > 0 become 1; #P comment 336 49 100 196617 radius ....; #P hidden connect 43 0 31 0; #P hidden connect 42 0 31 0; #P hidden connect 41 0 31 0; #P hidden connect 39 0 31 0; #P hidden connect 37 0 31 0; #P hidden connect 36 0 31 0; #P hidden connect 35 0 31 0; #P hidden connect 34 0 31 0; #P hidden connect 33 0 31 0; #P hidden connect 32 0 31 0; #P hidden connect 30 0 31 0; #P hidden connect 29 0 31 0; #P hidden connect 28 0 31 0; #P hidden connect 27 0 31 0; #P hidden connect 26 0 31 0; #P hidden connect 25 0 31 0; #P hidden connect 23 0 31 0; #P hidden connect 21 0 31 0; #P hidden connect 19 0 31 0; #P hidden connect 18 0 31 0; #P hidden connect 17 0 31 0; #P hidden connect 20 0 31 0; #P hidden connect 22 0 31 0; #P hidden connect 24 0 31 0; #P hidden connect 46 0 31 0; #P hidden connect 48 0 31 0; #P pop; #P newobj 60 109 85 196617 p vasp.arithmetic; #N vpatcher 528 390 958 618; #P origin 25 0; #P message 234 86 52 196617 vasp.r!fft; #P message 234 59 49 196617 vasp.rfft; #P message 64 133 55 196617 vasp.polar; #P message 64 86 52 196617 vasp.c!fft; #P message 64 59 49 196617 vasp.cfft; #P hidden newex 309 192 39 196617 s ohelp; #P comment 121 133 238 196617 changes between cartesian and polar representation; #P comment 287 86 114 196617 inverse real fft; #P comment 121 59 100 196617 complex fft; #P comment 121 86 100 196617 inverse complex fft; #P comment 287 59 100 196617 real fft; #P comment 26 22 135 196622 vasp_fftobjects; #P comment 121 177 238 196617 changes between polar and cartesian representation; #P message 64 177 51 196617 vasp.rect; #P hidden fasten 11 0 8 0 69 161 314 161; #P hidden fasten 10 0 8 0 69 113 314 113; #P hidden fasten 9 0 8 0 69 78 314 78; #P hidden fasten 0 0 8 0 69 198 314 198; #P hidden fasten 12 0 8 0 239 113 314 113; #P hidden fasten 13 0 8 0 239 77 314 77; #P pop; #P newobj 60 87 85 196617 p vasp.fftobjects; #N vpatcher 506 170 738 299; #P origin 0 12; #P hidden newex 149 90 39 196617 s ohelp; #P message 65 79 44 196617 vasp.flp; #P message 65 53 45 196617 vasp.fhp; #P comment 116 79 100 196617 low pass; #P comment 116 53 100 196617 high pass; #P comment 24 21 117 196622 vasp_filters; #P hidden connect 4 0 5 0; #P hidden connect 3 0 5 0; #P pop; #P newobj 60 155 69 196617 p vasp.filters; #N vpatcher 193 174 800 440; #P origin 0 -227; #P hidden newex 371 208 39 196617 s ohelp; #P message 422 192 59 196617 vasp.*cosc; #P message 422 169 65 196617 vasp.*!bevel; #P message 422 146 63 196617 vasp.*bevel; #P message 422 100 69 196617 vasp.*phasor; #P message 422 77 54 196617 vasp.*osc; #P message 60 214 60 196617 vasp.cnoise; #P message 60 191 52 196617 vasp.cosc; #P message 60 168 59 196617 vasp.!bevel; #P message 60 145 55 196617 vasp.bevel; #P message 60 122 55 196617 vasp.noise; #P message 60 99 62 196617 vasp.phasor; #P message 60 76 45 196617 vasp.osc; #P comment 60 56 126 196617 generate .....; #P comment 128 169 120 196617 vasp ramp from 1- 0; #P comment 128 145 120 196617 vasp ramp from 0 - 1; #P comment 128 121 120 196617 vasp noise generator; #P comment 128 98 120 196617 vasp saw tooth generator; #P comment 128 75 126 196617 vasp sine wave generator; #P comment 292 59 283 196617 multiplies a buffer content with the oscillator functions ...; #P comment 128 217 140 196617 complex noise; #P comment 128 192 140 196617 complex sine wave; #P comment 26 22 138 196622 vasp_generators; #P hidden connect 21 0 22 0; #P hidden connect 20 0 22 0; #P hidden connect 19 0 22 0; #P hidden connect 18 0 22 0; #P hidden connect 17 0 22 0; #P hidden connect 16 0 22 0; #P hidden connect 15 0 22 0; #P hidden connect 14 0 22 0; #P hidden connect 13 0 22 0; #P hidden connect 12 0 22 0; #P hidden connect 11 0 22 0; #P hidden connect 10 0 22 0; #P pop; #P newobj 60 132 89 196617 p vasp.generators; #P comment 25 23 121 196622 vasp_objects; #P pop; #P newobj 301 248 49 196617 p objects; #P comment 45 152 478 196617 vasp objects are using a specialized message syntax for all objects to refer to a buffer or a part of it.; #N vpatcher 120 60 880 570; #P origin 0 97; #P comment 104 1341 139 196617 set all samples of buf5/6 to 0; #P message 246 1340 75 196617 vasp buf5 buf6; #P newex 246 1382 61 196617 vasp.update; #P newex 246 1360 45 196617 vasp.= 0; #P comment 38 1289 207 196617 and modulate the noise with a 4Hz sine wave; #P newex 246 1206 55 196617 vasp.* 0.5; #P hidden newex 494 37 45 196617 loadbang; #P comment 725 1385 13 196620 |||; #P newex 517 1384 92 196617 buffer~ buf6 2000; #P newex 517 1364 92 196617 buffer~ buf5 2000; #P newex 518 1122 92 196617 buffer~ buf4 2000; #P newex 504 848 92 196617 buffer~ buf3 2000; #P newex 504 828 92 196617 buffer~ buf2 2000; #P newex 501 414 92 196617 buffer~ buf1 2000; #P hidden newex 373 599 45 196617 loadbang; #P hidden message 494 57 205 196617 window size 120 60 880 570 \, window exec; #N thispatcher; #Q end; #P hidden newobj 494 75 59 196617 thispatcher; #P comment 555 1273 63 196617 buffer buf6; #P comment 554 1180 63 196617 buffer buf5; #P comment 94 1158 37 196617 - to:; #P comment 115 1076 127 196617 set all samples of buf1 to 0; #P comment 553 1030 63 196617 buffer buf4; #P message 246 1268 115 196617 to vasp buf6 \, vasp buf5; #P newex 246 1311 61 196617 vasp.update; #P newex 246 1287 85 196617 vasp.*osc 11025; #P newex 246 1228 61 196617 vasp.update; #P newex 246 1184 55 196617 vasp.noise; #P message 246 1074 52 196617 vasp buf4; #P newex 246 1116 61 196617 vasp.update; #P newex 246 1094 45 196617 vasp.= 0; #P hidden message 387 1271 45 196617 set buf6; #P user waveform~ 387 1287 223 74 3 9; #W mode none; #W mouseoutput none; #W unit ms; #W grid 1000.; #W ticks 8.; #W labels 1; #W vlabels 1; #W vticks 1; #W vzoom 1.; #W voffset 0.; #W bpm 120. 4.; #W frgb 0 0 0; #W brgb 255 255 255; #W rgb2 132 132 132; #W rgb3 0 0 0; #W rgb4 0 0 0; #W rgb5 255 255 255; #W rgb6 100 100 100; #W rgb7 100 100 100; #P hidden newex 387 1158 45 196617 loadbang; #P hidden message 387 1177 45 196617 set buf5; #P user waveform~ 387 1195 223 74 3 9; #W mode none; #W mouseoutput none; #W unit ms; #W grid 1000.; #W ticks 8.; #W labels 1; #W vlabels 1; #W vticks 1; #W vzoom 1.; #W voffset 0.; #W bpm 120. 4.; #W frgb 0 0 0; #W brgb 255 255 255; #W rgb2 132 132 132; #W rgb3 0 0 0; #W rgb4 0 0 0; #W rgb5 255 255 255; #W rgb6 100 100 100; #W rgb7 100 100 100; #P button 193 993 15 0; #P hidden newex 387 1002 45 196617 loadbang; #P hidden message 387 1029 45 196617 set buf4; #P newex 246 1049 61 196617 vasp.update; #P newex 246 1024 80 196617 vasp.osc 22050; #P user waveform~ 387 1045 223 74 3 9; #W mode none; #W mouseoutput none; #W unit ms; #W grid 1000.; #W ticks 8.; #W labels 1; #W vlabels 1; #W vticks 1; #W vzoom 1.; #W voffset 0.; #W bpm 120. 4.; #W frgb 0 0 0; #W brgb 255 255 255; #W rgb2 132 132 132; #W rgb3 0 0 0; #W rgb4 0 0 0; #W rgb5 255 255 255; #W rgb6 100 100 100; #W rgb7 100 100 100; #P comment 539 737 63 196617 buffer buf3; #P comment 534 644 63 196617 buffer buf2; #P comment 536 324 57 196617 buffer buf1; #P comment 117 748 112 196617 set all samples of buf1 and buf2 to 0; #P message 231 750 75 196617 vasp buf2 buf3; #P newex 231 788 61 196617 vasp.update; #P newex 231 768 45 196617 vasp.= 0; #P newex 228 705 61 196617 vasp.update; #P newex 228 680 80 196617 vasp.osc 22050; #P comment 92 375 127 196617 set all samples of buf1 to 0; #P comment 92 320 135 196617 generate a sine wave at 2Hz; #P message 229 376 55 196617 vasp buf1; #P newex 229 414 61 196617 vasp.update; #P newex 229 394 45 196617 vasp.= 0; #P hidden message 373 734 45 196617 set buf3; #P user waveform~ 373 751 223 74 3 9; #W mode none; #W mouseoutput none; #W unit ms; #W grid 1000.; #W ticks 8.; #W labels 1; #W vlabels 1; #W vticks 1; #W vzoom 1.; #W voffset 0.; #W bpm 120. 4.; #W frgb 0 0 0; #W brgb 255 255 255; #W rgb2 132 132 132; #W rgb3 0 0 0; #W rgb4 0 0 0; #W rgb5 255 255 255; #W rgb6 100 100 100; #W rgb7 100 100 100; #P hidden message 373 641 45 196617 set buf2; #P hidden newex 373 620 35 196617 del 10; #P user waveform~ 373 659 223 74 3 9; #W mode none; #W mouseoutput none; #W unit ms; #W grid 1000.; #W ticks 8.; #W labels 1; #W vlabels 1; #W vticks 1; #W vzoom 1.; #W voffset 0.; #W bpm 120. 4.; #W frgb 0 0 0; #W brgb 255 255 255; #W rgb2 132 132 132; #W rgb3 0 0 0; #W rgb4 0 0 0; #W rgb5 255 255 255; #W rgb6 100 100 100; #W rgb7 100 100 100; #P newex 228 343 61 196617 vasp.update; #P newex 228 318 80 196617 vasp.osc 22050; #P hidden message 370 319 45 196617 set buf1; #P hidden newex 370 299 45 196617 loadbang; #P user waveform~ 370 338 223 74 3 9; #W mode none; #W mouseoutput none; #W unit ms; #W grid 1000.; #W ticks 8.; #W labels 1; #W vlabels 1; #W vticks 1; #W vzoom 1.; #W voffset 0.; #W bpm 120. 4.; #W frgb 0 0 0; #W brgb 255 255 255; #W rgb2 132 132 132; #W rgb3 0 0 0; #W rgb4 0 0 0; #W rgb5 255 255 255; #W rgb6 100 100 100; #W rgb7 100 100 100; #P comment 117 1270 127 196617 sets the target buffer buf6; #P message 246 1158 52 196617 vasp buf5; #P comment 379 202 117 196617 (default 0); #P comment 351 993 214 196617 sets the message \, bang triggers the operation; #P comment 63 958 198 196622 additional vasp messages:; #P message 246 993 102 196617 set vasp 44100 buf4; #P comment 130 868 502 196617 a vasp message can contain as many vectors as you like \, but all vectors have the same length; #P comment 391 570 281 196617 refering to buffer buf1 from 0 sec to 1 sec on channel 0 and buffer buf2 from 0.5 sec to 1.5 sec on channel 0; #P message 228 573 159 196617 vasp 44100 buf2 0 0 buf3 22050; #P comment 92 574 135 196617 two vectored vasp message:; #P comment 92 527 395 196617 all vectors have the same length \, but the vectors can differ in the buffers and offsets; #P comment 74 497 269 196617 - if a vasp message contains more than one vector:; #P comment 296 226 117 196617 (default 0); #P comment 354 270 284 196617 refering to buffer buf1 from 0.5 sec to 1.5 sec on channel 0; #P message 228 269 125 196617 vasp 44100 buf1 22050 0; #P comment 92 271 135 196617 one vectored vasp message:; #P comment 379 153 141 196617 which does the same.; #P message 336 151 43 196617 vasp -1; #P comment 92 153 192 196617 if missing \, it refers to the whole buffer; #P message 169 225 125 196617 vasp 44100 buf1 22050 0; #P comment 92 226 75 196617 and the channel; #P message 258 201 118 196617 vasp 44100 buf1 22050; #P comment 92 202 138 196617 an optional offset in samples; #P message 258 179 85 196617 vasp 44100 buf1; #P comment 92 180 164 196617 the name of the buffer it refers to; #P message 271 131 62 196617 vasp 44100; #P comment 92 134 173 196617 followed by the length in samples; #P message 214 110 31 196617 vasp; #P comment 63 43 158 196622 the vasp message:; #P comment 63 1 124 196622 vasp_syntax; #P comment 74 85 362 196617 - a vasp message is structured by the following parts:; #P comment 92 112 113 196617 it always starts with; #P comment 291 153 41 196617 or type; #P comment 94 993 37 196617 - set:; #P comment 725 473 14 196620 |; #P comment 725 934 13 196620 ||; #P connect 21 0 39 0; #P connect 39 0 40 0; #P connect 27 0 51 0; #P connect 51 0 52 0; #P connect 48 0 46 0; #P connect 46 0 47 0; #P connect 55 0 53 0; #P connect 53 0 54 0; #P connect 30 0 61 0; #P fasten 65 0 61 0 198 1014 251 1014; #P connect 61 0 62 0; #P connect 73 0 71 0; #P connect 71 0 72 0; #P connect 34 0 74 0; #P connect 74 0 95 0; #P connect 95 0 75 0; #P connect 78 0 76 0; #P connect 76 0 77 0; #P connect 99 0 97 0; #P connect 97 0 98 0; #P hidden connect 37 0 38 0; #P hidden connect 38 0 36 0; #P hidden connect 86 0 42 0; #P hidden connect 42 0 43 0; #P hidden connect 43 0 41 0; #P hidden connect 42 0 45 0; #P hidden connect 45 0 44 0; #P hidden connect 64 0 63 0; #P hidden connect 63 0 60 0; #P hidden connect 68 0 67 0; #P hidden connect 67 0 66 0; #P hidden connect 68 0 70 0; #P hidden connect 70 0 69 0; #P hidden connect 94 0 85 0; #P hidden connect 85 0 84 0; #P pop; #P newobj 134 248 45 196617 p syntax; #P comment 25 41 148 196622 vasp_modular.help; #P comment 45 120 354 196617 vasp is a library of objects for max/msp and pd \,; #P comment 45 348 432 196617 inspired by gŸnther rabl«s fft-box and tool-box. find gŸnther rabl at www.canto-crudo.com; #P comment 45 75 362 196620 vasp modular - vector assembling signal processor ©2002 thomas grill; #P comment 45 365 470 196617 vasp.help patches by florian bogner and oliver grimm - ©2002 patcherboys - www.patcherboys.com; #P comment 45 168 570 196617 these help patches should give you an idea of what is possible. feel free to combine different patches to more complex ones.; #P hidden connect 18 0 20 0; #P hidden connect 17 0 16 0; #P hidden connect 20 0 19 0; #P pop;