Skip to content

Commit

Permalink
sr~/nyquist~ init
Browse files Browse the repository at this point in the history
  • Loading branch information
porres committed Jul 28, 2024
1 parent a049d1e commit 6500d51
Show file tree
Hide file tree
Showing 8 changed files with 149 additions and 264 deletions.
16 changes: 7 additions & 9 deletions Code_source/Abstractions/audio/crusher~.pd
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
#X obj 453 247 else/sr~;
#X obj 118 326 else/downsample~ 0 \$2;
#X obj 75 281 else/quantizer~ 0 \$1;
#X obj 453 224 else/lb;
#X obj 361 182 declare -path else;
#X obj 270 277 expr~ (1 - pow($v1 \, 0.1)) * $f2;
#X obj 192 237 clip~ 0 1;
Expand All @@ -26,14 +25,13 @@
#X obj 270 119 inlet~;
#X obj 270 237 clip~ 0 0.98;
#X connect 1 0 6 0;
#X connect 4 0 9 1;
#X connect 4 0 8 1;
#X connect 5 0 0 0;
#X connect 6 0 5 0;
#X connect 7 0 4 0;
#X connect 9 0 5 1;
#X connect 10 0 6 1;
#X connect 8 0 5 1;
#X connect 9 0 6 1;
#X connect 10 0 9 0;
#X connect 11 0 10 0;
#X connect 12 0 11 0;
#X connect 12 1 13 0;
#X connect 13 0 14 0;
#X connect 14 0 9 0;
#X connect 11 1 12 0;
#X connect 12 0 13 0;
#X connect 13 0 8 0;
48 changes: 16 additions & 32 deletions Code_source/Abstractions/audio/damp.osc~.pd
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#X obj 71 251 outlet~;
#X obj 98 83 inlet~;
#X text 94 64 trigger;
#N canvas 593 101 429 443 in 0;
#N canvas 355 387 429 443 in 0;
#X obj 250 174 / 127;
#X obj 193 115 stripnote, f 10;
#X obj 250 200 else/impseq~;
Expand Down Expand Up @@ -40,46 +40,30 @@
#X restore 71 139 pd in;
#X text 74 271 cos;
#X text 181 271 sin;
#N canvas 303 93 491 424 init 0;
#X obj 241 331 unpack;
#X obj 65 65 else/loadbanger 2;
#X obj 241 366 s \$0-pitch;
#X obj 324 366 s \$0-t60;
#X obj 65 87 else/args -;
#X obj 164 240 route -midi;
#X obj 164 303 route bang;
#X obj 261 272 s \$0-midi;
#X msg 261 251 1;
#X obj 164 272 t a b;
#X obj 269 73 / 1000;
#X obj 269 95 v srkhz;
#X obj 194 139 else/hot;
#X obj 194 163 /;
#X obj 194 186 s \$0-hz2rad;
#X obj 175 103 else/pi 2;
#X obj 240 32 else/sr~;
#X obj 164 212 else/default 0 0;
#N canvas 719 190 444 352 init 0;
#X obj 250 268 unpack;
#X obj 74 52 else/loadbanger 2;
#X obj 250 303 s \$0-pitch;
#X obj 333 303 s \$0-t60;
#X obj 74 94 else/args -;
#X obj 173 177 route -midi;
#X obj 173 240 route bang;
#X obj 270 209 s \$0-midi;
#X msg 270 188 1;
#X obj 173 209 t a b;
#X obj 173 149 else/default 0 0;
#X connect 0 0 2 0;
#X connect 0 1 3 0;
#X connect 1 0 4 0;
#X connect 1 1 15 0;
#X connect 1 1 16 0;
#X connect 1 1 17 0;
#X connect 4 0 17 0;
#X connect 1 1 10 0;
#X connect 4 0 10 0;
#X connect 5 0 9 0;
#X connect 5 1 0 0;
#X connect 6 1 0 0;
#X connect 8 0 7 0;
#X connect 9 0 6 0;
#X connect 9 1 8 0;
#X connect 10 0 11 0;
#X connect 12 0 13 0;
#X connect 12 1 13 1;
#X connect 13 0 14 0;
#X connect 15 0 12 0;
#X connect 16 0 10 0;
#X connect 16 0 12 1;
#X connect 17 0 5 0;
#X connect 10 0 5 0;
#X restore 250 202 pd init;
#X obj 176 37 r \$0-t60;
#X obj 176 83 inlet~;
Expand Down
2 changes: 1 addition & 1 deletion Code_source/Compiled/audio/nyquist~.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ static void nyquist_sec(t_nyquist *x){
}

static void nyquist_loadbang(t_nyquist *x, t_floatarg action){
if(action == LB_LOAD)
if(action == LB_INIT)
nyquist_bang(x);
}

Expand Down
2 changes: 1 addition & 1 deletion Code_source/Compiled/audio/sr~.c
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ static void sr_sec(t_sr *x){
}

static void sr_loadbang(t_sr *x, t_floatarg action){
if(action == LB_LOAD)
if(action == LB_INIT)
sr_bang(x);
}

Expand Down
25 changes: 3 additions & 22 deletions Documentation/Help-files/lag~-help.pd
Original file line number Diff line number Diff line change
Expand Up @@ -49,25 +49,6 @@
#X text 286 390 - resets the filter;
#X text 31 257 see also:;
#X obj 32 303 else/glide~;
#N canvas 553 279 542 313 rpole~ 0;
#X obj 145 225 rpole~;
#X floatatom 151 110 5 0 1000 0 - - - 0;
#X obj 178 171 expr exp(ln(0.001) / ($f1 * $f2));
#X text 57 109 decay time (ms);
#X floatatom 178 198 0 0 0 0 - - - 0;
#X text 66 198 filter coefficient;
#X obj 373 141 else/sr~ -khz;
#X text 122 32 This is how to implement the one pole filter with [rpole~]. Or better \, how to convert the time in ms to a filter coefficient to be used in [rpole~]., f 50;
#X obj 151 138 sel 0;
#X msg 151 171 0, f 2;
#X connect 1 0 8 0;
#X connect 2 0 4 0;
#X connect 4 0 0 1;
#X connect 6 0 2 1;
#X connect 8 0 9 0;
#X connect 8 1 2 0;
#X connect 9 0 4 0;
#X restore 469 285 pd rpole~;
#X obj 242 192 else/lag~ 1000;
#X obj 33 281 else/lag2~;
#X text 168 486 1) float - lag time in ms (default 0);
Expand Down Expand Up @@ -111,7 +92,7 @@
#X text 183 372 float/signal(s);
#X connect 10 0 9 0;
#X connect 11 0 10 0;
#X connect 17 0 34 0;
#X connect 17 0 33 0;
#X connect 29 0 12 0;
#X connect 34 0 10 1;
#X connect 34 0 29 0;
#X connect 33 0 10 1;
#X connect 33 0 29 0;
68 changes: 22 additions & 46 deletions Documentation/Help-files/nyquist~-help.pd
Original file line number Diff line number Diff line change
@@ -1,25 +1,17 @@
#N canvas 585 65 564 554 10;
#X obj 306 4 cnv 15 250 40 empty empty empty 12 13 0 18 -128992 -233080
0;
#X obj 306 4 cnv 15 250 40 empty empty empty 12 13 0 18 #7c7c7c #e0e4dc 0;
#N canvas 382 141 749 319 (subpatch) 0;
#X coords 0 -1 1 1 252 42 2 100 100;
#X restore 305 3 pd;
#X obj 345 11 cnv 10 10 10 empty empty ELSE 0 15 2 30 -128992 -233080
0;
#X obj 23 40 cnv 4 4 4 empty empty Get 0 28 2 18 -233017 -1 0;
#X obj 57 40 cnv 4 4 4 empty empty nyquist 0 28 2 18 -233017 -1 0;
#X obj 458 11 cnv 10 10 10 empty empty EL 0 6 2 13 -128992 -233080
0;
#X obj 478 11 cnv 10 10 10 empty empty Locus 0 6 2 13 -128992 -233080
0;
#X obj 515 11 cnv 10 10 10 empty empty Solus' 0 6 2 13 -128992 -233080
0;
#X obj 464 26 cnv 10 10 10 empty empty ELSE 0 6 2 13 -128992 -233080
0;
#X obj 502 26 cnv 10 10 10 empty empty library 0 6 2 13 -128992 -233080
0;
#X obj 3 3 cnv 15 301 42 empty empty nyquist~ 20 20 2 37 -233017 -1
0;
#X obj 345 11 cnv 10 10 10 empty empty ELSE 0 15 2 30 #7c7c7c #e0e4dc 0;
#X obj 23 40 cnv 4 4 4 empty empty Get 0 28 2 18 #e0e0e0 #000000 0;
#X obj 57 40 cnv 4 4 4 empty empty nyquist 0 28 2 18 #e0e0e0 #000000 0;
#X obj 458 11 cnv 10 10 10 empty empty EL 0 6 2 13 #7c7c7c #e0e4dc 0;
#X obj 478 11 cnv 10 10 10 empty empty Locus 0 6 2 13 #7c7c7c #e0e4dc 0;
#X obj 515 11 cnv 10 10 10 empty empty Solus' 0 6 2 13 #7c7c7c #e0e4dc 0;
#X obj 464 26 cnv 10 10 10 empty empty ELSE 0 6 2 13 #7c7c7c #e0e4dc 0;
#X obj 502 26 cnv 10 10 10 empty empty library 0 6 2 13 #7c7c7c #e0e4dc 0;
#X obj 3 3 cnv 15 301 42 empty empty nyquist~ 20 20 2 37 #e0e0e0 #000000 0;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 302 42 1 0 0;
#X restore 2 3 graph;
Expand All @@ -28,11 +20,8 @@
#X obj 338 166 block~ 64 1 16;
#X obj 123 232 else/display 6;
#X obj 223 210 else/display 6;
#X obj 223 143 bng 15 250 50 0 empty empty empty 17 7 0 10 -228856
-1 -1;
#X text 54 29 Unlike [samplerate~] \, [sr~] always gives you the global
sample rate as defined in Pd's audio settings instead of the up/downsampling
rate running in the patch due to [block~]., f 56;
#X obj 223 143 bng 15 250 50 0 empty empty empty 17 7 0 10 #dcdcdc #000000 #000000;
#X text 54 29 Unlike [samplerate~] \, [sr~] always gives you the global sample rate as defined in Pd's audio settings instead of the up/downsampling rate running in the patch due to [block~]., f 56;
#X msg 338 102 set 64 1 0.5;
#X msg 353 131 set 64 1 16;
#X obj 123 140 loadbang;
Expand All @@ -49,24 +38,18 @@ rate running in the patch due to [block~]., f 56;
#X connect 9 0 3 0;
#X connect 10 0 2 0;
#X restore 415 256 pd up/downsampling;
#X obj 4 298 cnv 3 550 3 empty empty inlets 8 12 0 13 -228856 -1 0
;
#X obj 4 400 cnv 3 550 3 empty empty outlets 8 12 0 13 -228856 -1 0
;
#X obj 4 435 cnv 3 550 3 empty empty arguments 8 12 0 13 -228856 -1
0;
#X obj 119 409 cnv 17 3 17 empty empty 0 5 9 0 16 -228856 -162280 0
;
#X obj 120 308 cnv 17 3 88 empty empty 0 5 9 0 16 -228856 -162280 0
;
#X obj 4 528 cnv 15 552 21 empty empty empty 20 12 0 14 -233017 -33289
0;
#X obj 4 298 cnv 3 550 3 empty empty inlets 8 12 0 13 #dcdcdc #000000 0;
#X obj 4 400 cnv 3 550 3 empty empty outlets 8 12 0 13 #dcdcdc #000000 0;
#X obj 4 435 cnv 3 550 3 empty empty arguments 8 12 0 13 #dcdcdc #000000 0;
#X obj 119 409 cnv 17 3 17 empty empty 0 5 9 0 16 #dcdcdc #9c9c9c 0;
#X obj 120 308 cnv 17 3 88 empty empty 0 5 9 0 16 #dcdcdc #9c9c9c 0;
#X obj 4 528 cnv 15 552 21 empty empty empty 20 12 0 14 #e0e0e0 #202020 0;
#X text 154 308 bang;
#X text 148 409 float;
#X text 166 328 hz;
#X text 160 346 khz;
#X text 142 443 (none);
#X obj 4 468 cnv 3 550 3 empty empty flags 8 12 0 13 -228856 -1 0;
#X obj 4 468 cnv 3 550 3 empty empty flags 8 12 0 13 #dcdcdc #000000 0;
#X text 154 475 -khz;
#X text 166 363 ms;
#X text 160 381 sec;
Expand All @@ -81,24 +64,17 @@ rate running in the patch due to [block~]., f 56;
#X text 184 363 - set and get the nyquist period in ms;
#X text 184 381 - set and get the nyquist period in seconds;
#X text 184 409 - nyquist frequency or period;
#X obj 159 179 bng 15 250 50 0 empty empty empty 17 7 0 10 -228856
-1 -1;
#X obj 159 179 bng 15 250 50 0 empty empty empty 17 7 0 10 #dcdcdc #000000 #000000;
#X msg 181 179 hz;
#X msg 213 179 khz;
#X msg 223 201 ms;
#X msg 256 202 sec;
#X obj 213 258 else/display;
#X text 64 153 The default output is the sample rate frequency in hertz.
;
#X text 64 153 The default output is the sample rate frequency in hertz.;
#X obj 213 232 else/nyquist~ -khz;
#X text 64 90 [nyquist~] reports the nyquist (which is half the sample
rate) as a frequency or period. It sends it when loading the patch
\, when receiving a bang or when the sample rate changes. It reports
it either in hz or khz and the period either in seconds os milliseconds.
like [else/sr~] \, it doesn't report up/down sampling rates., f 74
;
#X text 59 229 see also:;
#X obj 68 251 else/sr~;
#X text 64 90 [nyquist~] reports the nyquist (which is half the sample rate) as a frequency or period. It sends it when loading the patch 'init' time (that is before [loadbang]) \, when receiving a bang or when the sample rate changes. It reports it either in hz or khz and the period either in seconds os milliseconds. like [else/sr~] \, it doesn't report up/down sampling rates., f 79;
#X connect 39 0 46 0;
#X connect 40 0 46 0;
#X connect 41 0 46 0;
Expand Down
109 changes: 41 additions & 68 deletions Documentation/Help-files/pi-help.pd
Original file line number Diff line number Diff line change
@@ -1,83 +1,56 @@
#N canvas 483 27 559 425 10;
#X obj 4 281 cnv 3 550 3 empty empty inlets 8 12 0 13 #dcdcdc #000000
0;
#X obj 4 316 cnv 3 550 3 empty empty outlets 8 12 0 13 #dcdcdc #000000
0;
#X obj 4 351 cnv 3 550 3 empty empty arguments 8 12 0 13 #dcdcdc #000000
0;
#X obj 136 325 cnv 17 3 17 empty empty 0 5 9 0 16 #dcdcdc #9c9c9c 0
;
#X obj 137 290 cnv 17 3 17 empty empty 0 5 9 0 16 #dcdcdc #9c9c9c 0
;
#X obj 4 384 cnv 15 552 21 empty empty empty 20 12 0 14 #e0e0e0 #202020
0;
#X obj 229 187 bng 15 250 50 0 empty empty empty 17 7 0 10 #dcdcdc
#000000 #000000;
#X text 171 291 bang;
#X obj 306 4 cnv 15 250 40 empty empty empty 12 13 0 18 #7c7c7c #e0e4dc
0;
#N canvas 483 38 559 425 10;
#X obj 4 291 cnv 3 550 3 empty empty inlets 8 12 0 13 #dcdcdc #000000 0;
#X obj 4 326 cnv 3 550 3 empty empty outlets 8 12 0 13 #dcdcdc #000000 0;
#X obj 4 361 cnv 3 550 3 empty empty arguments 8 12 0 13 #dcdcdc #000000 0;
#X obj 136 335 cnv 17 3 17 empty empty 0 5 9 0 16 #dcdcdc #9c9c9c 0;
#X obj 137 300 cnv 17 3 17 empty empty 0 5 9 0 16 #dcdcdc #9c9c9c 0;
#X obj 4 394 cnv 15 552 21 empty empty empty 20 12 0 14 #e0e0e0 #202020 0;
#X obj 229 197 bng 15 250 50 0 empty empty empty 17 7 0 10 #dcdcdc #000000 #000000;
#X text 171 301 bang;
#X obj 306 4 cnv 15 250 40 empty empty empty 12 13 0 18 #7c7c7c #e0e4dc 0;
#N canvas 382 141 749 319 (subpatch) 0;
#X coords 0 -1 1 1 252 42 2 100 100;
#X restore 305 3 pd;
#X obj 345 11 cnv 10 10 10 empty empty ELSE 0 15 2 30 #7c7c7c #e0e4dc
0;
#X obj 23 40 cnv 4 4 4 empty empty Get 0 28 2 18 #e0e0e0 #000000 0
;
#X obj 56 40 cnv 4 4 4 empty empty the 0 28 2 18 #e0e0e0 #000000 0
;
#X obj 458 11 cnv 10 10 10 empty empty EL 0 6 2 13 #7c7c7c #e0e4dc
0;
#X obj 478 11 cnv 10 10 10 empty empty Locus 0 6 2 13 #7c7c7c #e0e4dc
0;
#X obj 515 11 cnv 10 10 10 empty empty Solus' 0 6 2 13 #7c7c7c #e0e4dc
0;
#X obj 464 26 cnv 10 10 10 empty empty ELSE 0 6 2 13 #7c7c7c #e0e4dc
0;
#X obj 502 26 cnv 10 10 10 empty empty library 0 6 2 13 #7c7c7c #e0e4dc
0;
#X obj 280 187 nbx 3 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
#dcdcdc #000000 #000000 0 256;
#X text 159 188 get value;
#X obj 85 40 cnv 4 4 4 empty empty value 0 28 2 18 #e0e0e0 #000000
0;
#X obj 133 40 cnv 4 4 4 empty empty of 0 28 2 18 #e0e0e0 #000000 0
;
#X obj 159 40 cnv 4 4 4 empty empty Pi 0 28 2 18 #e0e0e0 #000000 0
;
#X obj 3 3 cnv 15 301 42 empty empty pi 20 20 2 37 #e0e0e0 #000000
0;
#X obj 345 11 cnv 10 10 10 empty empty ELSE 0 15 2 30 #7c7c7c #e0e4dc 0;
#X obj 23 40 cnv 4 4 4 empty empty Get 0 28 2 18 #e0e0e0 #000000 0;
#X obj 56 40 cnv 4 4 4 empty empty the 0 28 2 18 #e0e0e0 #000000 0;
#X obj 458 11 cnv 10 10 10 empty empty EL 0 6 2 13 #7c7c7c #e0e4dc 0;
#X obj 478 11 cnv 10 10 10 empty empty Locus 0 6 2 13 #7c7c7c #e0e4dc 0;
#X obj 515 11 cnv 10 10 10 empty empty Solus' 0 6 2 13 #7c7c7c #e0e4dc 0;
#X obj 464 26 cnv 10 10 10 empty empty ELSE 0 6 2 13 #7c7c7c #e0e4dc 0;
#X obj 502 26 cnv 10 10 10 empty empty library 0 6 2 13 #7c7c7c #e0e4dc 0;
#X obj 280 197 nbx 3 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10 #dcdcdc #000000 #000000 0 256;
#X text 159 198 get value;
#X obj 85 40 cnv 4 4 4 empty empty value 0 28 2 18 #e0e0e0 #000000 0;
#X obj 133 40 cnv 4 4 4 empty empty of 0 28 2 18 #e0e0e0 #000000 0;
#X obj 159 40 cnv 4 4 4 empty empty Pi 0 28 2 18 #e0e0e0 #000000 0;
#X obj 3 3 cnv 15 301 42 empty empty pi 20 20 2 37 #e0e0e0 #000000 0;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 302 42 1 0 0;
#X restore 3 3 graph;
#X text 322 187 muiltiplier;
#X text 165 325 float;
#X text 167 360 1) float - multiplier (default 1);
#X text 62 89 [pi] calculates and outputs the value of pi. It receives
a multiplier value via the argument or second inlet \, which needs
to be greater than 0 (otherwise it's considered as 1).;
#X text 61 136 [pi] outputs the result when loading a patch and also
when receiving a bang.;
#X text 201 325 - the value of pi;
#X text 322 197 muiltiplier;
#X text 165 335 float;
#X text 167 370 1) float - multiplier (default 1);
#X text 62 89 [pi] calculates and outputs the value of pi. It receives a multiplier value via the argument or second inlet \, which needs to be greater than 0 (otherwise it's considered as 1).;
#X text 201 335 - the value of pi;
#N canvas 757 104 410 312 expr 0;
#X obj 176 112 nbx 8 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
#dcdcdc #000000 #000000 0 256;
#X obj 161 196 bng 15 250 50 0 empty empty empty 17 7 0 10 #dcdcdc
#000000 #000000;
#X obj 176 112 nbx 8 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10 #dcdcdc #000000 #000000 0 256;
#X obj 161 196 bng 15 250 50 0 empty empty empty 17 7 0 10 #dcdcdc #000000 #000000;
#X obj 156 80 else/pi;
#X obj 161 227 expr 2 * pi;
#X obj 156 141 value pi;
#X text 19 20 [pi] can be conveniently connected to a [value] object
so it can be recalled in an [expr] object.;
#X text 19 20 [pi] can be conveniently connected to a [value] object so it can be recalled in an [expr] object.;
#X obj 161 256 else/display;
#X connect 1 0 3 0;
#X connect 2 0 0 0;
#X connect 2 0 4 0;
#X connect 3 0 6 0;
#X restore 431 245 pd expr and value;
#X obj 229 218 else/pi 2;
#X text 201 291 - calculate or output the last calculated value;
#X obj 229 246 else/display;
#X text 80 219 click (same as bang) =>;
#X connect 6 0 32 0;
#X connect 18 0 32 1;
#X connect 32 0 34 0;
#X restore 431 255 pd expr and value;
#X obj 229 228 else/pi 2;
#X text 201 301 - calculate or output the last calculated value;
#X obj 229 256 else/display;
#X text 80 229 click (same as bang) =>;
#X text 62 131 [pi] outputs the result when loading a patch and also when receiving a bang. Since it's an abstraction with [loadbang] \, it load output comes before other [loadbang] objects in the patch.;
#X connect 6 0 31 0;
#X connect 18 0 31 1;
#X connect 31 0 33 0;
Loading

0 comments on commit 6500d51

Please sign in to comment.