sonogram~-help.pd 8.92 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321
#N canvas 0 1 450 300 10;
#N canvas 7 13 986 674 rs-sonogram~ 0;
#X msg 306 57 record;
#X msg 19 34 bang;
#X obj 19 54 openpanel;
#X obj 21 152 soundfiler;
#X msg 259 42 bang;
#X obj 262 101 rfft~;
#X floatatom 59 171 10 0 0 0 - - -;
#X msg 20 211 resize \$1;
#X obj 19 74 t s b;
#X obj 22 114 pack s s;
#X msg 21 135 read -resize \$1 \$2;
#X obj 68 74 float \$0;
#X text 21 9 Step 1 : Load a sound file;
#X obj 775 595 table \$0-sonosample;
#X msg 927 588 \; pd dsp 1;
#X msg 484 36 play;
#X obj 262 195 outlet~;
#X text 491 10 Step 3 : Play the recorded sonogram;
#X msg 992 589 \; pd dsp 0;
#X obj 21 171 / 256;
#X obj 486 59 hsl 128 15 0 100 0 0 empty empty empty 20 8 0 8 -262144
-1 -1 0 1;
#X text 460 59 0 %;
#X text 620 58 100 %;
#X obj 487 77 hsl 128 15 0 100 0 0 empty empty empty 20 8 0 8 -262144
-1 -1 12700 1;
#X text 461 80 0 %;
#X text 622 76 100 %;
#X msg 661 74 100;
#X obj 691 74 loadbang;
#X text 640 40 Playback positions;
#X obj 783 93 hsl 128 15 0 100 0 0 empty empty empty 20 8 0 8 -262144
-1 -1 0 1;
#X text 756 94 0 %;
#X text 917 92 100 %;
#X obj 784 111 hsl 128 15 0 100 0 0 empty empty empty 20 8 0 8 -262144
-1 -1 12700 1;
#X text 756 114 0 %;
#X text 919 110 100 %;
#X text 783 76 Set portion of the sonogram to modify;
#X msg 953 108 100;
#N canvas 656 8 600 544 modifications 0;
#X text 234 236 Filter a frequency;
#X text 254 190 Enhance a frequency by 10% ( might be a range of frequencies
with message 'enhance f1 f2 x' );
#X text 180 309 Flip frequencies ( dogs love it );
#X msg 108 265 swappoints 1000;
#X obj 181 134 hdl 8 1 0 128 empty empty empty 20 8 0 8 -260818 -24198
-128992 0;
#X msg 108 153 swapfreqs \$1 \$2;
#X obj 224 152 pack f f;
#X text 220 267 Swap 1000 points ( rain effect );
#X msg 153 131 \$1;
#X obj 108 131 change;
#X obj 181 114 hdl 8 1 0 128 empty empty empty 20 8 0 8 -260818 -24198
-128992 0;
#X msg 153 111 \$1;
#X obj 108 111 change;
#X obj 180 182 hdl 8 1 0 128 empty empty empty 20 8 0 8 -260818 -24198
-128992 0;
#X obj 180 223 hdl 8 1 0 128 empty empty empty 20 8 0 8 -260818 -24198
-128992 0;
#X text 285 152 Swap two frequencies ( set 2nd \, click 1st );
#X msg 110 308 flipfreqs;
#X msg 110 330 flipblocks;
#X text 243 286 Swap section [0% \, 20%] and [50% \, 70%] of [start
\, end];
#X text 188 328 Flip blocks ( reverse effect );
#X msg 110 287 swapblocks 0 50 20;
#X text 228 66 Move frequencies up or down;
#X msg 110 91 roll 2;
#X msg 112 350 zswap;
#X text 364 374 Change the phase;
#X text 180 350 Exchange real and imaginery parts ( noisy filter )
;
#X msg 113 374 phase \$1;
#X obj 200 373 hsl 128 15 0 90 0 0 empty empty empty 20 8 0 8 -262144
-1 -1 0 1;
#X text 184 373 0;
#X text 339 374 90;
#X obj 187 415 hdl 8 1 0 128 empty empty empty 20 8 0 8 -260818 -24198
-128992 0;
#X msg 113 429 add \$1 \$1 0.5;
#X text 216 429 Add a constant to a frequency;
#X obj 189 451 hdl 8 1 0 128 empty empty empty 20 8 0 8 -260818 -24198
-128992 0;
#X msg 115 466 add \$1 \$1 -0.5;
#X text 218 465 Sub a constant from a frequency;
#X text 198 393 Average over 100 blocks ( smooth with some sounds )
;
#X obj 16 454 outlet;
#X msg 109 69 goup 1;
#X msg 159 69 godown 5;
#X msg 107 198 enhance \$1 \$1 1.1 0;
#X msg 116 488 threshold \$1;
#X floatatom 208 489 5 0 0 0 - - -;
#X msg 107 239 enhance \$1 \$1 0 0;
#X text 249 488 Suppress all points below the threshold;
#X text 159 91 Roll frequencies : same as above but without loss;
#X msg 113 395 average 10;
#X connect 3 0 37 0;
#X connect 4 0 8 0;
#X connect 5 0 37 0;
#X connect 6 0 5 0;
#X connect 8 0 9 0;
#X connect 9 0 6 1;
#X connect 10 0 11 0;
#X connect 11 0 12 0;
#X connect 12 0 6 0;
#X connect 13 0 40 0;
#X connect 14 0 43 0;
#X connect 16 0 37 0;
#X connect 17 0 37 0;
#X connect 20 0 37 0;
#X connect 22 0 37 0;
#X connect 23 0 37 0;
#X connect 26 0 37 0;
#X connect 27 0 26 0;
#X connect 30 0 31 0;
#X connect 31 0 37 0;
#X connect 33 0 34 0;
#X connect 34 0 37 0;
#X connect 38 0 37 0;
#X connect 39 0 37 0;
#X connect 40 0 37 0;
#X connect 41 0 37 0;
#X connect 42 0 41 0;
#X connect 43 0 37 0;
#X connect 46 0 37 0;
#X restore 861 131 pd modifications;
#X text 513 609 Zoom factor (>1);
#X msg 418 608 zoom 2;
#X obj 256 79 tabplay~ \$0-sonosample;
#X obj 114 263 sonogram~ 2452 1 1;
#X msg 467 608 zoom 1;
#X msg 484 99 readspeed \$1;
#X floatatom 617 99 5 0 0 0 - - -;
#X text 487 121 Reading speed;
#X obj 576 99 / 100;
#X msg 661 99 100;
#X obj 692 99 loadbang;
#X msg 779 167 play;
#X msg 780 186 open /tmp/sonogram.wav;
#X obj 779 229 writesf~ 2;
#X msg 780 207 start;
#X msg 822 207 stop;
#X msg 418 652 modstep \$1;
#X floatatom 499 652 5 0 0 0 - - -;
#X obj 525 36 spigot;
#X obj 573 36 tgl 15 0 empty empty empty 20 8 0 8 -262144 -1 -1 0 1
;
#X text 600 37 Loop;
#X text 70 547 Mouse modifications :;
#X text 557 656 ( default = 1.1 );
#X text 558 646 Value added or multiplied ( can be < 0 );
#X obj 527 588 tgl 15 0 empty empty empty 20 8 0 8 -262144 -1 -1 0
1;
#X obj 19 93 route float;
#X msg 418 587 enhancemode \$1;
#X text 821 166 Record;
#X text 89 562 Normal mode;
#X text 30 579 <shift>click :;
#X text 128 579 add modstep to the selected data;
#X text 43 590 <alt>click :;
#X text 161 590 erase selected data;
#X text 154 645 erase selected data;
#X text 88 615 Enhanced mode;
#X text 2 600 <shift><alt>click :;
#X text 162 601 paste selected data;
#X text 129 656 add selected data at the new location;
#X text 483 546 Graphic actions;
#X text 128 632 multiply the selected data by modstep;
#X obj 980 109 loadbang;
#X text 73 21 ( a small one );
#X text 417 569 Activate enhance mode;
#X text 785 57 Step 4 : modify parts of the sonogram;
#X obj 260 126 rifft~;
#X msg 418 630 refresh;
#X text 239 10 Step 2 : Record the sonogram;
#X obj 927 565 loadbang;
#N canvas 0 1 682 488 envelop 0;
#X obj 33 400 outlet;
#X obj 46 327 tabread envelop;
#X msg 23 263 bang;
#X floatatom 23 299 5 0 0 0 - - -;
#X obj 71 280 + 1;
#X msg 23 281 0;
#X text 25 239 Apply envelop;
#X obj 68 300 delay 1000;
#X obj 136 300 f;
#X obj 34 354 pack f f;
#X obj 368 349 loadbang;
#X msg 425 349 bang;
#X msg 370 374 \; envelop const 1;
#X msg 203 381 refresh;
#X floatatom 160 280 5 0 0 0 - - -;
#X msg 163 300 bang;
#X obj 98 280 moses 127;
#X msg 485 347 bang;
#X msg 486 372 \; envelop const 0.001;
#X msg 33 377 enhance \$1 \$1 \$2 1;
#X obj 202 358 delay 1000;
#N canvas 0 0 450 300 graph2 0;
#X array envelop 64 float 1;
#A 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1;
#X coords 0 10 63 0 300 200 1;
#X restore 151 12 graph;
#X connect 1 0 9 1;
#X connect 2 0 5 0;
#X connect 3 0 1 0;
#X connect 3 0 8 1;
#X connect 3 0 7 0;
#X connect 3 0 9 0;
#X connect 4 0 3 0;
#X connect 5 0 3 0;
#X connect 7 0 8 0;
#X connect 8 0 16 0;
#X connect 9 0 19 0;
#X connect 10 0 12 0;
#X connect 11 0 12 0;
#X connect 13 0 0 0;
#X connect 14 0 15 0;
#X connect 15 0 20 0;
#X connect 16 0 4 0;
#X connect 16 1 14 0;
#X connect 17 0 18 0;
#X connect 19 0 0 0;
#X connect 20 0 13 0;
#X restore 780 131 pd envelop;
#X obj 310 174 / 100;
#X floatatom 309 147 5 0 0 0 - - -;
#X obj 263 174 *~ 1;
#X obj 261 149 /~ 256;
#X text 332 129 Volume;
#X text 31 631 <shift>click :;
#X text 44 642 <alt>click :;
#X text 3 652 <shift><alt>click :;
#X msg 488 630 undo;
#X text 526 630 One level undo;
#X obj 21 192 makefilename %d-sonosample;
#X msg 23 264 undo;
#X msg 17 317 zoom 1;
#X obj 829 571 block~ 256;
#X connect 0 0 41 0;
#X connect 1 0 2 0;
#X connect 2 0 8 0;
#X connect 3 0 19 0;
#X connect 4 0 0 0;
#X connect 4 0 40 0;
#X connect 5 0 41 0;
#X connect 5 1 41 1;
#X connect 6 0 7 0;
#X connect 7 0 41 0;
#X connect 8 0 9 0;
#X connect 8 1 11 0;
#X connect 9 0 10 0;
#X connect 10 0 3 0;
#X connect 11 0 63 0;
#X connect 15 0 41 0;
#X connect 19 0 6 0;
#X connect 20 0 41 2;
#X connect 23 0 41 3;
#X connect 26 0 23 0;
#X connect 27 0 26 0;
#X connect 29 0 41 4;
#X connect 32 0 41 5;
#X connect 36 0 32 0;
#X connect 37 0 41 0;
#X connect 39 0 41 0;
#X connect 40 0 5 0;
#X connect 40 0 89 0;
#X connect 41 0 82 0;
#X connect 41 1 82 1;
#X connect 41 3 53 0;
#X connect 41 3 56 0;
#X connect 42 0 41 0;
#X connect 43 0 41 0;
#X connect 44 0 46 0;
#X connect 46 0 43 0;
#X connect 47 0 44 0;
#X connect 48 0 47 0;
#X connect 49 0 41 0;
#X connect 49 0 50 0;
#X connect 49 0 52 0;
#X connect 50 0 51 0;
#X connect 52 0 51 0;
#X connect 53 0 51 0;
#X connect 54 0 41 0;
#X connect 55 0 54 0;
#X connect 56 0 15 0;
#X connect 57 0 56 1;
#X connect 62 0 64 0;
#X connect 63 0 97 0;
#X connect 64 0 41 0;
#X connect 78 0 36 0;
#X connect 82 0 90 0;
#X connect 83 0 41 0;
#X connect 85 0 14 0;
#X connect 86 0 41 0;
#X connect 87 0 89 1;
#X connect 88 0 87 0;
#X connect 89 0 16 0;
#X connect 89 0 51 0;
#X connect 89 0 51 1;
#X connect 90 0 89 0;
#X connect 95 0 41 0;
#X connect 97 0 9 1;
#X connect 98 0 41 0;
#X connect 99 0 41 0;
#X restore 134 93 pd rs-sonogram~;
#X text 193 27 To work properly \, the block size;
#X text 193 39 has to be redefined.;
#X msg 291 89 \; pd dsp 1;
#X msg 356 90 \; pd dsp 0;
#X text 193 51 that's why everything is in the subpatch.;
#X obj 132 130 dac~;
#X connect 0 0 6 0;
#X connect 0 0 6 1;