Forums > MaxMSP

breakpoint editors


April 28, 2007 | 10:42 am

I would love to have a breakpoint editor like function which allows me to draw proper curves.
"technoui!" i hear you typing, but complex javascript objects are a pain when you have more than a few , and you are using pattrstorage to recall data. technoui takes several seconds to recall its data on my powerbook g4 1.25ghz.
has anyone seen anything made in lcd or anything else? function is too limited for sound sculpting

April 28, 2007 | 2:58 pm

technou… oh wait.. but that is the only one I know of… I did see this really kick ass note step sequencer that had a curve drawing function for the waveform.. oh found it, lets see if this is any good for adapting to what you want. I cant seem to remeber how to engage the curve funct, it says right click. see if it works for you

April 29, 2007 | 2:40 pm

that is my own patch!

anyway , has anyone else built any curve drawing tools? something like the evelope editor in FM7 would be very useful!

April 29, 2007 | 2:51 pm

If you are willing to do some text-specification, you may want to
check out some of the [gen*]objects in thee pErCOlate distribution:

http://music.columbia.edu/PeRColate/

They were derived from a larger set in RTcmix, but unfortunately the
current [rtcmix~] doesn’t have a way to dump envelope specifications
into max/msp buffers. The new version (coming soon!) will, I hope.

brad
http://music.columbia.edu/~brad

Quoting bin ray :

>
> that is my own patch!
>
> anyway , has anyone else built any curve drawing tools? something
> like the evelope editor in FM7 would be very useful!
> –
> http://www.myspace.com/binray
>

April 29, 2007 | 5:18 pm

the gen objects look good (the chebyshev one is great), and the breakpoint ones look pretty useful. i’ll see what i can do with them

April 29, 2007 | 9:52 pm

after some experimentation, ive found i can make a pretty decent breakpoint editor with waveform~ and lp.scampf. (very nice object that, Mr Castine)

click to add a new point, you can drag points around like function, snap to grid, then if you alt click and drag up and down the curve of that segment changes, similar to technoui. theres a big button to generate random curves….pity you cant see the breakpoints though.

#P window setfont "Sans Serif" 12.;
#P window linecount 1;
#P comment 97 214 60 196620 random;
#P window setfont "Sans Serif" 9.;
#P newex 834 318 27 196617 t l b;
#P newex 43 407 33 196617 r init;
#P newex 43 433 48 196617 loadbang;
#P hidden newex 43 354 66 196617 loadmess 16;
#P button 55 321 19 0;
#P newex 76 321 33 196617 s init;
#P hidden newex 938 182 33 196617 r init;
#P newex 897 448 33 196617 r init;
#P newex 351 667 27 196617 t b i;
#P newex 314 601 27 196617 f;
#P newex 314 621 29 196617 * 0.;
#P newex 351 645 74 196617 zmap 0 1 -1 1;
#P newex 351 621 33 196617 >= 0.;
#P newex 351 601 27 196617 – 0.;
#P window setfont "Sans Serif" 12.;
#P comment 98 297 46 196620 points;
#P number 55 296 41 12 0 100 3 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 55 248 41 12 1 1024 3 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont "Sans Serif" 9.;
#P hidden newex 937 162 36 196617 s grid;
#P newex 577 429 36 196617 r grid;
#N vpatcher 10 59 610 459;
#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P newex 236 28 33 196617 r init;
#P inlet 136 32 15 0;
#P window linecount 0;
#P newex 31 84 36 196617 r grid;
#P newex 236 50 48 196617 loadbang;
#P message 237 72 38 196617 sym 1;
#P newex 50 178 32 196617 * 20;
#P newex 50 143 31 196617 / 20;
#P newex 95 51 30 196617 t b b;
#P objectname von[6];
#P newex 183 172 178 196617 lp.scampf map 0 1000 16 -16 pow 3.;
#P newex 161 140 46 196617 / 1000.;
#P newex 240 113 70 196617 random 1000;
#P objectname von[5];
#P newex 104 172 66 196617 pack 0 0. 0.;
#P objectname von[4];
#P newex 75 113 70 196617 random 1024;
#P objectname von[3];
#P newex 93 80 40 196617 uzi 16;
#P objectname von[2];
#P newex 159 113 70 196617 random 1000;
#P objectname von[1];
#P inlet 95 31 15 0;
#P outlet 152 303 15 0;
#P outlet 261 299 15 0;
#P outlet 97 301 15 0;
#P connect 6 0 12 0;
#P connect 12 0 13 0;
#P connect 16 0 12 1;
#P connect 16 0 13 1;
#P connect 5 0 6 0;
#P connect 11 0 5 0;
#P connect 3 0 11 0;
#P connect 7 0 0 0;
#P connect 13 0 7 0;
#P connect 17 0 5 1;
#P connect 9 0 7 1;
#P connect 5 1 2 0;
#P connect 5 0 4 0;
#P connect 10 0 7 2;
#P connect 4 0 9 0;
#P connect 8 0 10 0;
#P connect 14 0 10 0;
#P connect 18 0 15 0;
#P connect 15 0 14 0;
#P connect 5 0 8 0;
#P connect 11 1 1 0;
#P pop;
#P newobj 232 206 64 196617 p randomize;
#P newex 538 477 40 196617 t f f b;
#P newex 309 302 27 196617 t i i;
#P newex 192 271 40 196617 t b b b;
#P newex 173 393 30 196617 t b b;
#P newex 288 231 53 196617 t b b b b;
#P newex 151 439 40 196617 t i i i;
#P button 55 205 40 0;
#P newex 899 470 48 196617 loadbang;
#P newex 538 536 32 196617 sel 0;
#P newex 538 395 62 196617 clip 0 1024;
#P newex 806 494 50 196617 clip 0. 1.;
#P message 192 315 52 196617 1023 0 0;
#P message 192 295 34 196617 0 0 0;
#P message 900 492 38 196617 sym 1;
#P newex 715 445 27 196617 t l l;
#P window linecount 2;
#P newex 860 515 80 196617 lp.scampf map 0 1 16 -16 pow 3.;
#P flonum 860 560 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window linecount 1;
#P newex 683 500 63 196617 pack 0 0. 0.;
#P newex 641 556 52 196617 zl reg;
#P newex 308 352 64 196617 unpack 0. 0.;
#P newex 641 527 32 196617 sel 0;
#P newex 683 477 73 196617 unpack 0 0. 0.;
#P newex 684 399 27 196617 1;
#P newex 715 399 29 196617 gate;
#P message 641 476 20 196617 $1;
#P newex 806 557 40 196617 t b f b;
#P newex 806 536 47 196617 * 1024.;
#P flonum 860 495 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 806 516 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 806 425 44 196617 zl rot 1;
#P newex 806 470 64 196617 unpack 0. 0.;
#P newex 806 447 52 196617 route 1 2;
#P newex 641 506 27 196617 < 0.;
#N coll b;
#P newobj 715 423 53 196617 coll b;
#P newex 700 374 44 196617 uzi 100;
#P message 751 299 55 196617 interval 0;
#P newex 742 275 48 196617 loadbang;
#P newex 778 350 66 196617 modifiers;
#P newex 806 403 38 196617 gate 2;
#P hidden message 937 117 43 196617 grid $1;
#P newex 538 452 32 196617 * 20;
#P newex 538 420 31 196617 / 20;
#P hidden newex 940 138 48 196617 loadbang;
#P hidden message 939 61 42 196617 1024;
#P newex 538 371 47 196617 * 1024.;
#P newex 538 514 27 196617 i;
#P message 538 558 59 196617 remove $1;
#P newex 538 343 64 196617 unpack 0. 0.;
#P newex 538 315 43 196617 route 2;
#P toggle 306 205 15 0;
#P newex 197 563 64 196617 unpack 0. 0.;
#N coll b;
#P newobj 197 539 53 196617 coll b;
#P newex 272 563 76 196617 unpack 0. 0. 0.;
#P newex 197 465 20 196617 t b;
#N coll a;
#P newobj 196 441 53 196617 coll a;
#N counter;
#X flags 0 0;
#P newobj 197 490 66 196617 counter;
#P newex 142 414 50 196617 uzi 1024;
#P message 355 299 60 196617 sort -1 -1;
#N coll b;
#P newobj 273 539 53 196617 coll b;
#P newex 308 379 29 196617 t b f;
#N counter;
#X flags 0 0;
#P newobj 308 407 66 196617 counter;
#P newex 308 516 72 196617 pack 0 0 0. 0.;
#P window setfont "Sans Serif" 12.;
#P message 54 271 42 196620 clear;
#P window setfont "Sans Serif" 9.;
#P message 323 205 57 196617 vlabels $1;
#P newex 71 577 51 196617 pack 0 0.;
#P newex 71 599 54 196617 peek~ zeq;
#P newex 133 600 173 196617 lp.scampf map 0. 1024. 0. 1. pow 1.;
#P hidden newex 937 84 40 196617 / 44.1;
#P newex 355 266 20 196617 t b;
#P newex 290 274 59 196617 uzi 1024 0;
#P newex 435 417 63 196617 pack 0 0. 0.;
#P flonum 434 382 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 435 362 47 196617 * 1024.;
#N coll a;
#P newobj 309 329 53 196617 coll a;
#P hidden message 995 138 42 196617 set zeq;
#P newex 43 385 89 196617 buffer~ zeq 1000;
#P newex 473 253 44 196617 zl rot 1;
#P flonum 488 342 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 435 342 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 461 312 64 196617 unpack 0. 0.;
#P newex 473 286 43 196617 route 1;
#P newex 806 377 27 196617 + 1;
#P newex 273 516 27 196617 + 1;
#P window setfont "Sans Serif" 12.;
#P comment 100 249 33 196620 grid;
#P window setfont "Sans Serif" 9.;
#P user waveform~ 39 45 863 147 3 9;
#W mode none;
#W snap grid;
#W mouseoutput continuous;
#W unit samples;
#W grid 16.;
#W ticks 0;
#W labels 0;
#W vlabels 1;
#W vticks 0;
#W vzoom 0.5;
#W voffset 1.;
#W bpm 120. 4.;
#W frgb 255 255 0;
#W brgb 0 0 0;
#W rgb2 48 248 0;
#W rgb3 42 42 42;
#W rgb4 0 0 0;
#W rgb5 190 137 255;
#W rgb6 125 125 80;
#W rgb7 50 50 50;
#P objectname pony;
#P window setfont "Sans Serif" 12.;
#P comment 113 322 75 196620 initialize;
#P user panel 39 198 136 151;
#X brgb 191 191 191;
#X frgb 0 0 0;
#X border 1;
#X rounded 0;
#X shadow 0;
#X done;
#P hidden connect 44 0 47 0;
#P hidden connect 44 0 43 0;
#P hidden connect 44 0 12 0;
#P hidden connect 100 0 44 0;
#P hidden connect 90 0 89 0;
#P hidden connect 90 0 47 0;
#P hidden connect 43 0 19 0;
#P connect 79 0 73 0;
#P connect 99 0 79 0;
#P connect 71 0 70 0;
#P connect 73 0 71 0;
#P connect 59 0 71 0;
#P connect 56 1 59 0;
#P connect 106 0 48 1;
#P connect 2 4 106 0;
#P connect 60 0 61 0;
#P connect 58 0 60 0;
#P connect 76 0 58 0;
#P connect 56 0 76 0;
#P connect 55 1 56 0;
#P connect 55 0 56 0;
#P connect 57 0 55 0;
#P connect 48 1 57 0;
#P connect 5 0 48 0;
#P connect 49 2 5 0;
#P connect 51 0 49 0;
#P connect 106 1 49 0;
#P connect 50 0 51 0;
#P connect 70 0 69 2;
#P connect 52 2 63 1;
#P connect 53 0 72 0;
#P connect 63 0 53 0;
#P connect 54 0 66 0;
#P connect 54 0 63 0;
#P connect 64 0 63 0;
#P connect 65 1 69 1;
#P connect 61 0 52 0;
#P connect 61 2 64 0;
#P connect 69 0 68 1;
#P connect 65 0 69 0;
#P connect 72 1 65 0;
#P connect 61 1 54 1;
#P connect 66 0 68 0;
#P connect 62 0 54 0;
#P connect 72 0 62 0;
#P connect 88 0 46 1;
#P connect 88 0 45 1;
#P connect 15 0 16 0;
#P connect 15 0 41 1;
#P connect 86 1 41 1;
#P connect 78 1 40 0;
#P connect 41 0 78 0;
#P connect 86 2 41 0;
#P connect 46 0 86 0;
#P connect 45 0 46 0;
#P connect 77 0 45 0;
#P connect 42 0 77 0;
#P connect 39 0 42 0;
#P connect 38 0 18 0;
#P connect 38 0 39 0;
#P connect 10 0 6 0;
#P connect 10 0 38 0;
#P connect 7 1 9 0;
#P connect 48 0 10 0;
#P connect 9 0 16 1;
#P connect 39 1 16 1;
#P connect 6 0 18 0;
#P connect 6 0 7 0;
#P connect 86 0 16 0;
#P connect 8 0 14 0;
#P connect 7 0 8 0;
#P connect 14 0 15 0;
#P connect 34 1 20 3;
#P connect 34 1 93 1;
#P connect 67 1 25 3;
#P connect 95 0 98 0;
#P connect 94 0 95 0;
#P connect 93 0 94 0;
#P connect 36 1 20 4;
#P connect 36 1 93 0;
#P connect 27 1 25 2;
#P connect 82 1 26 2;
#P connect 98 1 96 1;
#P connect 34 2 97 1;
#P connect 85 1 25 1;
#P connect 37 0 23 0;
#P connect 97 0 96 0;
#P connect 98 0 97 0;
#P hidden connect 24 0 11 0;
#P hidden connect 24 0 84 0;
#P hidden connect 24 0 28 0;
#P hidden connect 24 0 13 0;
#P connect 87 0 13 0;
#P connect 85 0 13 0;
#P connect 68 0 13 0;
#P connect 75 0 13 0;
#P connect 74 0 13 0;
#P connect 16 0 13 0;
#P connect 40 0 13 0;
#P connect 29 0 13 0;
#P connect 17 2 85 0;
#P connect 26 0 25 0;
#P connect 27 0 26 0;
#P connect 67 0 27 0;
#P connect 13 0 67 0;
#P connect 84 2 37 0;
#P connect 82 3 37 0;
#P connect 96 0 20 5;
#P connect 82 2 17 0;
#P connect 18 0 82 0;
#P connect 87 1 82 0;
#P connect 52 1 82 0;
#P hidden connect 91 0 87 1;
#P connect 25 0 28 0;
#P connect 4 0 28 0;
#P connect 31 0 35 0;
#P connect 31 0 4 0;
#P connect 28 0 34 0;
#P hidden connect 19 0 2 1;
#P connect 83 1 31 3;
#P hidden connect 80 0 87 0;
#P connect 36 0 20 2;
#P connect 35 0 36 0;
#P connect 33 0 31 0;
#P connect 32 0 33 0;
#P connect 81 2 32 0;
#P connect 84 1 75 0;
#P connect 84 0 74 0;
#P hidden connect 104 0 84 0;
#P connect 82 0 83 0;
#P connect 34 0 20 1;
#P connect 30 2 81 0;
#P connect 83 0 30 0;
#P connect 81 0 20 0;
#P connect 20 0 22 1;
#P connect 102 0 101 0;
#P connect 22 0 21 0;
#P connect 81 1 22 0;
#P hidden connect 103 0 90 0;
#P hidden connect 87 2 24 0;
#P connect 105 0 104 0;
#P hidden connect 17 1 11 0;
#P hidden connect 12 0 2 0;
#P hidden connect 23 0 2 0;
#P hidden connect 47 0 2 0;
#P window clipboard copycount 108;

May 1, 2007 | 9:57 am

This isn’t really what you’re talking about but it does provide some pretty interesting features by combining the bpfunction with a scaling multislider, which is then output into another multislider. There’s periodic function generators for the scaling multislider, which when you dynamically change the number of periods, you get some really wild results. I have the 4095-point multisliders listfunneled into a buffer~ in the audio subpatch so you can hear the resulting waveform. The response is pretty smooth as far as managing the data, though many of the buffer examples give clicks.

Of course, the data in the multislider doesn’t have to be used this way, it’s just one possibility. I think other good ones would be to sample it at (say) intervals of 20-50 points, then apply that shorter list to the volume level of each oscillator in a huge bank. Or apply the curve as a highly dynamic EQ frequency boost / cut shape (like with filtergraph~ but more involved). Lots of possible applications there.

It’s also fun to record some automations and just watch the patterns unfold ;)

–CJ

——

#P user multiSlider 1127 588 23 51 0. 255. 1 2921 47 0 2 2 0 0 0;
#M frgb 255 255 255;
#M brgb 0 0 0;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P user swatch 988 589 136 50;
#P window setfont "Sans Serif" 14.;
#P window linecount 1;
#P hidden message 1014 583 91 9109518 saturation $1;
#P user multiSlider 1128 501 23 51 0. 255. 1 2921 47 0 2 2 0 0 0;
#M frgb 255 255 255;
#M brgb 0 0 0;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P user swatch 989 502 136 50;
#P flonum 58 662 51 14 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P user gain~ 13 661 42 54 158 0 1.071519 7.94321 10.;
#P window setfont "Sans Serif" 9.;
#P message 78 743 42 9109513 stop;
#P message 10 743 65 9109513 startwindow;
#P window setfont "Sans Serif" 18.;
#P comment 10 791 97 9109522 audio;
#P window setfont "Sans Serif" 14.;
#N vpatcher 640 168 1258 715;
#P window setfont "Sans Serif" 9.;
#P window linecount 0;
#P comment 407 256 138 9109513 approx buffer length at 22050 sampling rate;
#P inlet 285 167 15 0;
#P comment 29 441 138 9109513 probably going to get clicks for most buffers;
#P message 149 167 27 9109513 stop;
#P message 80 168 65 9109513 startwindow;
#P window setfont "Sans Serif" 14.;
#P flonum 464 227 73 14 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont "Sans Serif" 9.;
#P newex 464 196 27 9109513 !/ 1.;
#P window setfont "Sans Serif" 14.;
#P flonum 464 166 51 14 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 464 111 71 14 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont "Sans Serif" 9.;
#P newex 464 142 37 9109513 / 4095.;
#P window setfont "Sans Serif" 14.;
#P message 33 309 24 9109518 $2;
#P message 73 309 24 9109518 $1;
#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P newex 23 283 77 9109513 listfunnel 1;
#P user multiSlider 349 381 40 79 0. 1. 1 2681 15 0 0 2 0 0 0;
#M frgb 255 255 255;
#M brgb 0 0 0;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P comment 203 232 91 9109513 speed of loop;
#P inlet 208 167 15 0;
#P inlet 50 173 15 0;
#P window linecount 0;
#P newex 312 202 56 9109513 loadmess 1;
#P toggle 321 235 34 0;
#P message 307 275 58 9109513 loop $1;
#P user gain~ 268 343 24 100 158 0 1.071519 7.94321 10.;
#P window setfont "Sans Serif" 18.;
#P user number~ 345 345 405 370 18 139 3 2 0. 0. 0 0. 50 0. 0 0 0 221 221 221 222 222 222 0 0 0;
#P user gain~ 308 343 24 100 158 0 1.071519 7.94321 10.;
#P window setfont "Sans Serif" 9.;
#P newex 236 481 48 9109513 dac~;
#P user gain~ 229 343 24 100 158 0 1.071519 7.94321 10.;
#P window setfont "Sans Serif" 14.;
#P flonum 230 254 51 14 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont "Sans Serif" 9.;
#P newex 228 285 28 9109513 sig~;
#P newex 229 313 125 9109513 groove~ foo 2;
#P newex 24 249 27 9109513 t l b;
#P inlet 23 226 15 0;
#P window setfont "Sans Serif" 18.;
#P comment 30 57 106 9109522 poke~;
#B frgb 26 8 57;
#P window setfont "Sans Serif" 9.;
#P comment 30 83 292 9109513 Write into a buffer~ using a signal sample index;
#P user panel 25 53 400 50;
#X brgb 226 250 200;
#X frgb 0 0 0;
#X border 0;
#X rounded 0;
#X shadow 0;
#X done;
#P newex 50 217 29 9109513 dac~;
#P newex 27 408 74 9109513 buffer~ foo 186;
#P newex 27 355 150 9109513 poke~ foo;
#B color 5;
#P window linecount 4;
#P comment 33 107 399 9109513 poke~ allows you to write samples into a buffer~ at sample locations specified by a signal. Typically , the signal will increase in value by 1 with each sample to write successive values into successive samples (like record~). If the index signal is negative or larger than the size of the buffer~ , no data is recorded.;
#P window linecount 1;
#P comment 25 384 138 9109513 • double-click to see buffer~;
#P connect 9 0 25 0;
#P connect 8 0 9 0;
#P connect 27 0 2 0;
#P connect 25 0 27 0;
#P connect 21 0 4 0;
#P connect 33 0 4 0;
#P connect 34 0 4 0;
#P connect 25 0 26 0;
#P connect 26 0 2 1;
#P connect 12 0 11 0;
#P connect 18 0 10 0;
#P connect 11 0 10 0;
#P connect 17 1 13 0;
#P connect 10 0 13 0;
#P connect 20 0 12 0;
#P connect 36 0 12 0;
#P connect 13 0 14 0;
#P connect 22 0 17 0;
#P connect 15 0 14 1;
#P connect 19 0 18 0;
#P connect 10 1 15 0;
#P connect 17 1 15 0;
#P connect 20 0 19 0;
#P connect 10 2 16 0;
#P connect 16 1 24 0;
#P connect 29 0 28 0;
#P connect 28 0 30 0;
#P connect 30 0 31 0;
#P connect 31 0 32 0;
#P pop;
#P newobj 9 767 98 9109518 p buffer;
#P newex 502 332 37 9109518 tan;
#B color 1;
#P newex 454 332 30 9109518 cos;
#B color 1;
#P newex 407 332 43 9109518 sin;
#B color 1;
#P window setfont "Sans Serif" 18.;
#P user ubumenu 266 334 122 9109522 0 1 0 0;
#X setrgb 255 255 255 0 0 0 193 55 55 248 0 0 116 116 116 112 112 112;
#X add sine;
#X add cos;
#X add tangent;
#X prefix_set 0 0 0;
#X pattrmode 1;
#P comment 384 386 296 9109522 change function offset / scale;
#B color 1;
#P flonum 494 358 68 18 0 0 0 139 0 0 0 247 1 7 222 222 222 0 0 0;
#P flonum 494 411 68 18 0 0 0 139 0 0 0 247 1 7 222 222 222 0 0 0;
#P window setfont "Sans Serif" 14.;
#P window linecount 2;
#P comment 975 331 162 9109518 record some changes (including colors);
#B color 1;
#P window setfont "Sans Serif" 18.;
#P user ubumenu 944 268 122 9109522 0 1 1 0;
#X setrgb 255 255 255 0 0 0 193 55 55 248 0 0 116 116 116 112 112 112;
#X add stop;
#X add play;
#X add mute;
#X add unmute;
#X add read;
#X add write;
#X add record;
#X prefix_set 0 0
0;
#X pattrmode 1;
#P window setfont "Sans Serif" 14.;
#P window linecount 1;
#P newex 996 299 144 9109518 mtr 10;
#P window setfont "Sans Serif" 18.;
#P comment 748 296 228 9109522 !!!! *very cool results*;
#B color 1;
#P window setfont "Sans Serif" 14.;
#P newex 597 329 41 9109518 t b f;
#B color 1;
#P window setfont "Sans Serif" 18.;
#P flonum 596 298 68 18 0 0 0 139 0 0 0 247 1 7 222 222 222 0 0 0;
#P window setfont "Sans Serif" 14.;
#P newex 396 412 29 9109518 * 1.;
#B color 1;
#P newex 403 361 32 9109518 + 0.;
#B color 1;
#P window setfont "Sans Serif" 18.;
#P comment 667 356 239 9109522 number of cycles (2 * pi);
#B color 1;
#P number 675 299 65 18 0 0 0 139 0 0 0 247 1 7 222 222 222 0 0 0;
#P window setfont "Sans Serif" 14.;
#P newex 594 358 70 9109518 * 6.2832;
#B color 1;
#P message 207 410 94 9109518 select $1 $2;
#B color 1;
#P newex 333 305 36 9109518 t i i;
#B color 1;
#P newex 207 382 90 9109518 pack 0 0.;
#B color 1;
#P newex 411 279 153 9109518 scale 1 4095 0. 6.2832;
#B color 1;
#P button 333 240 31 1;
#P newex 333 277 61 9109518 uzi 4095;
#B color 1;
#P newex 408 306 156 9109518 gate 3 1;
#B color 1;
#P window setfont "Sans Serif" 18.;
#P window linecount 2;
#P comment 982 691 179 9109522 both are 4095-point multisliders , 0. to 1.;
#P comment 695 385 375 9109522 draw curves , use periodic function data , or use linear scale at left;
#P window setfont "Sans Serif" 14.;
#P window linecount 1;
#P message 987 664 41 9109518 0;
#P window setfont "Sans Serif" 18.;
#P comment 7 345 122 9109522 linear scale;
#P window setfont "Sans Serif" 14.;
#P newex 882 242 124 9109518 bgcolor 80 80 80;
#P window setfont "Sans Serif" 18.;
#P comment 399 244 292 9109522 points: 0. to 1. , 4095 range;
#P window linecount 2;
#P comment 988 447 143 9109522 scale bpfunction points by 0. to 1.;
#P window setfont "Sans Serif" 14.;
#P window linecount 1;
#P newex 38 78 44 9109518 t b s;
#P window setfont "Sans Serif" 18.;
#P number 51 525 65 18 10 0 1 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont "Sans Serif" 14.;
#P newex 24 500 93 9109518 speedlim 50;
#P newex 18 422 41 9109518 t b f;
#P button 23 375 15 0;
#P window setfont "Sans Serif" 18.;
#P flonum 18 394 59 18 0. 1. 3 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont "Sans Serif" 14.;
#P newex 56 449 38 9109518 * 1.;
#P message 100 400 59 9109518 fetch $1;
#P user multiSlider 133 444 844 165 -1. 1. 4095 2937 47 0 0 2 0 0 0;
#M frgb 2 0 224;
#M brgb 0 0 0;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P newex 169 291 101 9109518 t i i i;
#P newex 159 323 90 9109518 pack 0 0.;
#P button 92 251 31 0;
#P newex 92 290 61 9109518 uzi 4095;
#P window setfont "Sans Serif" 12.;
#P message 20 552 94 9109516 select $1 $2;
#P window setfont "Sans Serif" 14.;
#P message 38 47 48 9109518 clear;
#P user multiSlider 134 632 846 188 -1. 1. 4095 2937 47 0 0 2 0 0 0;
#M frgb 2 0 224;
#M brgb 0 0 0;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P user function 87 44 949 230 1 1 0 0;
#X frgb 255 255 255;
#X brgb 0 0 0;
#X rgb2 25 255 228;
#X rgb3 255 255 255;
#X rgb4 0 0 0;
#X rgb5 0 0 0;
#X add 38.541176 0.57764 0;
#X add 664.835266 0.937888 0;
#X add 1117.694092 0.192547 0;
#X add 1426.023438 0.968944 0;
#X add 1772.894043 0.118012 0;
#X add 2105.311768 0.993789 0;
#X add 2351.011719 0.236025 0;
#X add 2572.623535 0.944099 0;
#X add 3044.75293 0.10559 0;
#X add 3410.894043 0.913043 0;
#X add 3646.95874 0.273292 0;
#X add 4080.546875 0.608696 0;
#X domain 4095.;
#X range 0. 1.;
#X done;
#P window setfont "Sans Serif" 18.;
#P comment 985 774 122 9109522 output;
#P window setfont "Sans Serif" 14.;
#P hidden newex 480 411 41 9109518 t b f;
#B color 1;
#P hidden newex 481 364 41 9109518 t b f;
#B color 1;
#P comment 55 636 71 9109518 speed;
#P hidden newex 292 350 31 9109518 t b i;
#B color 1;
#P hidden newex 328 350 47 9109518 + 1;
#B color 1;
#P newex 967 44 89 9109518 loadmess 1;
#N vpreset 9;
#X append 1 1 48 298 596 flonum float 1. ; 54 411 494 flonum float 1. ; 55 358 494 flonum float 0. ; 57 334 266 ubumenu int 0 ; 12 44 87 function clear ; 12 44 87 function add 38.541176;
#X append 1 1 0.57764 0 ; 12 44 87 function add 4080.546875 0.608696 0 ; 12 44 87 function domain 4095. ; 12 44 87 function range 0. 1. ; 66 662 58 flonum float 10. ; 65 661 13 gain~ list 122;
#X append 1 1 10. ;;
#X append 2 1 48 298 596 flonum float 5.34 ; 54 411 494 flonum float 1. ; 55 358 494 flonum float 0. ; 57 334 266 ubumenu int 0 ; 12 44 87 function clear ; 12 44 87 function add 38.541176;
#X append 2 1 0.57764 0 ; 12 44 87 function add 664.835266 0.937888 0 ; 12 44 87 function add 1117.694092 0.192547 0 ; 12 44 87 function add 1772.894043 0.118012 0 ; 12 44 87 function add 2105.311768 0.993789 0 ; 12 44 87;
#X append 2 1 function add 2572.623535 0.944099 0 ; 12 44 87 function add 3044.75293 0.10559 0 ; 12 44 87 function add 3410.894043 0.913043 0 ; 12 44 87 function add 4080.546875 0.608696 0 ; 12 44 87 function domain 4095. ;;
#X append 2 1 12 44 87 function range 0. 1. ; 66 662 58 flonum float 10. ; 65 661 13 gain~ list 122 10. ;;
#X append 3 1 48 298 596 flonum float 5.34 ; 54 411 494 flonum float 0.15 ; 55 358 494 flonum float 0. ; 57 334 266 ubumenu int 0 ; 12 44 87 function clear ; 12 44 87 function add 38.541176;
#X append 3 1 0.57764 0 ; 12 44 87 function add 664.835266 0.937888 0 ; 12 44 87 function add 1117.694092 0.192547 0 ; 12 44 87 function add 1772.894043 0.118012 0 ; 12 44 87 function add 2105.311768 0.993789 0 ; 12 44 87;
#X append 3 1 function add 2351.011719 0.236025 0 ; 12 44 87 function add 2572.623535 0.944099 0 ; 12 44 87 function add 3044.75293 0.10559 0 ; 12 44 87 function add 3410.894043 0.913043 0 ; 12 44 87 function add 3646.95874 0.273292;
#X append 3 1 0 ; 12 44 87 function add 4080.546875 0.608696 0 ; 12 44 87 function domain 4095. ; 12 44 87 function range 0. 1. ; 66 662 58 flonum float 5. ; 65 661 13 gain~ list 122 10.;
#X append 3 1 ;;
#X append 4 1 48 298 596 flonum float 5.34 ; 54 411 494 flonum float 0.76 ; 55 358 494 flonum float 0.07 ; 57 334 266 ubumenu int 0 ; 12 44 87 function clear ; 12 44 87 function add 38.541176;
#X append 4 1 0.57764 0 ; 12 44 87 function add 664.835266 0.937888 0 ; 12 44 87 function add 1117.694092 0.192547 0 ; 12 44 87 function add 1426.023438 0.968944 0 ; 12 44 87 function add 1772.894043 0.118012 0 ; 12 44 87;
#X append 4 1 function add 2105.311768 0.993789 0 ; 12 44 87 function add 2351.011719 0.236025 0 ; 12 44 87 function add 2572.623535 0.944099 0 ; 12 44 87 function add 3044.75293 0.10559 0 ; 12 44 87 function add 3410.894043 0.913043;
#X append 4 1 0 ; 12 44 87 function add 3646.95874 0.273292 0 ; 12 44 87 function add 4080.546875 0.608696 0 ; 12 44 87 function domain 4095. ; 12 44 87 function range 0. 1. ; 66 662 58 flonum float;
#X append 4 1 5. ; 65 661 13 gain~ list 122 10. ;;
#X append 5 1 48 298 596 flonum float 21. ; 54 411 494 flonum float 0.76 ; 55 358 494 flonum float 0.07 ; 57 334 266 ubumenu int 0 ; 12 44 87 function clear ; 12 44 87 function add 0.;
#X append 5 1 0. 0 ; 12 44 87 function add 766.005859 0.807453 0 ; 12 44 87 function add 2090.858643 0.180124 0 ; 12 44 87 function add 2837.593994 0.919255 0 ; 12 44 87 function add 3733.67627 0.192547 0 ; 12 44 87;
#X append 5 1 function add 4027.552734 0.745342 0 ; 12 44 87 function add 4095. 0.459627 0 ; 12 44 87 function domain 4095. ; 12 44 87 function range 0. 1. ; 66 662 58 flonum float 12. ; 65 661 13;
#X append 5 1 gain~ list 122 10. ;;
#X append 6 1 48 298 596 flonum float 443. ; 54 411 494 flonum float 0.38 ; 55 358 494 flonum float -0.32 ; 57 334 266 ubumenu int 2 ; 12 44 87 function clear ; 12 44 87 function add 0.;
#X append 6 1 0. 0 ; 12 44 87 function add 766.005859 0.807453 0 ; 12 44 87 function add 1445.294067 0.956522 0 ; 12 44 87 function add 1695.811646 0.229814 0 ; 12 44 87 function add 2042.682251 0.981366 0 ; 12 44 87;
#X append 6 1 function add 2090.858643 0.180124 0 ; 12 44 87 function add 2355.829346 0.944099 0 ; 12 44 87 function add 2505.17627 0.130435 0 ; 12 44 87 function add 2837.593994 0.919255 0 ; 12 44 87 function add 3733.67627 0.192547;
#X append 6 1 0 ; 12 44 87 function add 4027.552734 0.745342 0 ; 12 44 87 function add 4095. 0.459627 0 ; 12 44 87 function domain 4095. ; 12 44 87 function range 0. 1. ; 66 662 58 flonum float;
#X append 6 1 8. ; 65 661 13 gain~ list 122 10. ;;
#X append 7 1 48 298 596 flonum float 112. ; 54 411 494 flonum float 1.13 ; 55 358 494 flonum float 0.14 ; 57 334 266 ubumenu int 0 ; 12 44 87 function clear ; 12 44 87 function add 77.082352;
#X append 7 1 0.062112 0 ; 12 44 87 function add 1845.158691 0.987578 0 ; 12 44 87 function add 2341.376465 0.15528 0 ; 12 44 87 function add 3020.664551 0.950311 0 ; 12 44 87 function add 4095. 0. 0 ; 12 44 87;
#X append 7 1 function domain 4095. ; 12 44 87 function range 0. 1. ; 66 662 58 flonum float 8. ; 65 661 13 gain~ list 122 10. ;;
#X append 8 1 48 298 596 flonum float 131.95 ; 54 411 494 flonum float 1.13 ; 55 358 494 flonum float 0.14 ; 57 334 266 ubumenu int 0 ; 12 44 87 function clear ; 12 44 87 function add 77.082352;
#X append 8 1 0.062112 0 ; 12 44 87 function add 862.358765 0.881988 0 ; 12 44 87 function add 1257.405884 0.242236 0 ; 12 44 87 function add 1830.705811 0. 0 ; 12 44 87 function add 2341.376465 0.15528 0 ; 12 44 87;
#X append 8 1 function add 2640.070557 0.944099 0 ; 12 44 87 function add 2794.235107 0.049689 0 ; 12 44 87 function add 3020.664551 0.950311 0 ; 12 44 87 function add 3463.888184 0.900621 0 ; 12 44 87 function add 3767.4 0.080745;
#X append 8 1 0 ; 12 44 87 function add 4095. 0. 0 ; 12 44 87 function domain 4095. ; 12 44 87 function range 0. 1. ; 66 662 58 flonum float 8. ; 65 661 13 gain~ list 122 10.;
#X append 8 1 ;;
#X append 9 1 48 298 596 flonum float -2.5 ; 54 411 494 flonum float 0.76 ; 55 358 494 flonum float 0.07 ; 57 334 266 ubumenu int 0 ; 12 44 87 function clear ; 12 44 87 function add 0.;
#X append 9 1 0. 0 ; 12 44 87 function add 766.005859 0.807453 0 ; 12 44 87 function add 1286.311768 0.149068 0 ; 12 44 87 function add 1642.817627 0.900621 0 ; 12 44 87 function add 2090.858643 0.180124 0 ; 12 44 87;
#X append 9 1 function add 2351.011719 0.770186 0 ; 12 44 87 function add 2587.076416 0.111801 0 ; 12 44 87 function add 2837.593994 0.919255 0 ; 12 44 87 function add 3733.67627 0.192547 0 ; 12 44 87 function add 4027.552734 0.745342;
#X append 9 1 0 ; 12 44 87 function add 4095. 0.459627 0 ; 12 44 87 function domain 4095. ; 12 44 87 function range 0. 1. ; 66 662 58 flonum float 12. ; 65 661 13 gain~ list 122 10.;
#X append 9 1 ;;
#P preset 987 71 47 47;
#P user panel 0 617 126 210;
#X brgb 132 132 132;
#X frgb 0 0 0;
#X border 1;
#X rounded 3;
#X shadow 3;
#X done;
#P hidden message 1015 496 91 9109518 saturation $1;
#P hidden message 1018 632 97 9109518 brgb $1 $2 $3;
#P hidden message 1019 543 93 9109518 frgb $1 $2 $3;
#P hidden connect 13 0 61 0;
#P hidden connect 4 0 65 0;
#P hidden connect 51 5 65 0;
#P hidden connect 24 0 23 0;
#P hidden connect 23 0 25 0;
#P hidden connect 18 0 15 0;
#P hidden connect 20 0 26 0;
#P hidden connect 14 0 28 0;
#P hidden connect 63 0 61 1;
#P hidden connect 64 0 61 1;
#P hidden connect 12 0 22 0;
#P hidden connect 4 0 66 0;
#P hidden connect 51 6 66 0;
#P hidden connect 65 1 61 2;
#P hidden fasten 20 1 22 1 968 538 968 438 89 438;
#P hidden connect 4 0 12 0;
#P hidden fasten 19 1 12 0 40 342 40 153;
#P hidden connect 28 1 12 0;
#P hidden connect 12 3 17 0;
#P hidden connect 25 0 17 0;
#P hidden connect 28 0 17 0;
#P hidden connect 26 0 17 0;
#P hidden connect 17 0 16 0;
#P hidden connect 66 0 61 3;
#P hidden connect 19 2 21 0;
#P hidden connect 27 0 26 1;
#P hidden connect 0 0 20 0;
#P hidden connect 21 0 20 0;
#P hidden connect 25 1 20 0;
#P hidden connect 42 0 20 0;
#P hidden connect 1 0 20 0;
#P hidden connect 15 0 13 0;
#P hidden connect 33 0 13 0;
#P hidden connect 0 0 13 0;
#P hidden connect 1 0 13 0;
#P hidden connect 19 0 18 0;
#P hidden connect 16 2 19 0;
#P hidden connect 41 0 40 0;
#P hidden connect 40 0 42 0;
#P hidden fasten 22 0 18 1 83 468;
#P hidden connect 4 0 57 0;
#P hidden connect 47 0 40 1;
#P hidden connect 57 0 7 0;
#P hidden connect 7 1 6 0;
#P hidden connect 10 0 38 0;
#P hidden connect 9 0 38 0;
#P hidden connect 49 0 38 0;
#P hidden connect 7 0 38 0;
#P hidden connect 38 0 37 0;
#P hidden connect 37 2 41 0;
#P hidden connect 46 0 47 0;
#P hidden connect 59 0 46 0;
#P hidden connect 58 0 46 0;
#P hidden connect 60 0 46 0;
#P hidden connect 36 0 58 0;
#P hidden connect 6 0 36 0;
#P hidden connect 41 1 39 0;
#P hidden connect 10 1 47 1;
#P hidden connect 9 1 46 1;
#P hidden connect 36 1 59 0;
#P hidden connect 54 0 10 0;
#P hidden connect 55 0 9 0;
#P hidden connect 4 0 55 0;
#P hidden connect 51 3 55 0;
#P hidden connect 4 0 54 0;
#P hidden connect 51 4 54 0;
#P hidden connect 36 2 60 0;
#P hidden connect 43 0 39 4;
#P hidden connect 39 0 36 1;
#P hidden connect 49 1 43 0;
#P hidden connect 4 0 48 0;
#P hidden connect 44 0 48 0;
#P hidden connect 51 2 48 0;
#P hidden connect 48 0 49 0;
#P hidden connect 51 1 44 0;
#P hidden connect 5 0 4 0;
#P hidden connect 69 0 70 0;
#P hidden connect 51 9 70 0;
#P hidden connect 2 0 67 0;
#P hidden connect 51 7 67 0;
#P hidden connect 52 1 51 0;
#P hidden connect 44 0 51 1;
#P hidden connect 71 0 69 0;
#P hidden connect 68 0 2 0;
#P hidden connect 70 0 1 0;
#P hidden connect 67 0 0 0;
#P hidden connect 48 0 51 2;
#P hidden connect 55 0 51 3;
#P hidden connect 54 0 51 4;
#P hidden connect 65 1 51 5;
#P hidden connect 66 0 51 6;
#P hidden connect 67 0 51 7;
#P hidden connect 68 0 51 8;
#P hidden connect 70 0 51 9;
#P hidden connect 71 0 51 10;
#P hidden connect 51 10 71 0;
#P hidden connect 51 8 68 0;
#P window clipboard copycount 72;

May 1, 2007 | 10:55 am

thats pretty cool, although quite slow to respond on my machine (ppc 1.25ghz), takes about 2 seconds to update

May 1, 2007 | 2:11 pm

Man, that’s awesome. Thanks for this.
Where/how do I tap the output to convert to a range of 0 to 127 for use as a MIDI modulator?

Quote: seejayjames wrote on Tue, 01 May 2007 03:57
—————————————————-
> This isn’t really what you’re talking about but it does provide some pretty interesting features by combining the bpfunction with a scaling multislider, which is then output into another multislider. There’s periodic function generators for the scaling multislider, which when you dynamically change the number of periods, you get some really wild results. I have the 4095-point multisliders listfunneled into a buffer~ in the audio subpatch so you can hear the resulting waveform. The response is pretty smooth as far as managing the data, though many of the buffer examples give clicks.
>
> Of course, the data in the multislider doesn’t have to be used this way, it’s just one possibility. I think other good ones would be to sample it at (say) intervals of 20-50 points, then apply that shorter list to the volume level of each oscillator in a huge bank. Or apply the curve as a highly dynamic EQ frequency boost / cut shape (like with filtergraph~ but more involved). Lots of possible applications there.
>
> It’s also fun to record some automations and just watch the patterns unfold ;)
>
> –CJ
>

May 1, 2007 | 6:40 pm

———- Original Message ———————————-
From: James Little
Date: Tue, 1 May 2007 11:55:50 +0100

>
>thats pretty cool, although quite slow to respond on my machine (ppc 1.l25ghz), takes about 2
seconds to update
>–

I noticed the same thing on my Powerbook. I was able to fix by putting a [mousefilter] on the outputs
of the multisliders. I don’t know why, but somethings will cause the multislider to output its list one
time for each element in the list (so 4095 lists of 4095 items for each one). [mousefilter] only lets
one list through on mouseup, making it respond faster.

Anyway, it is a cool patch. I’m going to go play with it some more.

David

Need personalized email and website? Look no further. It’s easy
with Doteasy $0 Web Hosting! Learn more at http://www.doteasy.com

May 2, 2007 | 1:11 am

Great that you guys like it! Too bad it kept me from sleeping much last night, heh. I’m adding a bunch of stuff and will post that soon, hope you’ll check it out. It could be a pretty useful synth-generating voice in a big bank of them, possibly with fewer points in the buffers/sliders so that the response is faster.

It’s hard because my sound card has distortion problems anyways so I never know if the looping waves are really clicky or it’s the card. I know there’s gonna be clicks unless one does some envelopes, which I’m adding and seem to help somewhat, but need tweaking.

Also am adding some more functions to provide yet more ways to fiddle. It’s neverending, this program…

–CJ

May 2, 2007 | 6:13 am

Forgot to put this part in the post. To tap the values (if you want one at a time) use the fetch $1 message to the bottom multislider, however often you want (w/ metro). With this design the one that changes the most often is on the far right, so fetch 4095 will get you this value.

If you want sampled lists of multiple values you could use a combination of an uzi that samples all the values, then a modulus to set how often you access that value (like every 20 would be uzi –> % 20 –> select 0, then out of the select will happen every 20th slider… make your list probably with zl group if it’s 256 or less, and there you go, a sub-sampling of the main data set). Or maybe a set of 8 fetch messages spaced every 512 sliders would get you a bank of changing data too. Heck, even an uzi 32 or something whose index get multiplied by a scaling factor so that it mirrors the set (127 in this case), then fetch $1, will get you slider 0, 32, 64, 96, etc…

Now that I think of it, that’s a lot easier, forget about the modulus (though that’s a *very* useful object too!)

The output is -1.0 to 1.0, so use a scale 0.0 1.0 0 127 to go to MIDI integers.

more soon

–CJ

May 2, 2007 | 10:37 am

the curves certainly look nice, but will it give audio results different from using a simple modulation of the line~ output of the function object?
my original post was about finding improvements/alternatives to the function and technoui objects…

May 2, 2007 | 11:13 am

the reason the output of your patch sounds clicky is because max can only deal with lists 256 elements long . so listfunnel is only putting the first 256 values of your multislider into the buffer.

May 2, 2007 | 11:36 am

this patch does something similar though ive phase modded the sine rather than amplitude mod, because it sounds more interesting

#P user scope~ 349 332 479 462 256 3 128 -1. 1. 0 0. 0 0. 102 255 51 135 135 135 0;
#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P newex 212 187 29 196617 t b f;
#P newex 212 216 29 196617 * 1.;
#P newex 290 344 41 196617 *~ 0.3;
#P button 423 211 15 0;
#P newex 423 231 60 196617 loadmess 1;
#P comment 55 190 53 196617 mod freq;
#P message 178 64 33 196617 clear;
#P flonum 103 165 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 424 252 35 9 0 2 3 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 424 273 64 196617 loopmode $1;
#P button 559 171 15 0;
#P user ezdac~ 285 375 329 408 0;
#P flonum 107 188 35 9 0. 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 211 250 61 196617 cycle~ 100;
#P newex 329 203 53 196617 zigzag~;
#P user function 214 62 569 166 1 1 0 1;
#X frgb 82 82 82;
#X brgb 204 204 204;
#X rgb2 85 85 85;
#X rgb3 255 255 255;
#X rgb4 0 0 0;
#X rgb5 0 0 0;
#X add 0. 1. 0;
#X add 163.265305 0.670886 0;
#X add 276.967926 -0.012658 0;
#X add 402.332367 0.696203 0;
#X add 446.064148 0.822785 0;
#X add 580.174927 0.898734 0;
#X add 720.116638 0.392405 0;
#X add 822.157471 -0.164557 0;
#X add 909.621033 -0.265823 0;
#X add 1000. -1. 0;
#X domain 1000.;
#X range -1. 1.;
#X done;
#P window linecount 3;
#P comment 102 110 100 196617 make the first and last points same to avoid clicking;
#P window linecount 1;
#P comment 58 167 40 196617 speed;
#P connect 4 0 15 0;
#P connect 15 0 6 0;
#P connect 15 0 6 1;
#P connect 15 0 18 0;
#P connect 3 0 4 1;
#P connect 10 0 17 0;
#P connect 10 0 3 1;
#P connect 16 0 4 0;
#P connect 5 0 16 0;
#P connect 17 1 16 1;
#P connect 17 0 16 0;
#P connect 13 0 9 0;
#P connect 14 0 13 0;
#P hidden connect 11 0 2 0;
#P connect 2 3 7 0;
#P connect 8 0 3 0;
#P connect 9 0 8 0;
#P connect 2 1 3 0;
#P hidden connect 7 0 2 0;
#P window clipboard copycount 19;

May 2, 2007 | 12:37 pm

awesome! thanks!

May 3, 2007 | 6:27 am

David Morneau schrieb:
> I noticed the same thing on my Powerbook. I was able to fix by
> putting a [mousefilter] on the outputs of the multisliders.

You might also just uncheck "Continuous Data Output" in the inspector.
Should have the same effect as mousefilter…

> I don’t know why, but somethings will cause the multislider to output
> its list one time for each element in the list (so 4095 lists of 4095
> items for each one).

Something like this can only happen by a bug in your patch, or you
misinterpreted the output when "Continuous Data Output" is checked…

If not, its worth to send a bug report…

Stefan


Stefan Tiedje————x——-
–_____———–|————–
–(_|_ —-|—–|—–()——-
— _|_)—-|—–()————–
———-()——–www.ccmix.com

May 3, 2007 | 5:22 pm

I’ve improved the breakpoint patch based on waveform~ i posted earlier, it was a little buggy. you can make stepping type curves now, and theres a few randomizing functions . alt click changes the curve between breakpoints. could be useful for synth envelopes

#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P comment 863 210 212 196617 data written to 1024 point buffer zeq;
#P window linecount 2;
#P comment 20 187 199 196617 left click to create breakpoint , delete by dragging over a point;
#P window linecount 1;
#P comment 228 188 155 196617 alt click to change curves;
#P hidden newex 1037 34 66 196617 loadmess 16;
#P window setfont "Sans Serif" 12.;
#P message 1038 140 42 196620 notes;
#P number 1038 160 42 12 1 1024 3 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 1038 100 42 196620 steps;
#P message 1038 120 42 196620 rand;
#P window setfont "Sans Serif" 9.;
#N vpatcher 89 67 1099 860;
#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#N vpatcher 109 346 1203 903;
#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P newex 620 60 111 196617 route rand steps notes;
#P objectname von[23];
#P newex 884 223 29 196617 * 1.;
#P newex 850 169 27 196617 + 1;
#P objectname von[22];
#P newex 881 52 27 196617 + 1;
#P objectname von[14];
#P newex 823 62 40 196617 t b b b;
#P objectname von[16];
#P newex 923 281 63 196617 pack 0 0. 0.;
#P objectname von[17];
#P newex 879 117 27 196617 t i b;
#P objectname von[18];
#P newex 843 90 47 196617 uzi 17 0;
#P objectname von[19];
#P newex 850 255 27 196617 – 1;
#P newex 958 232 46 196617 / 1000.;
#P newex 958 204 70 196617 random 1000;
#P objectname von[20];
#P newex 850 224 29 196617 * 1.;
#P newex 850 282 63 196617 pack 0 0. 0.;
#P objectname von[21];
#P window linecount 0;
#P hidden newex 166 52 49 196617 !/ 1024.;
#P newex 529 53 27 196617 + 1;
#P objectname von[13];
#P newex 467 45 40 196617 t b b b;
#P objectname von[10];
#P newex 580 282 63 196617 pack 0 0. 0.;
#P objectname von[15];
#P newex 526 101 40 196617 t i b b;
#P objectname von[12];
#P newex 478 72 47 196617 uzi 17 0;
#P objectname von[11];
#P newex 508 252 27 196617 – 1;
#P newex 633 188 70 196617 random 1000;
#P objectname von[9];
#P newex 633 213 99 196617 lp.scampf map 0. 1000 20 -20 pow 3.;
#P newex 549 239 46 196617 / 1000.;
#P newex 549 215 70 196617 random 1000;
#P objectname von[3];
#P newex 509 219 29 196617 * 1.;
#P window linecount 1;
#N vpatcher 10 59 373 493;
#P inlet 205 32 15 0;
#P window setfont "Sans Serif" 9.;
#P window linecount 0;
#P newex 187 71 49 196617 !/ 1024.;
#P newex 47 143 27 196617 – 0.;
#P newex 117 85 31 196617 % 1.;
#P outlet 100 312 15 0;
#P inlet 93 30 15 0;
#P window linecount 1;
#P newex 85 266 27 196617 + 0.;
#P connect 1 0 4 0;
#P connect 3 0 4 1;
#P connect 4 0 0 0;
#P connect 0 0 2 0;
#P connect 1 0 3 0;
#P connect 5 0 3 1;
#P connect 6 0 5 0;
#P pop;
#P newobj 120 185 65 196617 p snaptogrid;
#P window linecount 0;
#P message 104 270 43 196617 1023 0;
#P message 105 246 34 196617 0 0 0;
#P newex 318 113 70 196617 random 1000;
#P objectname von[7];
#P newex 279 177 181 196617 lp.scampf map 0. 1000 20 -20 pow 3.;
#P message 255 253 33 196617 clear;
#P newex 236 28 33 196617 r init;
#P inlet 50 34 15 0;
#P newex 236 50 48 196617 loadbang;
#P message 237 72 38 196617 sym 1;
#P newex 95 51 40 196617 t b b b;
#P objectname von[6];
#P newex 184 213 46 196617 / 1000.;
#P newex 221 112 70 196617 random 1000;
#P objectname von[5];
#P newex 155 248 63 196617 pack 0 0. 0.;
#P objectname von[4];
#P newex 94 81 40 196617 uzi 16;
#P objectname von[2];
#P newex 121 155 70 196617 random 1024;
#P objectname von[1];
#P inlet 621 28 15 0;
#P outlet 63 308 15 0;
#P outlet 159 311 15 0;
#P newex 508 282 63 196617 pack 0 0. 0.;
#P objectname von[8];
#P connect 40 0 2 0;
#P connect 5 1 2 0;
#P connect 29 0 2 0;
#P connect 9 0 5 0;
#P connect 44 0 9 0;
#P connect 9 1 18 0;
#P connect 9 1 17 0;
#P connect 4 0 19 0;
#P connect 5 0 4 0;
#P connect 31 0 5 1;
#P connect 19 0 6 0;
#P connect 39 0 1 0;
#P connect 32 0 1 0;
#P connect 18 0 1 0;
#P connect 17 0 1 0;
#P connect 6 0 1 0;
#P connect 0 0 1 0;
#P connect 14 0 1 0;
#P connect 28 0 1 0;
#P connect 12 0 31 0;
#P connect 12 0 19 1;
#P connect 8 0 6 1;
#P connect 7 0 8 0;
#P connect 15 0 6 2;
#P connect 5 0 7 0;
#P connect 13 0 11 0;
#P connect 11 0 10 0;
#P connect 40 2 14 0;
#P connect 29 2 14 0;
#P connect 9 2 14 0;
#P connect 10 0 15 0;
#P connect 16 0 15 0;
#P connect 5 0 16 0;
#P connect 44 1 29 0;
#P connect 29 1 26 0;
#P connect 20 0 25 0;
#P connect 25 0 0 0;
#P connect 27 0 20 0;
#P connect 30 0 26 1;
#P connect 26 2 27 0;
#P connect 31 0 20 1;
#P connect 12 0 30 0;
#P connect 27 1 21 0;
#P connect 21 0 22 0;
#P connect 23 0 0 2;
#P connect 20 0 28 0;
#P connect 22 0 28 1;
#P connect 3 0 44 0;
#P connect 27 2 24 0;
#P connect 10 0 23 0;
#P connect 24 0 23 0;
#P connect 44 2 40 0;
#P connect 40 1 37 0;
#P connect 38 0 42 0;
#P connect 42 0 33 0;
#P connect 33 0 36 0;
#P connect 36 0 32 0;
#P connect 31 0 33 1;
#P connect 35 0 32 1;
#P connect 37 2 38 0;
#P connect 41 0 37 1;
#P connect 12 0 41 0;
#P connect 38 0 43 0;
#P connect 31 0 43 1;
#P connect 43 0 39 0;
#P connect 35 0 39 1;
#P connect 38 1 34 0;
#P connect 34 0 35 0;
#P pop;
#P newobj 102 67 64 196617 p randomize;
#P inlet 162 29 15 0;
#P newex 448 559 20 196617 t b;
#P window linecount 0;
#P message 202 329 33 196617 clear;
#P window linecount 1;
#P message 286 481 34 196617 1024;
#P newex 107 391 40 196617 t i i b;
#N vpatcher 10 59 925 541;
#P inlet 205 32 15 0;
#P window setfont "Sans Serif" 9.;
#P newex 187 71 49 196617 !/ 1024.;
#P newex 47 143 27 196617 – 0.;
#P newex 85 266 27 196617 + 0.;
#P newex 134 217 27 196617 – 1.;
#P newex 96 217 29 196617 * 1.;
#P newex 96 192 27 196617 >;
#P newex 112 166 27 196617 / 2.;
#P newex 117 85 31 196617 % 1.;
#P outlet 96 305 15 0;
#P inlet 93 30 15 0;
#P connect 0 0 8 0;
#P connect 2 0 8 1;
#P connect 8 0 7 0;
#P connect 2 0 4 0;
#P connect 4 0 5 0;
#P connect 7 0 1 0;
#P connect 5 0 7 1;
#P connect 9 0 3 0;
#P connect 3 0 4 1;
#P connect 6 0 5 1;
#P connect 0 0 2 0;
#P connect 9 0 6 0;
#P connect 9 0 2 1;
#P connect 10 0 9 0;
#P pop;
#P newobj 511 253 65 196617 p snaptogrid;
#P comment 445 440 100 196617 remove old point;
#P newex 681 192 27 196617 t b i;
#P newex 617 76 27 196617 t b l;
#P newex 681 216 36 196617 zl reg;
#P newex 680 172 27 196617 + 1;
#P newex 804 378 50 196617 clip 0. 1.;
#P newex 578 226 50 196617 clip 0. 1.;
#N vpatcher 20 74 620 474;
#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P hidden newex 113 143 49 196617 !/ 1024.;
#P inlet 80 101 15 0;
#P hidden newex 214 169 40 196617 t b b b;
#P window linecount 0;
#P hidden newex 228 54 33 196617 r init;
#P hidden message 80 205 43 196617 grid $1;
#P hidden newex 213 135 48 196617 loadbang;
#P hidden message 306 250 42 196617 1024;
#P hidden newex 304 273 40 196617 / 44.1;
#P hidden message 157 265 42 196617 set zeq;
#P hidden outlet 80 308 15 0;
#P hidden outlet 304 295 15 0;
#P connect 10 0 6 0;
#P hidden connect 8 1 6 0;
#P hidden connect 2 0 1 0;
#P hidden connect 6 0 1 0;
#P connect 9 0 10 0;
#P hidden connect 8 2 2 0;
#P hidden connect 7 0 5 0;
#P hidden connect 5 0 8 0;
#P hidden connect 4 0 3 0;
#P hidden connect 3 0 0 0;
#P hidden connect 8 0 4 0;
#P pop;
#P newobj 542 590 33 196617 p init;
#P inlet 50 30 15 0;
#P inlet 102 30 15 0;
#P inlet 231 33 15 0;
#P outlet 584 654 15 0;
#P outlet 470 653 15 0;
#P outlet 672 654 15 0;
#P newex 28 98 33 196617 r init;
#P newex 28 124 48 196617 loadbang;
#P newex 1010 264 33 196617 r init;
#P newex 354 600 27 196617 t b i;
#P newex 295 581 27 196617 f;
#P newex 295 601 29 196617 * 0.;
#P newex 354 578 74 196617 zmap 0 1 -1 1;
#P newex 354 554 33 196617 >= 0.;
#P newex 354 534 27 196617 – 0.;
#P newex 511 288 40 196617 t f f b;
#P newex 288 183 27 196617 t i i;
#P newex 131 153 40 196617 t b b b;
#P newex 137 247 30 196617 t b b;
#P newex 274 89 66 196617 t b b b b b;
#P newex 66 291 40 196617 t i i i;
#P newex 1012 286 48 196617 loadbang;
#P newex 510 393 32 196617 sel 0;
#P newex 510 227 62 196617 clip 0 1023;
#P newex 748 378 50 196617 clip 0. 1.;
#P message 131 200 52 196617 1023 0 0;
#P message 131 178 34 196617 0 0 0;
#P message 1013 308 38 196617 sym 1;
#P newex 815 435 163 196617 lp.scampf map 0. 1 20 -20 pow 3.;
#P newex 260 241 64 196617 unpack 0. 0.;
#P newex 748 435 47 196617 * 1024.;
#P flonum 748 400 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 748 309 44 196617 zl rot 1;
#P newex 748 354 64 196617 unpack 0. 0.;
#P newex 748 331 52 196617 route 1 2;
#P message 678 92 55 196617 interval 0;
#P newex 679 67 48 196617 loadbang;
#P newex 652 144 66 196617 modifiers;
#P newex 682 259 38 196617 gate 2;
#P newex 510 199 47 196617 * 1024.;
#P newex 510 353 27 196617 i;
#P message 444 416 59 196617 remove $1;
#P newex 510 175 64 196617 unpack 0. 0.;
#P newex 510 151 43 196617 route 2;
#P toggle 448 588 15 0;
#P newex 108 478 76 196617 unpack 0. 0. 0.;
#N coll b;
#P newobj 108 456 53 196617 coll b;
#P newex 201 479 76 196617 unpack 0. 0. 0.;
#P newex 107 351 20 196617 t b;
#N coll a;
#P newobj 107 325 53 196617 coll a;
#N counter;
#X flags 0 0;
#P newobj 107 372 66 196617 counter;
#P newex 36 259 59 196617 uzi 1024 0;
#N coll b;
#P newobj 201 458 53 196617 coll b;
#P newex 260 266 29 196617 t b f;
#N counter;
#X flags 0 0;
#P newobj 260 294 66 196617 counter;
#P newex 260 338 72 196617 pack 0 0 0. 0.;
#P message 471 589 57 196617 vlabels $1;
#P newex 19 535 51 196617 pack 0 0.;
#P newex 19 560 54 196617 peek~ zeq;
#P newex 77 533 209 196617 lp.scampf map 0. 1024. 0. 1. pow 1.;
#P newex 301 132 59 196617 uzi 1024 0;
#P newex 440 354 63 196617 pack 0 0. 0.;
#P newex 438 195 47 196617 * 1024.;
#N coll a;
#P newobj 261 216 53 196617 coll a;
#P newex 456 95 44 196617 zl rot 1;
#P newex 438 174 64 196617 unpack 0. 0.;
#P newex 438 151 43 196617 route 1;
#P newex 107 413 27 196617 + 1;
#P comment 881 418 100 196617 write curve;
#P window linecount 4;
#N vpatcher 10 59 926 791;
#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P newex 159 80 40 196617 t b f b;
#P inlet 357 65 15 0;
#P inlet 158 45 15 0;
#P outlet 142 464 15 0;
#P outlet 295 476 15 0;
#P window linecount 0;
#P newex 246 324 38 196617 * 100;
#P newex 244 356 27 196617 + 0.;
#P newex 251 280 36 196617 >= 80;
#P newex 224 209 27 196617 t l l;
#P newex 193 382 63 196617 pack 0 0. 0.;
#P newex 152 406 52 196617 zl reg;
#P newex 142 379 32 196617 sel 0;
#P newex 192 241 73 196617 unpack 0 0. 0.;
#P newex 193 163 27 196617 1;
#P newex 224 163 29 196617 gate;
#P message 149 241 20 196617 $1;
#P newex 149 308 27 196617 < 0.;
#N coll b;
#P newobj 224 187 53 196617 coll b;
#P newex 204 123 44 196617 uzi 100;
#P connect 2 0 7 0;
#P connect 8 0 15 0;
#P connect 10 0 3 0;
#P connect 3 0 2 0;
#P connect 7 0 8 0;
#P connect 16 0 18 0;
#P connect 18 1 2 1;
#P connect 10 1 6 0;
#P connect 18 2 5 0;
#P connect 6 0 9 0;
#P connect 9 0 8 1;
#P connect 18 0 0 0;
#P connect 6 1 9 1;
#P connect 5 0 4 0;
#P connect 2 0 4 0;
#P connect 4 0 1 0;
#P connect 1 0 10 0;
#P connect 0 2 4 1;
#P connect 13 0 12 0;
#P connect 12 0 9 2;
#P connect 11 0 13 0;
#P connect 6 2 11 0;
#P connect 17 0 12 1;
#P connect 0 1 14 0;
#P pop;
#P newobj 747 473 78 196617 p detect which section and write new values;
#P connect 49 0 12 0;
#P connect 12 0 11 0;
#P connect 63 0 62 0;
#P connect 51 0 18 0;
#P connect 10 0 12 1;
#P connect 18 2 49 0;
#P connect 49 1 10 0;
#P connect 68 0 84 0;
#P connect 49 2 20 0;
#P connect 20 0 21 0;
#P connect 21 0 19 0;
#P connect 19 0 79 0;
#P connect 79 0 2 0;
#P connect 79 1 23 0;
#P connect 23 0 24 0;
#P connect 24 0 10 1;
#P connect 69 0 52 0;
#P connect 62 0 52 0;
#P connect 52 0 43 0;
#P connect 52 1 44 0;
#P connect 51 1 19 2;
#P connect 50 0 51 0;
#P connect 80 0 10 2;
#P connect 22 0 10 2;
#P connect 83 0 84 1;
#P connect 24 1 10 3;
#P connect 69 0 17 0;
#P connect 81 0 17 0;
#P connect 14 0 17 0;
#P connect 2 0 17 0;
#P connect 17 0 22 0;
#P connect 50 4 81 0;
#P connect 22 1 10 4;
#P connect 6 0 40 0;
#P connect 40 0 16 0;
#P connect 16 0 15 0;
#P connect 15 0 14 0;
#P connect 69 0 6 0;
#P connect 0 0 6 0;
#P connect 44 0 6 0;
#P connect 8 0 6 0;
#P connect 28 0 6 0;
#P connect 43 0 6 0;
#P connect 53 0 6 0;
#P connect 84 1 6 0;
#P connect 58 0 10 5;
#P connect 26 0 50 0;
#P connect 62 0 50 0;
#P connect 0 1 50 0;
#P connect 84 0 50 0;
#P connect 53 1 14 1;
#P connect 79 2 80 0;
#P connect 9 2 53 0;
#P connect 50 1 15 2;
#P connect 60 0 59 0;
#P connect 59 0 58 0;
#P connect 16 1 14 2;
#P connect 50 2 9 0;
#P connect 22 2 59 1;
#P connect 60 1 58 1;
#P connect 40 1 14 3;
#P connect 22 1 55 0;
#P connect 55 0 56 0;
#P connect 56 0 57 0;
#P connect 57 0 60 0;
#P connect 24 1 55 1;
#P connect 5 0 3 0;
#P connect 3 0 4 0;
#P connect 4 0 7 0;
#P connect 54 0 8 0;
#P connect 47 1 28 0;
#P connect 69 0 82 0;
#P connect 82 0 25 0;
#P connect 18 1 25 0;
#P connect 31 0 5 0;
#P connect 71 0 8 1;
#P connect 13 0 65 0;
#P connect 70 0 65 0;
#P connect 25 0 13 0;
#P connect 5 0 26 0;
#P connect 26 0 27 0;
#P connect 27 0 30 0;
#P connect 30 0 46 0;
#P connect 54 2 29 0;
#P connect 29 0 47 0;
#P connect 46 0 78 0;
#P connect 78 0 54 0;
#P connect 7 0 29 1;
#P connect 54 1 29 1;
#P connect 68 0 70 0;
#P connect 68 0 78 1;
#P connect 27 1 71 0;
#P connect 70 1 66 0;
#P connect 67 0 75 0;
#P connect 75 0 32 0;
#P connect 34 0 32 0;
#P connect 9 1 64 0;
#P connect 33 0 34 0;
#P connect 32 2 73 0;
#P connect 73 0 76 0;
#P connect 76 0 74 0;
#P connect 76 1 31 0;
#P connect 75 1 74 1;
#P connect 74 0 31 1;
#P connect 39 0 0 0;
#P connect 31 1 37 0;
#P connect 37 0 35 0;
#P connect 35 0 36 0;
#P connect 35 1 36 0;
#P connect 36 0 45 0;
#P connect 45 0 38 0;
#P connect 38 0 39 0;
#P connect 36 1 72 0;
#P connect 42 0 41 0;
#P connect 72 0 41 0;
#P connect 41 0 0 1;
#P connect 61 0 48 0;
#P connect 48 0 42 0;
#P pop;
#P hidden newobj 695 187 140 196617 p breakpoint;
#P button 961 37 19 0;
#P newex 982 37 33 196617 s init;
#P window setfont "Sans Serif" 12.;
#P comment 1081 161 46 196620 points;
#P message 1038 80 42 196620 clear;
#P window setfont "Sans Serif" 9.;
#P hidden newex 865 186 150 196617 buffer~ zeq 100;
#P user waveform~ 14 80 1024 99 3 9;
#W mode none;
#W snap grid;
#W mouseoutput continuous;
#W unit samples;
#W grid 64.;
#W ticks 0;
#W labels 0;
#W vlabels 0;
#W vticks 0;
#W vzoom 0.5;
#W voffset 1.;
#W bpm 120. 4.;
#W frgb 100 100 0;
#W brgb 200 200 0;
#W rgb2 48 248 0;
#W rgb3 42 42 42;
#W rgb4 0 0 0;
#W rgb5 190 137 255;
#W rgb6 50 50 0;
#W rgb7 0 0 0;
#P objectname pluj;
#P window setfont "Sans Serif" 12.;
#P comment 961 59 75 196620 initialize!;
#P hidden connect 7 0 1 0;
#P hidden connect 7 1 1 1;
#P hidden connect 3 0 7 0;
#P hidden connect 10 0 7 1;
#P hidden connect 9 0 7 2;
#P hidden connect 8 0 7 2;
#P hidden connect 11 0 7 2;
#P hidden connect 1 4 7 3;
#P hidden connect 3 0 2 0;
#P hidden connect 7 2 2 0;
#P connect 6 0 5 0;
#P hidden connect 6 0 12 0;
#P hidden connect 12 0 10 0;
#P window clipboard copycount 16;

May 7, 2007 | 7:09 pm

Looks fantastic but upon opening I received a slew of error: multiSlider: Slider xxxx Out of Range messages.

Viewing 19 posts - 1 through 19 (of 19 total)

Forums > MaxMSP