aboutsummaryrefslogtreecommitdiff
path: root/sonogram~/rs-sonograph~.pd
blob: a8531fa468f4813027869655c529996db30dbf81 (plain)
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
#N canvas 0 1 986 654 10;
#X msg 344 51 record;
#X msg 53 30 bang;
#X obj 53 50 openpanel;
#X obj 52 167 soundfiler;
#X msg 297 36 bang;
#X obj 298 99 rfft~;
#X floatatom 90 186 10 0 0;
#X msg 168 185 resize \$1;
#X obj 53 72 t s b;
#X obj 53 129 pack s s;
#X msg 52 150 read -resize \$1 \$2;
#X obj 99 71 float \$0;
#X obj 54 95 route float;
#X obj 52 207 makefilename %d-sonosample;
#X text 57 14 Step 1 : Load a sound file;
#X obj 820 17 table \$0-sonosample;
#X msg 822 43 \; pd dsp 1;
#X obj 121 580 rifft~;
#X msg 340 158 play;
#X obj 822 82 block~ 256;
#X obj 27 607 outlet~;
#X text 346 135 Step 3 : Play the recorded sonogram;
#X msg 887 44 \; pd dsp 0;
#X obj 52 186 / 256;
#X obj 121 607 /~ 256;
#X obj 342 181 hsl 128 15 0 100 0 0 empty empty empty 20 8 0 8 -262144
-1 -1 0 1;
#X text 316 181 0 %;
#X text 476 180 100 %;
#X obj 343 199 hsl 128 15 0 100 0 0 empty empty empty 20 8 0 8 -262144
-1 -1 12700 1;
#X text 317 202 0 %;
#X text 478 198 100 %;
#X msg 512 196 100;
#X obj 539 196 loadbang;
#X text 339 217 Playback positions;
#X obj 697 184 hsl 128 15 0 100 0 0 empty empty empty 20 8 0 8 -262144
-1 -1 0 1;
#X text 671 184 0 %;
#X text 831 183 100 %;
#X obj 698 202 hsl 128 15 0 100 0 0 empty empty empty 20 8 0 8 -262144
-1 -1 12700 1;
#X text 672 205 0 %;
#X text 833 201 100 %;
#X text 697 167 Set portion of the sonogram to modify;
#X text 883 183 Start Point;
#X text 883 198 End Point;
#X msg 695 220 100;
#X obj 722 220 loadbang;
#X text 242 15 Step 2 : Record the sonogram;
#N canvas 309 22 600 544 modifications 1;
#X text 234 236 Filter a frequency;
#X msg 107 239 filter \$1 \$1;
#X msg 105 161 enhance \$1 \$1 1.1;
#X msg 106 198 dim \$1 \$1 1.1;
#X text 236 155 Enhance a frequency by 10% ( might be a range of frequencies
with message 'enhance f1 f2 x' );
#X text 234 198 Dim a frequency by 10 %;
#X text 180 309 Flip frequencies ( dogs love it );
#X msg 108 265 swappoints 1000;
#X obj 179 97 hdl 8 1 0 128 empty empty empty 20 8 0 8 -260818 -24198
-128992 0;
#X msg 106 116 swapfreqs \$1 \$2;
#X obj 223 116 pack f f;
#X text 218 264 Swap 1000 points ( rain effect );
#X msg 151 94 \$1;
#X obj 106 94 change;
#X obj 179 77 hdl 8 1 0 128 empty empty empty 20 8 0 8 -260818 -24198
-128992 0;
#X msg 151 74 \$1;
#X obj 106 74 change;
#X obj 178 145 hdl 8 1 0 128 empty empty empty 20 8 0 8 -260818 -24198
-128992 0;
#X obj 179 183 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 115 Swap two frequencies ( set 2nd \, click 1st );
#X msg 110 308 flipfreqs;
#X msg 110 330 flipblocks;
#X text 244 286 Swap section [0% \, 20%] and [50% \, 70%] of [start
\, end];
#X text 185 330 Flip blocks ( reverse effect );
#X msg 110 287 swapblocks 0 50 20;
#X msg 152 32 godown 1;
#X msg 107 32 goup 2;
#X text 218 32 Move frequencies up or down;
#X msg 108 54 roll 2;
#X text 210 45 Roll frequencies : same as above but without loss (
circular );
#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 msg 113 395 average 100;
#X text 190 395 Average over 100 blocks ( smooth with some sounds )
;
#X obj 16 454 outlet;
#X connect 1 0 46 0;
#X connect 2 0 46 0;
#X connect 3 0 46 0;
#X connect 7 0 46 0;
#X connect 8 0 12 0;
#X connect 9 0 46 0;
#X connect 10 0 9 0;
#X connect 12 0 13 0;
#X connect 13 0 10 1;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 16 0 10 0;
#X connect 17 0 2 0;
#X connect 18 0 3 0;
#X connect 19 0 1 0;
#X connect 21 0 46 0;
#X connect 22 0 46 0;
#X connect 25 0 46 0;
#X connect 26 0 46 0;
#X connect 27 0 46 0;
#X connect 29 0 46 0;
#X connect 31 0 46 0;
#X connect 34 0 46 0;
#X connect 35 0 34 0;
#X connect 38 0 39 0;
#X connect 39 0 46 0;
#X connect 41 0 42 0;
#X connect 42 0 46 0;
#X connect 44 0 46 0;
#X restore 694 150 pd modifications;
#X obj 298 73 tabplay~ \$0-sonosample;
#X obj 106 329 sonogram~ 256 0;
#X text 538 54 When the sonogram is RED (updating) \,;
#X text 537 43 VERY IMPORTANT NOTE :;
#X text 591 116 Step 4 : modify parts of the sonogram ... and send
a refresh message;
#X msg 337 234 readspeed \$1;
#X floatatom 468 234 5 0 0;
#X text 337 252 Reading speed;
#X obj 428 234 / 100;
#X msg 515 234 100;
#X obj 549 234 loadbang;
#X text 538 66 no update is possible;
#X msg 221 525 play;
#X msg 217 555 open /tmp/sonogram.wav;
#X obj 246 603 writesf~ 2;
#X msg 276 576 start;
#X msg 320 576 stop;
#X floatatom 172 609 5 0 0;
#X obj 436 158 tgl 15 0 empty empty empty 20 8 0 8 -262144 -1 -1 1
1;
#X text 464 160 Loop;
#X obj 381 159 spigot;
#X connect 0 0 48 0;
#X connect 1 0 2 0;
#X connect 2 0 8 0;
#X connect 3 0 23 0;
#X connect 4 0 0 0;
#X connect 4 0 47 0;
#X connect 5 0 48 0;
#X connect 5 1 48 1;
#X connect 6 0 7 0;
#X connect 7 0 48 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 12 0;
#X connect 12 0 13 0;
#X connect 13 0 9 1;
#X connect 17 0 24 0;
#X connect 18 0 48 0;
#X connect 23 0 6 0;
#X connect 24 0 20 0;
#X connect 24 0 61 0;
#X connect 24 0 61 1;
#X connect 25 0 48 2;
#X connect 28 0 48 3;
#X connect 31 0 28 0;
#X connect 32 0 31 0;
#X connect 34 0 48 4;
#X connect 37 0 48 5;
#X connect 43 0 37 0;
#X connect 44 0 43 0;
#X connect 46 0 48 0;
#X connect 47 0 5 0;
#X connect 47 0 20 0;
#X connect 48 0 17 0;
#X connect 48 1 17 1;
#X connect 48 3 63 0;
#X connect 48 3 67 0;
#X connect 52 0 48 0;
#X connect 53 0 55 0;
#X connect 55 0 52 0;
#X connect 56 0 53 0;
#X connect 57 0 56 0;
#X connect 59 0 48 0;
#X connect 59 0 60 0;
#X connect 59 0 62 0;
#X connect 60 0 61 0;
#X connect 62 0 61 0;
#X connect 63 0 61 0;
#X connect 64 0 24 1;
#X connect 65 0 67 1;
#X connect 67 0 18 0;