#N canvas 0 0 276 428 10; #N canvas 27 386 284 206 graph2 0; #X obj 23 53 tgl 15 0 pdon r_pdon On/Off 20 8 192 10 -262144 -1 -1 1 1; #X obj 24 112 tgl 15 0 samp-sin samp-r_sin Sinusoid 20 8 192 10 -262144 -1 -1 1 1; #X obj 24 133 tgl 15 0 samp-part samp-r_part Partials 20 8 192 10 -262144 -1 -1 0 1; #X obj 213 48 vsl 15 101 0 100 0 0 vol r_vol Volume -13 -8 192 10 -262144 -1 -1 0 1; #X obj 213 156 bng 15 250 50 0 mute empty Mute -6 23 128 10 -262144 -1 -1; #N canvas 401 282 297 328 guts 0; #X obj 24 284 s r_vol; #X obj 67 236 r vol; #X obj 110 236 r mute; #N canvas 280 341 501 152 initialize 0; #X msg 24 44 dsp \$1; #X obj 24 68 s pd; #X obj 89 20 loadbang; #X obj 89 44 1; #X obj 89 68 s r_pdon; #X obj 24 20 r pdon; #X obj 89 91 s samp-r_sin; #X obj 153 68 s samp-filton; #X obj 153 44 0; #X obj 249 42 1000; #X obj 249 68 s samp-samprate1; #X obj 250 90 s samp-samprate2; #X obj 367 68 s samp-freq1; #X obj 367 91 s samp-freq2; #X obj 367 43 440; #X connect 0 0 1 0; #X connect 2 0 3 0; #X connect 2 0 8 0; #X connect 2 0 9 0; #X connect 2 0 14 0; #X connect 3 0 4 0; #X connect 3 0 0 0; #X connect 3 0 6 0; #X connect 5 0 0 0; #X connect 8 0 7 0; #X connect 9 0 10 0; #X connect 9 0 11 0; #X connect 14 0 12 0; #X connect 14 0 13 0; #X restore 179 256 pd initialize; #N canvas 0 22 454 304 output 0; #X obj 333 148 t b; #X obj 333 98 f; #X obj 333 48 inlet; #X text 339 17 mute; #X obj 333 173 f; #X msg 421 168 0; #X msg 333 73 bang; #X obj 333 123 moses 1; #X obj 392 98 moses 1; #X obj 78 136 dbtorms; #X obj 392 73 r master-lvl; #X obj 78 30 r master-lvl; #X obj 333 198 s master-lvl; #X obj 15 143 inlet~; #X obj 194 29 inlet; #X text 194 6 level; #X obj 194 93 s master-lvl; #X msg 91 53 set \$1; #X obj 91 78 outlet; #X msg 209 53 \; pd dsp 1; #X obj 78 186 line~; #X obj 15 195 *~; #X obj 15 220 dac~; #X obj 78 161 pack 0 50; #X text 15 120 audio; #X text 91 102 show level; #X obj 421 143 t b; #X obj 15 169 hip~ 1; #X connect 0 0 4 0; #X connect 1 0 7 0; #X connect 2 0 6 0; #X connect 4 0 12 0; #X connect 5 0 12 0; #X connect 6 0 1 0; #X connect 7 0 0 0; #X connect 7 1 26 0; #X connect 8 1 4 1; #X connect 9 0 23 0; #X connect 10 0 1 1; #X connect 10 0 8 0; #X connect 11 0 9 0; #X connect 11 0 17 0; #X connect 13 0 27 0; #X connect 14 0 16 0; #X connect 14 0 19 0; #X connect 17 0 18 0; #X connect 20 0 21 1; #X connect 21 0 22 0; #X connect 21 0 22 1; #X connect 23 0 20 0; #X connect 26 0 5 0; #X connect 27 0 21 0; #X restore 24 259 pd output ---; #X obj 24 208 catch~ samp-todac; #N canvas 18 251 634 368 playback 0; #X obj 21 316 throw~ samp-todac; #X obj 174 314 throw~ samp-todac; #X obj 197 163 r samp-play_rec; #X obj 44 161 r samp-play_resampled; #X obj 44 265 line~; #X obj 44 242 pack 0 20; #X obj 44 216 1; #X obj 72 216 0; #X obj 197 263 line~; #X obj 197 240 pack 0 20; #X obj 197 214 1; #X obj 225 214 0; #X obj 21 293 *~; #X obj 174 286 *~; #X obj 314 316 throw~ samp-todac; #X obj 337 265 line~; #X obj 337 242 pack 0 20; #X obj 337 216 1; #X obj 365 216 0; #X obj 314 293 *~; #X obj 337 163 r samp-play_filtered; #X obj 462 317 throw~ samp-todac; #X obj 485 266 line~; #X obj 485 243 pack 0 20; #X obj 485 217 1; #X obj 513 217 0; #X obj 462 289 *~; #X obj 485 168 r samp-play_rec2; #X obj 513 193 del 1000; #X obj 365 191 del 1000; #X obj 225 189 del 1000; #X obj 72 189 del 1000; #X obj 21 61 change; #X obj 314 55 change; #N canvas 126 317 276 170 periodic_signals 0; #X obj 18 25 inlet; #X obj 18 88 osc~; #X text 18 4 freq1; #N canvas 210 347 395 236 signal_router 0; #X obj 21 18 inlet~; #X obj 72 18 inlet~; #X obj 21 211 outlet~; #X obj 21 186 *~; #X obj 72 186 *~; #X obj 37 158 line~; #X msg 37 133 \$1 20; #X obj 88 158 line~; #X msg 88 133 \$1 20; #X obj 195 151 s samp-r_sin; #X obj 195 62 sel 1; #X obj 252 61 sel 1; #X obj 195 87 0; #X obj 252 88 0; #X obj 195 15 r samp-sin; #X obj 195 38 change; #X obj 252 38 change; #X obj 252 15 r samp-part; #X obj 253 151 s samp-r_part; #X connect 0 0 3 0; #X connect 1 0 4 0; #X connect 3 0 2 0; #X connect 4 0 2 0; #X connect 5 0 3 1; #X connect 6 0 5 0; #X connect 7 0 4 1; #X connect 8 0 7 0; #X connect 10 0 12 0; #X connect 11 0 13 0; #X connect 12 0 8 0; #X connect 12 0 18 0; #X connect 13 0 6 0; #X connect 13 0 9 0; #X connect 14 0 15 0; #X connect 15 0 6 0; #X connect 15 0 10 0; #X connect 16 0 8 0; #X connect 16 0 11 0; #X connect 17 0 16 0; #X restore 18 113 pd signal_router; #X obj 18 136 outlet~; #N canvas 133 286 704 389 signal 0; #X obj 33 177 osc~; #X obj 132 177 osc~; #X obj 33 317 outlet~; #X obj 132 278 *~ 0.5; #X obj 233 177 osc~; #X obj 233 278 *~ 0.25; #X obj 334 177 osc~; #X obj 334 278 *~ 0.125; #X obj 435 177 osc~; #X obj 435 278 *~ 0.0625; #X obj 17 33 inlet; #X obj 132 77 * 2; #X obj 233 77 * 3; #X obj 334 77 * 4; #X obj 435 77 * 5; #X obj 618 82 r samp-filton; #X obj 494 116 / 2; #X obj 132 100 t f f; #X obj 233 100 t f f; #X obj 334 100 t f f; #X obj 435 100 t f f; #X obj 33 278 *~ 1; #N canvas 638 22 302 245 filter 0; #X obj 14 74 >; #X obj 14 119 0; #X obj 42 120 1; #X obj 14 12 inlet; #X obj 60 12 inlet; #X obj 103 12 inlet; #X obj 14 171 outlet; #X obj 103 73 t b; #X obj 14 148 f; #X obj 14 97 sel 1 0; #X obj 60 37 t b f; #X connect 0 0 9 0; #X connect 1 0 8 1; #X connect 2 0 8 1; #X connect 3 0 0 0; #X connect 4 0 10 0; #X connect 5 0 7 0; #X connect 7 0 8 0; #X connect 8 0 6 0; #X connect 9 0 1 0; #X connect 9 1 2 0; #X connect 10 0 0 0; #X connect 10 1 0 1; #X restore 63 177 pd filter; #N canvas 5 22 282 240 filter 0; #X obj 15 67 >; #X obj 15 112 0; #X obj 15 15 inlet; #X obj 61 15 inlet; #X obj 104 15 inlet; #X obj 15 164 outlet; #X obj 43 113 0.5; #X obj 104 66 t b; #X obj 15 141 f; #X obj 15 90 sel 1 0; #X obj 60 37 t b f; #X connect 0 0 9 0; #X connect 1 0 8 1; #X connect 2 0 0 0; #X connect 3 0 10 0; #X connect 4 0 7 0; #X connect 6 0 8 1; #X connect 7 0 8 0; #X connect 8 0 5 0; #X connect 9 0 1 0; #X connect 9 1 6 0; #X connect 10 0 0 0; #X connect 10 1 0 1; #X restore 162 177 pd filter; #N canvas 5 22 281 200 filter 0; #X obj 14 67 >; #X obj 14 112 0; #X obj 14 14 inlet; #X obj 60 14 inlet; #X obj 103 14 inlet; #X obj 14 164 outlet; #X obj 41 113 0.25; #X obj 103 63 t b; #X obj 14 141 f; #X obj 14 90 sel 1 0; #X obj 60 37 t b f; #X connect 0 0 9 0; #X connect 1 0 8 1; #X connect 2 0 0 0; #X connect 3 0 10 0; #X connect 4 0 7 0; #X connect 6 0 8 1; #X connect 7 0 8 0; #X connect 8 0 5 0; #X connect 9 0 1 0; #X connect 9 1 6 0; #X connect 10 0 0 0; #X connect 10 1 0 1; #X restore 263 177 pd filter; #N canvas 228 72 276 206 filter 0; #X obj 15 66 >; #X obj 15 111 0; #X obj 15 14 inlet; #X obj 61 14 inlet; #X obj 105 15 inlet; #X obj 15 163 outlet; #X obj 43 112 0.125; #X obj 105 64 t b; #X obj 15 140 f; #X obj 15 89 sel 1 0; #X obj 60 37 t b f; #X connect 0 0 9 0; #X connect 1 0 8 1; #X connect 2 0 0 0; #X connect 3 0 10 0; #X connect 4 0 7 0; #X connect 6 0 8 1; #X connect 7 0 8 0; #X connect 8 0 5 0; #X connect 9 0 1 0; #X connect 9 1 6 0; #X connect 10 0 0 0; #X connect 10 1 0 1; #X restore 364 177 pd filter; #N canvas 5 22 276 227 filter 0; #X obj 16 68 >; #X obj 16 113 0; #X obj 16 16 inlet; #X obj 62 16 inlet; #X obj 105 16 inlet; #X obj 16 188 outlet; #X obj 44 114 0.0625; #X obj 16 158 f; #X obj 105 68 t b; #X obj 16 91 sel 1 0; #X obj 60 37 t b f; #X connect 0 0 9 0; #X connect 1 0 7 1; #X connect 2 0 0 0; #X connect 3 0 10 0; #X connect 4 0 8 0; #X connect 6 0 7 1; #X connect 7 0 5 0; #X connect 8 0 7 0; #X connect 9 0 1 0; #X connect 9 1 6 0; #X connect 10 0 0 0; #X connect 10 1 0 1; #X restore 465 177 pd filter; #X obj 82 260 1; #X obj 188 260 0.5; #X obj 291 260 0.25; #X obj 397 260 0.125; #X obj 505 260 0.0625; #X obj 656 218 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X floatatom 493 204 5 0 0; #X floatatom 385 202 5 0 0; #X floatatom 277 205 5 0 0; #X floatatom 169 207 5 0 0; #X floatatom 63 203 5 0 0; #X obj 618 121 change; #X obj 17 59 t b f f f f f f; #X obj 56 233 spigot; #X obj 169 233 spigot; #X obj 277 233 spigot; #X obj 385 233 spigot; #X obj 493 233 spigot; #X obj 618 159 t b f b b; #X obj 560 242 sel 0 1; #X obj 494 93 r samp-samprate2; #X connect 0 0 21 0; #X connect 1 0 3 0; #X connect 3 0 2 0; #X connect 4 0 5 0; #X connect 5 0 2 0; #X connect 6 0 7 0; #X connect 7 0 2 0; #X connect 8 0 9 0; #X connect 9 0 2 0; #X connect 10 0 39 0; #X connect 11 0 17 0; #X connect 12 0 18 0; #X connect 13 0 19 0; #X connect 14 0 20 0; #X connect 15 0 38 0; #X connect 16 0 24 1; #X connect 16 0 25 1; #X connect 16 0 23 1; #X connect 16 0 26 1; #X connect 16 0 22 1; #X connect 17 0 1 0; #X connect 17 1 23 0; #X connect 18 0 4 0; #X connect 18 1 24 0; #X connect 19 0 6 0; #X connect 19 1 25 0; #X connect 20 0 8 0; #X connect 20 1 26 0; #X connect 21 0 2 0; #X connect 22 0 37 0; #X connect 23 0 36 0; #X connect 24 0 35 0; #X connect 25 0 34 0; #X connect 26 0 33 0; #X connect 27 0 21 1; #X connect 28 0 3 1; #X connect 29 0 5 1; #X connect 30 0 7 1; #X connect 31 0 9 1; #X connect 32 0 44 1; #X connect 32 0 43 1; #X connect 32 0 42 1; #X connect 32 0 41 1; #X connect 32 0 40 1; #X connect 33 0 44 0; #X connect 34 0 43 0; #X connect 35 0 42 0; #X connect 36 0 41 0; #X connect 37 0 40 0; #X connect 38 0 45 0; #X connect 39 0 22 2; #X connect 39 0 23 2; #X connect 39 0 24 2; #X connect 39 0 25 2; #X connect 39 0 26 2; #X connect 39 1 0 0; #X connect 39 2 22 0; #X connect 39 3 11 0; #X connect 39 4 12 0; #X connect 39 5 13 0; #X connect 39 6 14 0; #X connect 40 0 21 1; #X connect 41 0 3 1; #X connect 42 0 5 1; #X connect 43 0 7 1; #X connect 44 0 9 1; #X connect 45 1 46 0; #X connect 45 2 32 0; #X connect 45 3 22 2; #X connect 45 3 23 2; #X connect 45 3 24 2; #X connect 45 3 25 2; #X connect 45 3 26 2; #X connect 46 0 28 0; #X connect 46 0 29 0; #X connect 46 0 30 0; #X connect 46 0 31 0; #X connect 46 0 28 0; #X connect 46 0 27 0; #X connect 46 1 33 0; #X connect 46 1 34 0; #X connect 46 1 35 0; #X connect 46 1 36 0; #X connect 46 1 37 0; #X connect 47 0 16 0; #X restore 125 89 pd signal; #X connect 0 0 1 0; #X connect 0 0 5 0; #X connect 1 0 3 0; #X connect 3 0 4 0; #X connect 5 0 3 1; #X restore 314 85 pd periodic_signals; #X text 18 20 question 2; #X text 312 13 question 3; #X obj 21 40 r samp-freq1; #X obj 314 34 r samp-freq2; #N canvas 0 22 511 348 resampler 0; #X obj 90 36 phasor~ 1000; #X obj 147 129 cos~; #X obj 111 129 cos~; #X obj 147 104 *~ 2; #X obj 180 129 cos~; #X obj 213 129 cos~; #X obj 247 129 cos~; #X obj 280 129 cos~; #X obj 313 129 cos~; #X obj 346 129 cos~; #X obj 379 129 cos~; #X obj 412 129 cos~; #X obj 180 104 *~ 3; #X obj 213 104 *~ 4; #X obj 247 104 *~ 5; #X obj 280 104 *~ 6; #X obj 313 104 *~ 7; #X obj 346 104 *~ 8; #X obj 379 104 *~ 9; #X obj 412 104 *~ 10; #X obj 90 195 *~ 0.1; #X obj 37 213 *~; #X obj 37 238 bp~ 100 0.6; #X obj 37 278 bp~ 200 1; #X obj 37 37 inlet~; #X obj 37 303 outlet~; #X obj 90 11 r samp-samprate1; #X connect 0 0 3 0; #X connect 0 0 2 0; #X connect 0 0 12 0; #X connect 0 0 13 0; #X connect 0 0 14 0; #X connect 0 0 15 0; #X connect 0 0 16 0; #X connect 0 0 17 0; #X connect 0 0 18 0; #X connect 0 0 19 0; #X connect 0 0 20 0; #X connect 1 0 20 0; #X connect 2 0 20 0; #X connect 3 0 1 0; #X connect 4 0 20 0; #X connect 5 0 20 0; #X connect 6 0 20 0; #X connect 7 0 20 0; #X connect 8 0 20 0; #X connect 9 0 20 0; #X connect 10 0 20 0; #X connect 11 0 20 0; #X connect 12 0 4 0; #X connect 13 0 5 0; #X connect 14 0 6 0; #X connect 15 0 7 0; #X connect 16 0 8 0; #X connect 17 0 9 0; #X connect 18 0 10 0; #X connect 19 0 11 0; #X connect 20 0 21 1; #X connect 21 0 22 0; #X connect 22 0 23 0; #X connect 23 0 25 0; #X connect 24 0 21 0; #X connect 26 0 0 0; #X restore 21 117 pd resampler; #N canvas 126 317 276 170 periodic_signals 0; #X obj 18 25 inlet; #X obj 18 88 osc~; #X text 18 4 freq1; #N canvas 210 347 395 236 signal_router 0; #X obj 21 18 inlet~; #X obj 72 18 inlet~; #X obj 21 211 outlet~; #X obj 21 186 *~; #X obj 72 186 *~; #X obj 37 158 line~; #X msg 37 133 \$1 20; #X obj 88 158 line~; #X msg 88 133 \$1 20; #X obj 195 151 s samp-r_sin; #X obj 195 62 sel 1; #X obj 252 61 sel 1; #X obj 195 87 0; #X obj 252 88 0; #X obj 195 15 r samp-sin; #X obj 195 38 change; #X obj 252 38 change; #X obj 252 15 r samp-part; #X obj 253 151 s samp-r_part; #X connect 0 0 3 0; #X connect 1 0 4 0; #X connect 3 0 2 0; #X connect 4 0 2 0; #X connect 5 0 3 1; #X connect 6 0 5 0; #X connect 7 0 4 1; #X connect 8 0 7 0; #X connect 10 0 12 0; #X connect 11 0 13 0; #X connect 12 0 8 0; #X connect 12 0 18 0; #X connect 13 0 6 0; #X connect 13 0 9 0; #X connect 14 0 15 0; #X connect 15 0 6 0; #X connect 15 0 10 0; #X connect 16 0 8 0; #X connect 16 0 11 0; #X connect 17 0 16 0; #X restore 18 113 pd signal_router; #X obj 18 136 outlet~; #N canvas 133 286 704 389 signal 0; #X obj 33 106 osc~; #X obj 70 106 osc~; #X obj 33 179 outlet~; #X obj 70 140 *~ 0.5; #X obj 120 106 osc~; #X obj 120 140 *~ 0.25; #X obj 176 106 osc~; #X obj 176 140 *~ 0.125; #X obj 239 105 osc~; #X obj 239 139 *~ 0.0625; #X obj 33 27 inlet; #X obj 70 77 * 2; #X obj 120 77 * 3; #X obj 176 77 * 4; #X obj 239 76 * 5; #X obj 33 140 *~ 1; #X connect 0 0 15 0; #X connect 1 0 3 0; #X connect 3 0 2 0; #X connect 4 0 5 0; #X connect 5 0 2 0; #X connect 6 0 7 0; #X connect 7 0 2 0; #X connect 8 0 9 0; #X connect 9 0 2 0; #X connect 10 0 0 0; #X connect 10 0 11 0; #X connect 10 0 12 0; #X connect 10 0 13 0; #X connect 10 0 14 0; #X connect 11 0 1 0; #X connect 12 0 4 0; #X connect 13 0 6 0; #X connect 14 0 8 0; #X connect 15 0 2 0; #X restore 125 89 pd signal; #X connect 0 0 1 0; #X connect 0 0 5 0; #X connect 1 0 3 0; #X connect 3 0 4 0; #X connect 5 0 3 1; #X restore 21 89 pd periodic_signals; #N canvas 0 22 511 348 resampler 0; #X obj 90 36 phasor~ 1000; #X obj 147 129 cos~; #X obj 111 129 cos~; #X obj 147 104 *~ 2; #X obj 180 129 cos~; #X obj 213 129 cos~; #X obj 247 129 cos~; #X obj 280 129 cos~; #X obj 313 129 cos~; #X obj 346 129 cos~; #X obj 379 129 cos~; #X obj 412 129 cos~; #X obj 180 104 *~ 3; #X obj 213 104 *~ 4; #X obj 247 104 *~ 5; #X obj 280 104 *~ 6; #X obj 313 104 *~ 7; #X obj 346 104 *~ 8; #X obj 379 104 *~ 9; #X obj 412 104 *~ 10; #X obj 90 195 *~ 0.1; #X obj 37 213 *~; #X obj 37 238 bp~ 100 0.6; #X obj 37 278 bp~ 200 1; #X obj 37 37 inlet~; #X obj 37 303 outlet~; #X obj 90 11 r samp-samprate1; #X connect 0 0 3 0; #X connect 0 0 2 0; #X connect 0 0 12 0; #X connect 0 0 13 0; #X connect 0 0 14 0; #X connect 0 0 15 0; #X connect 0 0 16 0; #X connect 0 0 17 0; #X connect 0 0 18 0; #X connect 0 0 19 0; #X connect 0 0 20 0; #X connect 1 0 20 0; #X connect 2 0 20 0; #X connect 3 0 1 0; #X connect 4 0 20 0; #X connect 5 0 20 0; #X connect 6 0 20 0; #X connect 7 0 20 0; #X connect 8 0 20 0; #X connect 9 0 20 0; #X connect 10 0 20 0; #X connect 11 0 20 0; #X connect 12 0 4 0; #X connect 13 0 5 0; #X connect 14 0 6 0; #X connect 15 0 7 0; #X connect 16 0 8 0; #X connect 17 0 9 0; #X connect 18 0 10 0; #X connect 19 0 11 0; #X connect 20 0 21 1; #X connect 21 0 22 0; #X connect 22 0 23 0; #X connect 23 0 25 0; #X connect 24 0 21 0; #X connect 26 0 0 0; #X restore 314 109 pd resampler; #X connect 2 0 10 0; #X connect 2 0 30 0; #X connect 3 0 6 0; #X connect 3 0 31 0; #X connect 4 0 12 1; #X connect 5 0 4 0; #X connect 6 0 5 0; #X connect 7 0 5 0; #X connect 8 0 13 1; #X connect 9 0 8 0; #X connect 10 0 9 0; #X connect 11 0 9 0; #X connect 12 0 0 0; #X connect 13 0 1 0; #X connect 15 0 19 1; #X connect 16 0 15 0; #X connect 17 0 16 0; #X connect 18 0 16 0; #X connect 19 0 14 0; #X connect 20 0 17 0; #X connect 20 0 29 0; #X connect 22 0 26 1; #X connect 23 0 22 0; #X connect 24 0 23 0; #X connect 25 0 23 0; #X connect 26 0 21 0; #X connect 27 0 24 0; #X connect 27 0 28 0; #X connect 28 0 25 0; #X connect 29 0 18 0; #X connect 30 0 11 0; #X connect 31 0 7 0; #X connect 32 0 40 0; #X connect 33 0 34 0; #X connect 34 0 41 0; #X connect 34 0 26 0; #X connect 37 0 32 0; #X connect 38 0 33 0; #X connect 39 0 12 0; #X connect 40 0 39 0; #X connect 40 0 13 0; #X connect 41 0 19 0; #X restore 179 206 pd playback; #N canvas 4 302 621 391 visual 0; #X obj 57 280 line~; #X obj 57 304 tabread4~ recorder; #X floatatom 57 114 5 0 0; #X obj 57 164 tabwrite~ recorder; #X obj 27 211 t b b; #X obj 27 57 change; #X obj 27 86 t b f; #X obj 27 31 r samp-lowfreq; #X obj 57 140 osc~; #X text 25 8 question 1; #X msg 58 256 0 \, 8820 0.090703; #X obj 27 186 del 200; #X obj 112 33 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 27 329 tabwrite~ visual; #N canvas 0 22 450 300 graph3 0; #X array recorder 8820 float 0; #X coords 0 1 8819 -1 200 140 1; #X restore 217 30 graph; #X connect 0 0 1 0; #X connect 1 0 13 0; #X connect 2 0 8 0; #X connect 4 0 13 0; #X connect 4 1 10 0; #X connect 5 0 6 0; #X connect 6 0 3 0; #X connect 6 0 11 0; #X connect 6 1 2 0; #X connect 7 0 5 0; #X connect 8 0 3 0; #X connect 10 0 0 0; #X connect 11 0 4 0; #X connect 12 0 5 0; #X restore 179 231 pd visual; #X connect 1 0 4 1; #X connect 2 0 4 2; #X connect 4 0 0 0; #X connect 5 0 4 0; #X restore 20 13 pd guts; #X coords 0 1 100 -1 170 200 1; #X restore 8 14 graph; #X text 21 101 Signal Type:; #X text 35 23 Global Controls:; #N canvas 186 0 430 428 question1 0; #N canvas 118 327 413 222 graph5 0; #X floatatom 24 37 5 0 1000; #X obj 24 63 s samp-lowfreq; #N canvas 0 22 454 304 graph6 0; #X array visual 32 float 0; #X coords 0 1 31 -1 200 140 1; #X restore 177 10 graph; #X connect 0 0 1 0; #X coords 0 1 100 -1 380 160 1; #X restore 19 84 graph; #X text 41 93 Freqency; #X text 5 247 Directions:; #X text 5 294 2) Increment the frequency by some interval then count the cycles.; #X text 5 324 3)Repeat step two until the number of peaks starts to decrease.; #X text 5 354 4) Once the number of peaks starts to decrease \, the nyquist will be somewhere in between that frequency and the last frequency you tried. Look at the frequencies in between until you find the one with the most peaks. This is the nyquist frequency.; #X text 7 13 1) The table below is 0.1 second long and records at a low enough sample rate that you won't be able to hear its output but you'll be able to clearly see what is happening. By changing the frequency and observing the table \, find the sampling rate.; #X text 5 264 1) Set the frequency to 10 Hz and count the cycles of the wave (you can do this easily by counting the peaks).; #X restore 28 315 pd question1; #N canvas 187 0 430 428 question2 0; #N canvas 482 318 284 171 graph4 0; #X floatatom 20 10 5 0 22050; #X obj 20 113 bng 15 250 50 0 samp-play_resampled empty sampled 20 8 128 10 -262144 -1 -1; #X obj 20 140 bng 15 250 50 0 samp-play_rec empty original 20 8 128 10 -262144 -1 -1; #X floatatom 20 41 5 0 44100; #X obj 57 10 s samp-freq1; #X obj 57 41 s samp-samprate1; #X obj 114 10 r samp-freq1; #X obj 141 41 r samp-samprate1; #X msg 141 72 set \$1; #X msg 170 10 set \$1; #X connect 0 0 4 0; #X connect 3 0 5 0; #X connect 6 0 9 0; #X connect 7 0 8 0; #X connect 8 0 3 0; #X connect 9 0 0 0; #X coords 0 1 100 -1 140 120 1; #X restore 126 71 graph; #X text 182 77 Frequency; #X text 182 103 Sample Rate; #X text 136 129 Playback; #X text 9 11 2) With a sample rate of 1000 Hz \, what is the difference \, if any \, between sinusoidal and sinusoidal with partial signals at frequencies of 100 Hz \, 440 Hz \, and 900 Hz? What causes this difference or similarity?; #X text 13 195 Directions:; #X text 13 221 1) Set the Sample rate to 1000; #X text 13 247 2) Set the signal type to sinusoid.; #X text 13 273 3) Set the frequency to 100; #X text 13 351 5) Repeat steps 2-4 with signal type Partials.; #X text 13 377 6) Compare the two cases.; #X text 13 403 7) Repeat steps 2-6 for 440 Hz and 900 Hz.; #X text 13 299 4) Wait for the new sample to be recorded then play the resampled version by clicking the sampled button under Playback. ; #X restore 28 340 pd question2; #X text 8 220 To access the patch for; #X text 8 242 a question \, click the; #X text 8 264 appropriate box below.; #N canvas 185 0 432 428 about 0; #X text 10 9 Sampling Theorem; #X text 10 30 This patch demonstrates sampling. Of course \, we're already digital since we're using a computer \, but we can examine the problems of sampling by downsampling from 44.1kHz (standard cd rate) to a lower sampling rate.; #X text 10 90 The first question shows a graph af a very short snipped of a waveform. It is low enough at a low sampling rate to make the effect of sampling visible. In addition to being able to visibly find the nyquist frequency and from it the sampling rate \, you will be able to see the effect of sampling on amplitude.; #X text 10 176 The second and third question allow you to hear the difference between a sound and a sampled version of that sound. You can set the source signal to either a single sinusoid or a sinusoid with four harmonic partials of successively lower amplitudes (for a total of five harmonic sinusoids). Question 2 lets you hear the effects of wrap-around \, or aliasing. Question 3 demonstrates how aliasing is avoided.; #X restore 28 292 pd about; #N canvas 187 0 431 428 question3 0; #N canvas 279 330 353 154 graph4 0; #X floatatom 21 14 5 0 22050; #X obj 219 52 bng 15 250 50 0 samp-play_filtered empty sampling 20 8 128 10 -262144 -1 -1; #X obj 219 87 bng 15 250 50 0 samp-play_rec2 empty original 20 8 128 10 -262144 -1 -1; #X floatatom 21 48 5 0 44100; #X obj 21 116 tgl 15 0 samp-filton empty On/Off 20 8 128 10 -262144 -1 -1 0 1; #X obj 58 14 s samp-freq2; #X obj 58 48 s samp-samprate2; #X obj 21 70 r samp-samprate2; #X msg 100 70 set \$1; #X msg 169 14 set \$1; #X obj 113 14 r samp-freq2; #X connect 0 0 5 0; #X connect 3 0 6 0; #X connect 7 0 8 0; #X connect 8 0 3 0; #X connect 9 0 0 0; #X connect 10 0 9 0; #X coords 0 1 100 -1 270 100 1; #X restore 61 105 graph; #X text 124 115 Frequency; #X text 124 136 Sample Rate; #X text 231 119 Playback; #X text 75 164 Filter; #X text 13 233 Directions:; #X text 13 254 1) Set the signal type to partials.; #X text 13 275 2) Pick a sample rate and a frequency below the nyquist frequency whose partials lie above the nyquist frequency (frequency of 440 with a sampling rate of 1000 works).; #X text 13 322 3) With the filter turned off \, wait for the new recording to be made then play the recording.; #X text 13 356 4) Turn the filter on \, wait for the new recording to be made \, then play the recording.; #X text 13 390 5) Compare your results.; #X text 13 7 3) In this patch \, you can turn on and off a filter that filters the signal with a cutoff at the nyquist rate before sampling. What happens when a signal with partials is filtered before sampling with a cutoff at the nyquist frequency and how does this compare to the signal with no filter?; #X restore 28 364 pd question3; #N canvas 200 0 418 428 help 0; #X obj 11 89 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 ; #X obj 6 24 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1 ; #X floatatom 11 170 5 0 0; #X obj 11 373 vsl 15 40 0 127 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X text 6 2 Interface Help; #X text 30 23 Bang; #X text 31 89 Toggle; #X text 52 169 Number Box; #X text 35 371 Slider; #X text 11 41 A bang is a button that has no state (see toggle) and is used to trigger something. Clicking on one should do whatever the label next to it says.; #X text 11 109 A toggle is a button that has state (it either has an X in it or it does not). Toggles are often used as on/off switches \, with an X indicating that something has been turned on.; #X text 11 193 A number box lets you set values. You can enter things into a number box in two ways. The easiest way to enter a specific number is to click in the box \, type the desired number \, then press return. If would like to scroll through settings \, you can click in the box and move the mouse up or down while holding down the (left) button. This will scroll through by ones. To scroll through by hundredths \, hold down the shift key while scrolling. If a box won't let you scroll below or above a particular number \, it has been set not to let you slide past that number for some reason. Wile you can probably type the number in and have it work \, it might be a bad idea \, since the boundary was put there for a reason.; #X text 34 404 the slider bar up or down to change its value.; #X text 34 390 Sliders work a lot like number boxes. Click and drag ; #X restore 28 388 pd help;