/usr/lib/pd/extra/ekext/weightonset-help.pd is in pd-ekext 0.1.1-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 | #N canvas 31 64 901 594 10;
#N canvas 1901 230 450 300 hasc 0;
#X obj 65 62 inlet~;
#X obj 196 184 block~ 1024;
#X obj 55 106 rfft~;
#X obj 56 150 hasc~;
#X obj 56 188 outlet;
#X obj 179 60 inlet;
#X text 153 42 threshold (0-10+);
#X text 43 -1 ...get a "highest apparent spectral component" value
from the FFT;
#X connect 0 0 2 0;
#X connect 2 0 3 0;
#X connect 2 1 3 1;
#X connect 3 0 4 0;
#X connect 5 0 3 2;
#X restore 44 446 pd hasc;
#X obj 128 374 bonk~;
#N canvas 0 0 450 300 (subpatch) 0;
#X array \$0-input 106595 float 0;
#X coords 0 1 106594 -1 200 51 1;
#X restore 287 337 graph;
#X obj 128 398 t b b;
#X obj 81 534 f;
#X floatatom 96 515 5 0 0 0 - - -;
#X floatatom 168 376 5 0 99 0 - - -;
#X obj 81 554 print end-value;
#X obj 43 352 tabplay~ \$0-input;
#X floatatom 75 382 5 0 100 0 - - -;
#X floatatom 75 424 5 0 0 0 - - -;
#X obj 75 402 * 0.1;
#N canvas 0 0 450 300 tw 0;
#X obj 274 70 inlet;
#X msg 274 91 0;
#X obj 191 158 cup;
#X obj 110 55 inlet;
#X obj 110 80 t f b;
#X obj 115 207 tabwrite \$0-hasc;
#X obj 301 158 cup;
#X obj 220 55 inlet;
#X obj 220 80 t f b;
#X obj 225 207 tabwrite \$0-weightonset;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 0 6 0;
#X connect 2 0 5 1;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 4 1 2 0;
#X connect 6 0 9 1;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 8 1 6 0;
#X restore 39 547 pd tw;
#N canvas 0 0 450 300 (subpatch) 0;
#X array \$0-hasc 1 float 3;
#A 0 0;
#X coords 0 511 1 -1 200 51 1;
#X restore 287 408 graph;
#N canvas 0 0 450 300 adapt 0;
#X obj 128 44 inlet;
#X obj 127 74 / 100;
#X obj 129 108 t b f;
#X msg 126 139 1;
#X obj 132 170 -;
#X obj 134 205 outlet;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 2 1 4 1;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X restore 168 395 pd adapt;
#X floatatom 168 429 5 0 0 1 influence - -;
#X obj 168 336 loadbang;
#X obj 88 304 bng 15 250 50 0 empty empty load 17 7 0 10 -262144 -1
-1;
#N canvas 211 176 325 300 loadfile 0;
#X obj 44 28 openpanel;
#X obj 44 47 t a b;
#X obj 44 90 pack s s;
#X msg 44 109 read -resize \$1 \$2;
#X obj 44 128 soundfiler;
#X obj 71 66 symbol \$0-input;
#X floatatom 44 186 0 0 0 0 - - -;
#X obj 44 166 i;
#X msg 44 206 resize \$1;
#X obj 44 226 s \$0-hasc;
#X obj 44 147 / 1024;
#X obj 44 5 inlet;
#X obj 113 227 s \$0-weightonset;
#X obj 243 27 loadbang;
#X msg 119 27 examples/stink.wav;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 1 5 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 10 0;
#X connect 5 0 2 1;
#X connect 6 0 8 0;
#X connect 7 0 6 0;
#X connect 8 0 9 0;
#X connect 8 0 12 0;
#X connect 10 0 7 0;
#X connect 11 0 0 0;
#X connect 13 0 14 0;
#X connect 14 0 1 0;
#X restore 88 323 pd loadfile;
#X obj 43 304 bng 12 250 50 0 empty empty play 15 6 0 10 -262144 -1
-1;
#X obj 43 319 t b b;
#N canvas 0 0 450 300 (subpatch) 0;
#X array \$0-weightonset 1 float 3;
#A 0 0;
#X coords 0 511 1 -1 200 51 1;
#X restore 287 478 graph;
#X obj 116 435 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-257985 -1;
#X text 56 49 The second value is multipled by the value in the second
inlet (range 0-1) and added to the first value. Then \, the divider
value (in order to work out the weighted average) is also multiplied
by this value \, and added to it.;
#X text 46 8 This object makes a moving average with successively less
important values. The calculation initiates when the object is banged
\, and the first value is the most influential.;
#X msg 65 472 1;
#X obj 130 473 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 195 528 print data;
#X text 78 161 When the object is banged the right outlet sends a list
of all the values that influenced the result since the last bang \,
up to a limit of 1024 values.;
#X obj 477 73 weightonset;
#X text 476 58 V;
#X text 476 54 |;
#X text 476 44 |;
#X text 476 34 |;
#X text 452 20 floats in;
#X text 506 58 V;
#X text 506 54 |;
#X text 506 44 |;
#X text 685 338 ^;
#X text 684 342 |;
#X text 684 351 |;
#X text 738 338 ^;
#X text 737 342 |;
#X text 737 351 |;
#X text 801 338 ^;
#X text 800 342 |;
#X text 800 351 |;
#X text 671 377 of successive inputs;
#X text 475 89 |;
#X text 475 99 |;
#X text 475 109 |;
#X text 475 119 V;
#X text 452 141 influenced;
#X text 464 130 onset-;
#X text 465 153 value;
#X text 538 89 |;
#X text 538 99 |;
#X text 538 109 |;
#X text 538 119 V;
#X text 531 132 data dump;
#X text 537 143 on bang;
#X msg 49 382 5;
#X text 212 439 factor;
#X text 202 415 successive;
#X text 64 101 The influence of successive values is lessened by the
inverse of the factor on the right inlet. So \, a value of 0.2 in the
second inlet means that the second value after the bang is 20% as influential
as the first \, and the third value is 20% of 20% (4%) as influential
as the first.;
#X floatatom 195 465 5 0 10 1 attack - -;
#X text 509 200 influence factor = 0 : 1st float output only;
#X text 510 188 attack length = 0 \,;
#X text 535 166 EXAMPLES:;
#X text 520 226 attack length = 0 \,;
#X text 519 238 influence factor = 1: successive values are;
#X text 232 475 phase;
#X text 232 489 0-100;
#X text 508 252 equally influential to the total \, but the list;
#X text 492 31 successive influence factor (0-1);
#X text 538 58 V;
#X text 538 54 |;
#X text 514 265 grows longer as the numbers are added. Therefore;
#X text 506 278 the output responds less and less to input values.
;
#X text 513 291 This is an accumulating average between bangs.;
#X text 511 313 attack length = 0 \,;
#X text 634 366 (w) = weightings (influence values);
#X text 509 393 the output is onset-weighted e.g. the most influential
values are at the start of the series.;
#X text 699 462 ^;
#X text 698 466 |;
#X text 698 475 |;
#X text 769 462 ^;
#X text 768 466 |;
#X text 768 475 |;
#X text 832 462 ^;
#X text 831 466 |;
#X text 831 475 |;
#X text 680 501 of successive inputs;
#X text 656 490 (w) = weightings (influence values);
#X text 517 437 attack length = 3 \,;
#X text 509 327 influence factor = 0.5: v1 w 1 \, v2 w 0.5 \, v3 w
0.25 \, v4 w 0.125;
#X text 86 200 If the attack phase is greater than 0 \, the values
become successively more influential to the weighted average \, until
the number of values is equal to the attack+1. The next value after
the attack phase is the most influential \, then the influence factor
kicks in and successive values become less influential.;
#X text 557 71 creation args: influence factor \, attack;
#X obj 96 495 weightonset 0.8 0;
#X obj 10 381 dac~;
#X msg 168 356 80;
#X text 513 451 influence factor = 0.5: v1 w 0.125 \, v2 w 0.25 \,
v3 w 0.5 \, v4 w 1 \, v5 w 0.5 \, v6 w 0.25...;
#X text 525 43 attack phase (0-100+);
#X obj 664 183 weightonset 0 0;
#X obj 666 222 weightonset 1 0;
#X obj 674 312 weightonset 0.5 0;
#X obj 676 434 weightonset 0.5 3;
#X text 509 517 the output is onset-weighted e.g. the most influential
values are at the start of the series \, after the attack phase in
which the values become successively more influential.;
#X text 99 269 The weightings of values during the attack phase is
the reverse of successive weightings after the attack:;
#X text 226 294 weighting = influence pow(attack - index);
#X connect 0 0 12 0;
#X connect 0 0 98 0;
#X connect 1 0 3 0;
#X connect 3 0 22 0;
#X connect 3 0 98 0;
#X connect 3 1 4 0;
#X connect 4 0 7 0;
#X connect 5 0 4 1;
#X connect 5 0 12 1;
#X connect 6 0 14 0;
#X connect 8 0 0 0;
#X connect 8 0 1 0;
#X connect 8 0 99 0;
#X connect 8 0 99 1;
#X connect 9 0 11 0;
#X connect 10 0 0 1;
#X connect 11 0 10 0;
#X connect 14 0 15 0;
#X connect 14 0 98 1;
#X connect 16 0 100 0;
#X connect 16 0 61 0;
#X connect 17 0 18 0;
#X connect 19 0 20 0;
#X connect 20 0 8 0;
#X connect 20 1 12 2;
#X connect 25 0 98 0;
#X connect 26 0 98 0;
#X connect 61 0 9 0;
#X connect 65 0 98 2;
#X connect 98 0 5 0;
#X connect 98 1 27 0;
#X connect 100 0 6 0;
|