[PD] Mutiple instances of a patch at startup.

Miller Puckette mpuckett at imusic1.ucsd.edu
Thu Dec 14 03:49:32 CET 2006


It's a bug... I made a decision to slightly simplify the code by reusing
the "path" mechanism to open files from command line - but 'path' does,
appropriately, suppress duplicates and I'd have to carry one additional
flag around to do everything exactly right.  I honestly didn't think anyone
would ever _want_ do do this.

Anyway, here's a workaround:

  pd -send "pd open z.pd /home/msp/pd/src" \
     -send "pd open z.pd /home/msp/pd/src"
     ... etc to your heart's content...

cheers
M

On Mon, Dec 11, 2006 at 10:56:31AM -0500, David F. Place wrote:
> It's nice that I can list multiple filenames with a command line invocation:
> 
> pd controlPanel.pd pythagGen.pd
> 
> but, I would also like to list a filename several times to open several 
> instances of the patch:
> 
> pd controlPanel.pd pythagGen.pd pythagGen.pd
> 
> Pd seems to filter out repeats, though.   Isn't this something one would 
> sometimes want to do?  Pd must be making a special effort to filter out 
> the repeats.
> 
> Cheers, David
> 
> 

> #N canvas 20 254 191 309 10;
> #X obj 4 3 cnv 15 180 300 empty empty empty 20 12 0 14 -261689 -66577
> 0;
> #X floatatom 14 252 5 0 0 0 - - -;
> #X floatatom 71 140 5 0 0 0 a= - -;
> #X obj 14 198 * 2;
> #X obj 14 222 / 3;
> #X msg 18 90 408;
> #X msg 62 90 415;
> #X msg 103 89 440;
> #X obj 18 58 bng 30 250 50 0 empty empty 408 0 -6 0 8 -258699 -1 -1
> ;
> #X obj 14 279 s pitch;
> #X obj 62 57 bng 30 250 50 0 empty empty 415 0 -6 0 8 -258699 -1 -1
> ;
> #X obj 103 56 bng 30 250 50 0 empty empty 440 0 -6 0 8 -258699 -1 -1
> ;
> #X obj 122 195 s apitch;
> #X text 15 3 Select a pitch:;
> #X obj 71 160 t f f;
> #X connect 1 0 9 0;
> #X connect 2 0 14 0;
> #X connect 3 0 4 0;
> #X connect 4 0 1 0;
> #X connect 5 0 2 0;
> #X connect 6 0 2 0;
> #X connect 7 0 2 0;
> #X connect 8 0 5 0;
> #X connect 10 0 6 0;
> #X connect 11 0 7 0;
> #X connect 14 0 3 0;
> #X connect 14 1 12 0;

> #N canvas 383 64 841 775 12;
> #X floatatom 178 353 5 0 0 0 - - -;
> #X obj 139 26 bng 15 250 50 0 empty empty +0 0 -6 0 8 -90133 -1 -1
> ;
> #X obj 267 338 * 81;
> #X obj 267 361 / 80;
> #X floatatom 434 445 5 0 0 0 - - -;
> #X obj 157 26 bng 15 250 50 0 empty empty +1 0 -6 0 8 -250685 -1 -1
> ;
> #X floatatom 18 447 5 0 0 0 - - -;
> #X obj 121 26 bng 15 250 50 0 empty empty -1 0 -6 0 8 -250685 -1 -1
> ;
> #X obj 96 338 * 80;
> #X obj 96 361 / 81;
> #X msg 18 492 set sc-1;
> #X msg 434 492 set sc+1;
> #X obj 103 26 bng 15 250 50 0 empty empty -2 0 -6 0 8 -257472 -1 -1
> ;
> #X obj 175 26 bng 15 250 50 0 empty empty +2 0 -6 0 8 -257472 -1 -1
> ;
> #X floatatom -113 614 5 0 0 0 - - -;
> #X obj -29 550 * 80;
> #X obj -29 573 / 81;
> #X obj 457 549 * 81;
> #X obj 457 572 / 80;
> #X floatatom 603 616 5 0 0 0 - - -;
> #X msg 603 663 set sc+2;
> #X msg -113 659 set sc-2;
> #X floatatom 434 420 5 0 0 0 - - -;
> #X floatatom 18 418 5 0 0 0 - - -;
> #X obj 178 256 r pitch;
> #X obj -201 229 symbol \$1;
> #X obj 178 281 * \$2;
> #X obj 178 304 / \$3;
> #X obj 18 468 s \$4-freq;
> #X obj 434 467 s \$4-freq;
> #X obj 18 516 s \$4-comma;
> #X obj 434 517 s \$4-comma;
> #X obj -113 635 s \$4-freq;
> #X obj -113 683 s \$4-comma;
> #X obj 603 638 s \$4-freq;
> #X obj 603 688 s \$4-comma;
> #X obj -116 301 s \$4-note;
> #X obj 178 373 s \$4-freq;
> #X obj 178 419 s \$4-comma;
> #X obj 342 96 t b b b;
> #X obj 247 96 t b b b;
> #X obj 170 96 t b b b;
> #X obj 77 96 t b b b;
> #X obj -7 96 t b b b;
> #X msg 178 396 set sc+0;
> #X obj -201 256 t b s;
> #X obj -230 300 s resetPhase;
> #X connect 0 0 37 0;
> #X connect 1 0 41 0;
> #X connect 2 0 3 0;
> #X connect 3 0 22 0;
> #X connect 4 0 29 0;
> #X connect 5 0 40 0;
> #X connect 6 0 28 0;
> #X connect 7 0 42 0;
> #X connect 8 0 9 0;
> #X connect 9 0 23 0;
> #X connect 10 0 30 0;
> #X connect 11 0 31 0;
> #X connect 12 0 43 0;
> #X connect 13 0 39 0;
> #X connect 14 0 32 0;
> #X connect 15 0 16 0;
> #X connect 16 0 14 0;
> #X connect 17 0 18 0;
> #X connect 18 0 19 0;
> #X connect 19 0 34 0;
> #X connect 20 0 35 0;
> #X connect 21 0 33 0;
> #X connect 22 0 4 0;
> #X connect 22 0 17 0;
> #X connect 23 0 6 0;
> #X connect 23 0 15 0;
> #X connect 24 0 26 0;
> #X connect 25 0 45 0;
> #X connect 26 0 27 0;
> #X connect 27 0 0 0;
> #X connect 27 0 2 0;
> #X connect 27 0 8 0;
> #X connect 39 0 25 0;
> #X connect 39 1 20 0;
> #X connect 39 2 19 0;
> #X connect 40 0 25 0;
> #X connect 40 1 11 0;
> #X connect 40 2 4 0;
> #X connect 41 0 25 0;
> #X connect 41 1 44 0;
> #X connect 41 2 0 0;
> #X connect 42 0 25 0;
> #X connect 42 1 10 0;
> #X connect 42 2 6 0;
> #X connect 43 0 25 0;
> #X connect 43 1 21 0;
> #X connect 43 2 14 0;
> #X connect 44 0 38 0;
> #X connect 45 0 46 0;
> #X connect 45 1 36 0;
> #X coords 0 -1 1 1 300 45 1 100 0;

> #N canvas 416 394 593 411 12;
> #X obj 355 208 f 1;
> #X msg 388 155 2;
> #X msg 423 155 4;
> #X floatatom 355 251 5 0 0 0 - - -;
> #X obj 6 30 bng 15 250 50 0 empty empty -2 0 -6 0 8 -99865 -1 -1;
> #X msg 355 155 1;
> #X msg 318 155 0.5;
> #X msg 277 155 0.25;
> #X obj 27 30 bng 15 250 50 0 empty empty -1 0 -6 0 8 -128992 -1 -1
> ;
> #X obj 50 30 bng 15 250 50 0 empty empty 0 0 -6 0 8 -166441 -1 -1;
> #X obj 71 30 bng 15 250 50 0 empty empty +1 0 -6 0 8 -195568 -1 -1
> ;
> #X obj 94 30 bng 15 250 50 0 empty empty +2 0 -6 0 8 -233017 -1 -1
> ;
> #X obj 355 277 outlet;
> #X obj 252 97 t b b;
> #X obj 197 97 t b b;
> #X obj 95 97 t b b;
> #X obj 42 97 t b b;
> #X obj 145 97 t b b;
> #X obj 355 81 loadbang;
> #X obj 187 260 outlet;
> #X obj 144 230 t b b;
> #X obj 74 260 s resetPhase;
> #X connect 0 0 3 0;
> #X connect 1 0 0 0;
> #X connect 2 0 0 0;
> #X connect 3 0 12 0;
> #X connect 4 0 16 0;
> #X connect 5 0 0 0;
> #X connect 6 0 0 0;
> #X connect 7 0 0 0;
> #X connect 8 0 15 0;
> #X connect 9 0 17 0;
> #X connect 10 0 14 0;
> #X connect 11 0 13 0;
> #X connect 13 0 20 0;
> #X connect 13 1 2 0;
> #X connect 14 0 20 0;
> #X connect 14 1 1 0;
> #X connect 15 0 20 0;
> #X connect 15 1 6 0;
> #X connect 16 0 20 0;
> #X connect 16 1 7 0;
> #X connect 17 0 20 0;
> #X connect 17 1 5 0;
> #X connect 18 0 5 0;
> #X connect 20 1 19 0;
> #X coords 0 -1 1 1 120 50 1 0 0;

> #N canvas 329 25 344 853 12;
> #X text -19 -1 Pythagorean Tone Generator;
> #X obj 134 19 cnv 15 180 200 empty empty empty 20 12 0 14 -261681 -66577
> 0;
> #X obj -18 19 cnv 15 150 200 empty empty empty 0 0 0 14 -228992 -66577
> 0;
> #X floatatom -8 53 0 0 0 2 frequency #0-freq -;
> #X obj 216 104 *;
> #X floatatom 281 83 0 0.25 2 0 - - -;
> #X obj -19 222 cnv 15 333 625 empty empty empty 20 12 0 14 -261689
> -66577 0;
> #X obj -4 226 noteSelector D-natural 1 1 \$0;
> #X text -15 826 Copyright 2006 David F. Place;
> #X symbolatom -6 150 0 0 0 2 Note #0-note -;
> #X symbolatom -5 189 0 0 0 2 Syntonic_Comma #0-comma -;
> #X obj 168 27 octave;
> #X obj 137 133 toneGenerator;
> #X floatatom 15 114 0 0 0 0 a= apitch -;
> #X obj -4 274 noteSelector E-flat 256 243 \$0;
> #X obj -4 322 noteSelector E-natural 9 8 \$0;
> #X obj -4 372 noteSelector F-natural 32 27 \$0;
> #X obj -4 420 noteSelector F-sharp 81 64 \$0;
> #X obj -4 469 noteSelector G-natural 4 3 \$0;
> #X obj -5 518 noteSelector G-sharp 729 512 \$0;
> #X obj -4 568 noteSelector A-natural 3 2 \$0;
> #X obj -3 618 noteSelector B-flat 128 81 \$0;
> #X obj -3 667 noteSelector B-natural 27 16 \$0;
> #X obj -3 717 noteSelector C-natural 16 9 \$0;
> #X obj -3 768 noteSelector C-sharp 243 128 \$0;
> #X connect 3 0 4 0;
> #X connect 4 0 12 0;
> #X connect 5 0 4 1;
> #X connect 11 0 4 0;
> #X connect 11 1 5 0;

> #N canvas 261 25 870 889 12;
> #X obj 456 295 line~;
> #X obj 456 271 pack 0 50;
> #X floatatom 458 160 0 0 0 0 - - -;
> #X obj 306 232 *~;
> #X obj 456 196 / 10;
> #X obj 456 220 moses 0;
> #X msg 456 244 0;
> #X obj 326 265 *~;
> #X obj 265 265 sig~ 1;
> #X obj 275 318 /~;
> #X obj 290 292 +~;
> #X obj 275 370 hip~;
> #X obj 305 205 osc~;
> #X obj 304 179 / 2;
> #X obj 304 147 inlet;
> #X obj 344 880 t b;
> #X obj 344 827 f;
> #X obj 344 905 f;
> #X msg 458 904 0;
> #X obj 344 857 moses 1;
> #X obj 458 876 t b f;
> #X obj 424 837 moses 1;
> #X obj 20 487 dbtorms;
> #X msg 295 728 \; pd dsp 1;
> #X obj 20 560 line~;
> #X obj 55 632 *~;
> #X obj 55 662 dac~;
> #X text 129 854 test if less than 1 -->;
> #X text 95 881 if true convert to bang -->;
> #X text 91 486 <-- convert from dB to linear units;
> #X floatatom 314 609 3 0 100 0 dB - -;
> #X obj 141 15 bng 30 250 50 0 \$0-mute empty mute -38 7 0 12 -44926
> -1 -1;
> #X text 109 516 <-- make a ramp to avoid clicks or zipper noise;
> #X obj 145 631 *~;
> #X text 364 768 MUTE logic:;
> #X obj 344 931 s \$0-master-lvl;
> #X obj 314 669 s \$0-master-out;
> #X obj 424 808 r \$0-master-out;
> #X text 51 400 Level control abstraction \, used in many of the Pd
> example patches. The "level" and "mute" controls show up on the parent
> \, calling patch.;
> #X text 57 907 previous nonzero master-lvl -->;
> #X text 129 811 recall previous;
> #X text 129 829 value of master-lvl -->;
> #X text 30 709 automatically start DSP -->;
> #X obj 76 582 hip~ 3;
> #X obj 138 582 hip~ 3;
> #X obj 21 357 r \$0-master-out;
> #X obj 313 564 r \$0-master-lvl;
> #X obj 7 61 hsl 128 15 15 35 0 1 \$0-rich empty Richness -2 -6 0 8
> -241291 -1 -1 9000 0;
> #X obj 7 30 hsl 128 15 70 90 0 1 \$0-volume empty Volume -2 -6 0 8
> -250685 -1 -1 9800 0;
> #X text 214 -32 Cobbled together output~ and waveshape example in the
> documentation.;
> #X obj 415 0 r resetPhase;
> #X obj 21 462 f;
> #X obj 415 28 t b b b;
> #X obj 20 517 pack 0 50;
> #X obj 393 65 delay 50;
> #X msg 393 92 0;
> #X obj 314 67 delay 50;
> #X obj 458 129 r \$0-rich;
> #X obj 292 692 r \$0-volume;
> #X obj 328 634 r \$0-volume;
> #X obj 334 796 r \$0-mute;
> #X msg 475 66 0 50;
> #X connect 0 0 3 1;
> #X connect 1 0 0 0;
> #X connect 2 0 4 0;
> #X connect 3 0 7 0;
> #X connect 3 0 7 1;
> #X connect 4 0 5 0;
> #X connect 5 0 6 0;
> #X connect 5 1 1 0;
> #X connect 6 0 1 0;
> #X connect 7 0 10 1;
> #X connect 8 0 9 0;
> #X connect 8 0 10 0;
> #X connect 9 0 11 0;
> #X connect 10 0 9 1;
> #X connect 11 0 43 0;
> #X connect 11 0 44 0;
> #X connect 12 0 3 0;
> #X connect 13 0 12 0;
> #X connect 14 0 13 0;
> #X connect 15 0 17 0;
> #X connect 16 0 19 0;
> #X connect 17 0 35 0;
> #X connect 18 0 35 0;
> #X connect 19 0 15 0;
> #X connect 19 1 20 0;
> #X connect 20 0 18 0;
> #X connect 21 1 17 1;
> #X connect 22 0 53 0;
> #X connect 24 0 33 0;
> #X connect 24 0 25 0;
> #X connect 25 0 26 0;
> #X connect 30 0 23 0;
> #X connect 30 0 36 0;
> #X connect 33 0 26 1;
> #X connect 37 0 16 1;
> #X connect 37 0 21 0;
> #X connect 43 0 25 1;
> #X connect 44 0 33 1;
> #X connect 45 0 51 0;
> #X connect 46 0 30 0;
> #X connect 50 0 52 0;
> #X connect 51 0 22 0;
> #X connect 52 0 56 0;
> #X connect 52 1 54 0;
> #X connect 52 2 61 0;
> #X connect 53 0 24 0;
> #X connect 54 0 55 0;
> #X connect 55 0 12 1;
> #X connect 56 0 51 0;
> #X connect 57 0 2 0;
> #X connect 58 0 23 0;
> #X connect 59 0 36 0;
> #X connect 60 0 16 0;
> #X connect 61 0 24 0;
> #X coords 0 -1 1 1 175 80 1 0 0;

> _______________________________________________
> PD-list at iem.at mailing list
> UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list





More information about the Pd-list mailing list