#N canvas 0 0 555 619 10; #X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0 14 -228856 -66577 0; #X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header inlet~ 3 12 0 18 -204280 -1 0; #X obj 0 350 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13 -228856 -1 0; #N canvas 46 242 494 344 META 0; #X text 12 85 LIBRARY internal; #X text 12 125 WEBSITE http://crca.ucsd.edu/~msp/; #X text 12 25 LICENSE SIBSD; #X text 12 105 AUTHOR Miller Puckette; #X text 12 165 HELP_PATCH_AUTHORS Updated for Pd v0.41. Revised by Jonathan Wilkes to conform to the PDDP template for Pd version 0.42. ; #X text 12 45 DESCRIPTION signal inlet for a subpatch; #X text 12 65 OUTLET_0 signal; #X text 12 5 KEYWORDS signal nonlocal canvas_op; #X text 12 145 RELEASE_DATE 1997; #X restore 500 597 pd META; #X obj 0 377 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0 13 -228856 -1 0; #X obj 0 459 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12 0 13 -228856 -1 0; #X obj 0 566 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12 0 13 -228856 -1 0; #N canvas 54 478 428 109 Related_objects 0; #X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0 14 -204280 -1 0; #X obj 22 43 inlet; #X obj 67 43 outlet; #X obj 118 43 inlet~; #X obj 168 43 outlet; #X obj 225 43 block~; #X text 8 2 [inlet~] Related Objects; #X text 275 42 [switch~]; #X restore 102 598 pd Related_objects; #X obj 78 386 cnv 17 3 60 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856 -162280 0; #X obj 369 259 print~; #X obj 369 199 sig~ 12; #X floatatom 126 203 0 0 0 0 - - -; #X floatatom 126 255 0 0 0 0 - - -; #X text 96 182 messages in and out; #X text 339 176 audio in and out; #X obj 369 237 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #N canvas 50 247 428 293 subpatch-with-inlets-and-outlets 0; #X obj 68 68 inlet; #X text 20 38 control inlet for receiving messages; #X floatatom 68 96 0 0 0 0 - - -; #X floatatom 68 218 0 0 0 0 - - -; #X obj 68 250 outlet; #X text 20 188 control outlet for sending message; #X obj 340 84 inlet~; #X obj 340 135 print~; #X msg 355 109 bang; #X obj 340 243 outlet~; #X obj 340 217 sig~ 34; #X text 333 38 same for; #X text 334 57 signals.; #X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0 14 -204280 -1 0; #X text 8 2 [inlet~] Creating Inlets/Outlets on Subpatches; #X connect 0 0 2 0; #X connect 3 0 4 0; #X connect 6 0 7 0; #X connect 8 0 7 0; #X connect 10 0 9 0; #X restore 126 229 pd subpatch-with-inlets-and-outlets; #X text 98 353 (none); #X text 11 23 signal inlet for a subpatch; #X obj 477 3 inlet~; #X obj 451 20 pddp/pddplink http://wiki.puredata.info/en/inlet~ -text pdpedia: inlet~; #X text 98 385 signal; #N canvas 61 152 428 466 up/downsampling 0; #X obj 30 396 print~; #X obj 48 370 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 112 396 print~; #X obj 130 372 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 195 396 print~; #X obj 213 370 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-tab 64 float 3; #A 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; #X coords 0 1 64 -1 200 140 1; #X restore 216 181 graph; #X obj 274 368 s \$0-tab; #X msg 274 341 const 0 \, 0 0 1; #X obj 145 233 print~; #X obj 145 208 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 23 181 tabreceive~ \$0-tab; #N canvas 81 269 585 267 test-subpatch-upsampled 0; #X obj 40 17 block~ 128 1 2; #X obj 209 149 inlet~ hold; #X obj 367 153 inlet~ lin; #X obj 23 202 print~; #X obj 41 176 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 209 209 print~; #X obj 227 183 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 366 213 print~; #X obj 383 187 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X text 42 49 Upsampling methods:; #X text 206 114 sample/hold; #X text 337 111 linear interpolation; #X text 16 114 interleaved zeros; #X obj 23 146 inlet~; #X connect 1 0 5 0; #X connect 2 0 7 0; #X connect 4 0 3 0; #X connect 6 0 5 0; #X connect 8 0 7 0; #X connect 13 0 3 0; #X restore 23 285 pd test-subpatch-upsampled; #N canvas 46 43 585 267 test-subpatch-downsampled 0; #X obj 23 146 outlet~; #X obj 209 149 outlet~ hold; #X obj 367 153 outlet~ lin; #X text 206 173 sample/hold; #X text 364 177 linear interpolation; #X text 197 19 upsampling methods:; #X obj 40 17 block~ 32 1 0.5; #X text 18 169 interleaved zeros; #X obj 21 83 tabreceive~ \$0-tab; #X connect 8 0 0 0; #X connect 8 0 1 0; #X connect 8 0 2 0; #X restore 29 340 pd test-subpatch-downsampled; #X text 20 38 When a subpatch is reblocked to a higher or lower sample rate \, the inlet~ and outlet~ objects offer a choice of three upsampling methods. (The inlet~ upsamples when entering a subpatch with a higher sample rate \; the outlet~ upsamples when leaving a subpatch of _lower_ sample rate \, as demonstrated below.) There is no corresponding choice of downsampling method - downsampling is done simply by dropping the extra samples.; #X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0 14 -204280 -1 0; #X text 8 2 [inlet~] Up/downsampling; #X connect 1 0 0 0; #X connect 3 0 2 0; #X connect 5 0 4 0; #X connect 8 0 7 0; #X connect 10 0 9 0; #X connect 11 0 12 1; #X connect 11 0 12 2; #X connect 11 0 9 0; #X connect 11 0 12 0; #X connect 13 0 0 0; #X connect 13 1 2 0; #X connect 13 2 4 0; #X restore 171 538 pd up/downsampling; #X text 80 477 1) symbol atom; #X text 98 127 The subpatch below shows how to use [inlet] \, [inlet~] \, [outlet] \, and [outlet~] objects to get data into and out of a subpatch:; #X text 168 477 - (optional) The word "hold" will cause sample/hold upsampling/downsampling \, and the word "lin" will cause linear upsampling/downsampling. See the subpatch below for more details:; #X text 98 77 The [inlet~] object allows signals to be sent to a subpatch from objects on the parent canvas.; #X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide ; #X text 168 385 - the [inlet~] object outputs the signal sent to the inlet of the subpatch in which it is found. When multiple [inlet~] or [inlet] objects are in one subpatch \, their horizontal order corresponds with the inlets drawn on the containing object in the parent patch. ; #X connect 10 0 16 1; #X connect 11 0 16 0; #X connect 15 0 9 0; #X connect 16 0 12 0; #X connect 16 1 9 0;