#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 tabread4~ 3 12 0 18 -204280 -1 0; #X obj 0 305 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13 -228856 -1 0; #N canvas 53 246 494 344 META 0; #X text 12 125 LIBRARY internal; #X text 12 165 WEBSITE http://crca.ucsd.edu/~msp/; #X text 12 25 LICENSE SIBSD; #X text 12 145 AUTHOR Miller Puckette; #X text 12 205 HELP_PATCH_AUTHORS Updated for Pd version 0.29. Jonathan Wilkes revised the patch to conform to the PDDP template for Pd version 0.42.; #X text 12 5 KEYWORDS signal array; #X text 12 45 DESCRIPTION 4-point-interpolating table lookup; #X text 12 65 INLET_0 signal set; #X text 12 85 INLET_1 float; #X text 12 105 OUTLET_0 signal; #X text 12 185 RELEASE_DATE 1997; #X restore 500 597 pd META; #X obj 0 417 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0 13 -228856 -1 0; #X obj 0 449 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12 0 13 -228856 -1 0; #X obj 0 510 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12 0 13 -228856 -1 0; #N canvas 79 318 428 294 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 text 21 38 Native Pd Objects; #X obj 24 61 tabread~; #X obj 98 61 tabread4; #X obj 173 61 tabwrite; #X obj 248 61 tabwrite~; #X obj 24 89 tabsend~; #X obj 100 89 tabreceive~; #X obj 200 89 tabplay~; #X obj 277 89 table; #X text 21 140 [array]; #X obj 24 116 soundfiler; #X text 84 140 and fft objects.; #X obj 120 116 tabread4~; #X obj 211 116 getsize; #X obj 282 116 setsize; #X text 8 2 [tabread4~] Related Objects; #X text 21 170 Externals and other object libraries; #X obj 21 190 pddp/helplink zexy/tabdump; #X obj 21 210 pddp/helplink linear_path; #X text 102 210 <-- which library is this in?; #X text 102 230 <-- which library is this in?; #X obj 21 230 pddp/helplink score; #X text 102 250 <-- which library is this in?; #X obj 21 250 pddp/helplink tabenv; #X obj 21 270 pddp/helplink arraysize; #X restore 102 597 pd Related_objects; #X obj 78 314 cnv 17 3 75 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856 -162280 0; #X obj 78 426 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856 -162280 0; #X obj 466 3 tabread4~; #X obj 435 20 pddp/pddplink http://wiki.puredata.info/en/tabread4~ -text pdpedia: tabread4~; #X text 11 23 4-point-interpolating table lookup; #X text 68 174 signal input x(n); #X obj 21 261 snapshot~; #X obj 40 239 metro 200; #X obj 21 115 sig~; #X floatatom 21 89 0 0 0 0 - - -; #X floatatom 21 284 0 0 0 0 - - -; #X text 98 313 signal; #X text 168 313 - the incoming signal is the index. Indices should range from 1 to the size of the array minus two \, so that the 4-point interpolation is meaningful.; #X text 53 83 Shift-drag the number box to see the effect of interpolation. ; #X text 98 353 set; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-array 10 float 0; #X coords 0 1 9 -1 160 100 1; #X restore 289 141 graph; #X text 98 425 signal; #X obj 40 217 loadbang; #X obj 100 515 pddp/pddplink all_about_arrays.pd -text all_about_arrays ; #X text 168 467 - the name of the array or table from which [tabread4~] will read data. The array or table must exist in an open Pd patch/canvas or an error message will appear in the console.; #N canvas 117 345 428 159 init 0; #X msg 23 103 0 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1; #X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0 14 -204280 -1 0; #X obj 23 81 loadbang; #X text 8 2 [tabread4~] [table] initialization; #X text 20 38 This subpatch just initializes a [table] to some values. (Values in a [table] are not saved in the patch.); #X obj 23 125 s \$0-array; #X connect 0 0 5 0; #X connect 2 0 0 0; #X restore 288 270 pd init; #X text 168 353 - the "set" message \, followed by the name of an array \, permits you to switch between arrays (e.g. \, "set another_array"). ; #X text 80 467 1) symbol; #X text 18 44 [tabread4~] is used to build samplers and other table lookup algorithms. The interpolation scheme is 4-point polynomial. ; #X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide ; #X obj 455 51 pddp/dsp; #X obj 100 530 pddp/pddplink ../3.audio.examples/B03.tabread4.pd -text doc/3.audio.examples/B03.tabread4.pd; #X obj 100 545 pddp/pddplink ../3.audio.examples/B04.tabread4.interpolation.pd -text doc/3.audio.examples/B04.tabread4.interpolation.pd; #X obj 78 396 cnv 17 3 17 empty \$0-pddp.cnv.let.1 1 5 9 0 16 -228856 -162280 0; #X text 98 395 float; #X obj 247 395 pddp/pddplink ../3.audio.examples/B15.tabread4~-onset.pd -text doc/3.audio.examples/B15.tabread4~-onset.pd; #X text 168 395 - onset. See:; #X obj 100 560 pddp/pddplink ../3.audio.examples/B06.table.switching.pd -text doc/3.audio.examples/B06.table.switching.pd; #X obj 100 575 pddp/pddplink ../3.audio.examples/B07.sampler.pd -text doc/3.audio.examples/B07.sampler.pd; #X obj 21 194 tabread4~ \$0-array; #X obj 289 247 table \$0-array2; #X obj 66 113 bng 15 250 50 0 empty empty empty 17 7 0 10 -4034 -1 -1; #X obj 66 133 f \$0; #X msg 66 155 set \$1-array2; #X obj 170 280 s \$0-array2; #X msg 170 253 sinesum 256 1; #X connect 14 0 18 0; #X connect 15 0 14 0; #X connect 16 0 42 0; #X connect 17 0 16 0; #X connect 25 0 15 0; #X connect 42 0 14 0; #X connect 44 0 45 0; #X connect 45 0 46 0; #X connect 46 0 42 0; #X connect 48 0 47 0;