aboutsummaryrefslogtreecommitdiff
path: root/reference/limiter~-help.pd
diff options
context:
space:
mode:
Diffstat (limited to 'reference/limiter~-help.pd')
-rw-r--r--reference/limiter~-help.pd296
1 files changed, 296 insertions, 0 deletions
diff --git a/reference/limiter~-help.pd b/reference/limiter~-help.pd
new file mode 100644
index 0000000..99f8df2
--- /dev/null
+++ b/reference/limiter~-help.pd
@@ -0,0 +1,296 @@
+#N canvas 354 454 851 449 10;
+#X text 189 15 limiter;
+#X text 187 25 ========;
+#N canvas 0 0 591 391 creation 0;
+#X text 211 152 creates a default limiter (MONO \, 9-samples-buffer)
+;
+#X text 213 189 creates a limiter(MONO \, 10ms-buffer);
+#X text 213 223 creates a limiter (multichannel \, 9-samples-buffer)
+;
+#X text 216 256 creates a limiter (multichannel \, 1ms-buffer !!);
+#X text 82 17 "limiter [<bufsize>] [<in1> [<in2> [...]]]";
+#X text 148 70 creating inlets depends ONLY on the number of arguments
+\, not on the arguments themselves... !;
+#X text 218 313 creates a limiter (multichannel \, 9-samples-buffer)
+;
+#X text 113 187 ______________;
+#X text 89 150 _________________;
+#X text 145 220 _________;
+#X text 114 254 ______________;
+#X text 199 311 __;
+#X obj 23 151 limiter~;
+#X obj 23 185 limiter~ 10;
+#X obj 22 219 limiter~ 0 1 2 3;
+#X obj 22 253 limiter~ 1 2;
+#X obj 18 310 limiter~ We need 4 inlets;
+#X restore 39 322 page creation;
+#N canvas 62 0 762 828 modes 0;
+#X text -189 189 MODE 0 : 1-treshold-limiter;
+#X text -191 384 MODE 1 : 2-tresholds-limiter;
+#X msg 232 255 print;
+#X obj 186 316 limiter~;
+#X obj 209 141 limiter~;
+#X msg 273 123 help;
+#X msg 272 104 print;
+#X msg 209 32 mode 0;
+#X msg 272 31 LIMIT;
+#X msg 209 50 mode 1;
+#X msg 272 49 CRACK;
+#X msg 209 67 mode 2;
+#X msg 272 66 COMPRESS;
+#X text 342 48 crack limiter (2 tresholds);
+#X text 342 66 compressor (1 treshold);
+#X text 351 102 context status;
+#X text 252 30 ==;
+#X text 251 49 ==;
+#X text 250 68 ==;
+#X msg 247 302 LIMIT;
+#X obj 247 286 loadbang;
+#X text 341 30 normal limiter (1 treshold) [default];
+#X msg 231 459 print;
+#X obj 183 522 limiter~;
+#X obj 244 492 loadbang;
+#X msg 244 508 CRACK;
+#X msg 217 716 print;
+#X obj 230 760 loadbang;
+#X text -185 590 MODE 2 : compressor;
+#X msg 230 776 COMPRESS;
+#X msg 222 629 ratio 0.5;
+#X text 329 628 set compress-ratio (0.5 == 1:2);
+#X text 329 605 set the treshold \, where the compressor should start
+to compress;
+#X text 352 677 set the compressor (limit/treshold/ratio);
+#X text 331 655 set limit/holdtime/releasetime at once;
+#X text 333 717 view actual settings;
+#X text 337 459 view actual settings;
+#X msg 234 188 limit 90;
+#X msg 234 211 set 105 40 150;
+#X msg 232 404 set 105 40 150;
+#X msg 235 426 set2 120 1 10;
+#X msg 221 654 set 110 40 150;
+#X msg 221 611 treshold 10;
+#X msg 220 677 compress 96 88 0.5;
+#X text 328 591 set the output-limit;
+#X msg 221 593 limit 98;
+#X text 338 254 view actual settings;
+#X text 339 212 set limit/holdtime/releasetime at once;
+#X text 339 185 set output limit;
+#X obj 169 790 limiter~;
+#X text 335 404 set limiter1 (output-limit/hold-time/release-time)
+;
+#X text -260 621 the output signal will never become louder than the
+specified output-limit.;
+#X text -260 653 if the input-signal becomes loader than the input-treshold
+\, a compressor will start working \, compressing the dynamic range
+by the specified ratio. Signals lesser than the treshold will pass
+through uncompressed.;
+#X text -231 59 set the limiter~ to one of the 3 modes;
+#X text 334 380 set both limits;
+#X text -259 210 this is simple : the output will not become bigger
+than the specified limit. When the input becomes small enough again
+so that this condition is matched even without (positive) amplification
+(this is \, when the input signal level falls below the limit) \, the
+amplification will increase gradually (depending on hold- & release-time)
+towards 1;
+#X text 334 427 set limiter2 (input-treshold/hold-time/release-time)
+;
+#X msg 232 381 limits 100 108;
+#X text -260 414 this limiter can be used to handle disgusting things
+like cracks \, which are much louder than the "normal" musical signal.
+Typically hold- and release-times for the second limiter are far smaller
+than those for the first \, to ensure that the disturbance will pass
+quite fast (since the crack would disturb the sensation anyhow \, we
+do not care much about the distortion caused by a fast limiter). The
+treshold for the 2nd limiter must be greater than the ouput-limit (if
+not \, the limiter will be reset to MODE 0);
+#X text -257 298 all levels (limts/tresholds) should be given in dB
+to produce satisfying results (following pd's agreement on the deziBel-scale
+\, 100dB are equal to 1 \, 0dB equals 0 \, ...);
+#X text 354 123 context(!) help;
+#X connect 2 0 3 0;
+#X connect 5 0 4 0;
+#X connect 6 0 4 0;
+#X connect 7 0 4 0;
+#X connect 8 0 4 0;
+#X connect 9 0 4 0;
+#X connect 10 0 4 0;
+#X connect 11 0 4 0;
+#X connect 12 0 4 0;
+#X connect 19 0 3 0;
+#X connect 20 0 19 0;
+#X connect 22 0 23 0;
+#X connect 24 0 25 0;
+#X connect 25 0 23 0;
+#X connect 26 0 49 0;
+#X connect 27 0 29 0;
+#X connect 29 0 49 0;
+#X connect 30 0 49 0;
+#X connect 37 0 3 0;
+#X connect 38 0 3 0;
+#X connect 39 0 23 0;
+#X connect 40 0 23 0;
+#X connect 41 0 49 0;
+#X connect 42 0 49 0;
+#X connect 43 0 49 0;
+#X connect 45 0 49 0;
+#X connect 57 0 23 0;
+#X restore 184 321 page modes;
+#X msg 398 249 print;
+#X obj 445 319 *~;
+#X obj 476 319 *~;
+#X floatatom 476 199 0 0 0 2 left - -;
+#X floatatom 562 200 0 0 0 2 right - -;
+#X floatatom 520 181 0 0 0 2 both - -;
+#X obj 476 266 limiter~ 50 1;
+#N canvas 0 153 455 493 tabwrite 0;
+#N canvas 0 0 450 300 graph1 0;
+#X array array1 32768 float 0;
+#X coords 0 1 32767 -1 200 140 1;
+#X restore 130 196 graph;
+#X obj 111 63 inlet~;
+#X msg 214 78 \; array1 resize 32768;
+#X obj 111 85 tabwrite~ array1;
+#X obj 151 64 bang~;
+#X obj 214 59 loadbang;
+#X obj 337 88 block~ 32768 8;
+#X connect 1 0 3 0;
+#X connect 4 0 3 0;
+#X connect 5 0 2 0;
+#X restore 372 408 pd tabwrite;
+#X obj 382 341 env~;
+#X floatatom 382 359 4 0 0 0 - - -;
+#X text 30 304 to learn more about this object \, try these;
+#X text 48 371 http://iem.kug.ac.at/~zmoelnig;
+#N canvas 59 76 600 400 generator~ 0;
+#X obj 86 49 inlet;
+#X obj 252 54 inlet;
+#X obj 112 229 outlet~;
+#X obj 112 185 *~;
+#X obj 151 185 *~;
+#X obj 122 128 osc~ 440;
+#X obj 151 145 osc~ 689.062;
+#X obj 112 163 line~;
+#X obj 167 162 line~;
+#X msg 167 128 \$1 100;
+#X msg 112 111 \$1 100;
+#X obj 86 97 f;
+#X obj 252 98 f;
+#X obj 154 229 outlet~;
+#X obj 86 72 dbtorms;
+#X obj 252 78 dbtorms;
+#X connect 0 0 14 0;
+#X connect 1 0 15 0;
+#X connect 3 0 2 0;
+#X connect 4 0 13 0;
+#X connect 5 0 3 1;
+#X connect 6 0 4 0;
+#X connect 7 0 3 0;
+#X connect 8 0 4 1;
+#X connect 9 0 8 0;
+#X connect 10 0 7 0;
+#X connect 11 0 10 0;
+#X connect 12 0 9 0;
+#X connect 14 0 11 0;
+#X connect 15 0 12 0;
+#X restore 476 221 pd generator~;
+#X text 37 99 it is quite important to delay the original signals before
+the limiter-amplification is applied to prevent clicks !!!;
+#X text 52 353 1906:forum::für::umläute:2001;
+#X text 36 41 limiter will output the amplification-factor that has
+to be applied on all INlet~s to get a beautiful limited multichannel-signal
+that preserves the balance between the channels;
+#X text 585 170 level of the inlets;
+#X text 511 148 (give some 190dB and notice no clipping);
+#X obj 493 298 z~ 64;
+#X obj 445 299 z~ 64;
+#X text 539 17 part of zexy;
+#X floatatom 496 354 0 0 100 0 - - -;
+#N canvas 159 26 532 285 output 0;
+#X obj 348 160 t b;
+#X obj 348 110 f;
+#X obj 348 60 inlet;
+#X text 354 29 mute;
+#X obj 348 185 f;
+#X msg 436 180 0;
+#X msg 348 85 bang;
+#X obj 348 135 moses 1;
+#X obj 407 110 moses 1;
+#X obj 133 148 dbtorms;
+#X obj 20 155 inlet~;
+#X obj 239 41 inlet;
+#X text 239 18 level;
+#X msg 146 65 set \$1;
+#X obj 146 90 outlet;
+#X msg 254 65 \; pd dsp 1;
+#X obj 133 198 line~;
+#X obj 20 207 *~;
+#X obj 20 232 dac~;
+#X obj 133 173 pack 0 50;
+#X text 20 132 audio;
+#X text 146 114 show level;
+#X obj 436 155 t b;
+#X obj 20 181 hip~ 1;
+#X obj 133 42 r \$0master-lvl;
+#X obj 80 155 inlet~;
+#X obj 80 207 *~;
+#X obj 80 181 hip~ 1;
+#X obj 239 105 s \$0master-lvl;
+#X obj 407 85 r \$0master-lvl;
+#X obj 348 210 s \$0master-lvl;
+#X connect 0 0 4 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 4 0 30 0;
+#X connect 5 0 30 0;
+#X connect 6 0 1 0;
+#X connect 7 0 0 0;
+#X connect 7 1 22 0;
+#X connect 8 1 4 1;
+#X connect 9 0 19 0;
+#X connect 10 0 23 0;
+#X connect 11 0 15 0;
+#X connect 11 0 28 0;
+#X connect 13 0 14 0;
+#X connect 16 0 17 1;
+#X connect 16 0 26 1;
+#X connect 17 0 18 0;
+#X connect 19 0 16 0;
+#X connect 22 0 5 0;
+#X connect 23 0 17 0;
+#X connect 24 0 9 0;
+#X connect 24 0 13 0;
+#X connect 25 0 27 0;
+#X connect 26 0 18 1;
+#X connect 27 0 26 0;
+#X connect 29 0 1 1;
+#X connect 29 0 8 0;
+#X restore 458 382 pd output;
+#X msg 534 355 MUTE;
+#X text 37 132 this is \, because the limiter algorithm needs some
+time (e.g. the outcoming signal is delayed by some samples) \; directly
+multiplying would therefore be a bit too late \, in case a spike appears.
+Adding a small delay takes care of this psychoacoustically (you won't
+here the click);
+#X text 532 300 just a small delay of 64 samples;
+#X text 531 44 updated for zexy-2.0;
+#X connect 4 0 10 0;
+#X connect 5 0 26 0;
+#X connect 5 0 12 0;
+#X connect 6 0 11 0;
+#X connect 6 0 26 1;
+#X connect 7 0 16 0;
+#X connect 8 0 16 1;
+#X connect 9 0 7 0;
+#X connect 9 0 8 0;
+#X connect 10 0 6 0;
+#X connect 10 0 5 1;
+#X connect 12 0 13 0;
+#X connect 16 0 10 0;
+#X connect 16 0 23 0;
+#X connect 16 1 10 1;
+#X connect 16 1 22 0;
+#X connect 22 0 6 1;
+#X connect 23 0 5 0;
+#X connect 25 0 26 2;
+#X connect 26 0 25 0;
+#X connect 27 0 26 3;