├── CHANGELOG.md ├── LICENSE ├── README.md ├── hv.comb~-help.pd ├── hv.comb~.pd ├── hv.compressor2~-help.pd ├── hv.compressor2~.pd ├── hv.compressor~-help.pd ├── hv.compressor~.pd ├── hv.dispatch-help.pd ├── hv.dispatch.pd ├── hv.drunk-help.pd ├── hv.drunk.pd ├── hv.envfollow~-help.pd ├── hv.envfollow~.pd ├── hv.eq~-help.pd ├── hv.eq~.pd ├── hv.exp~-help.pd ├── hv.exp~.pd ├── hv.filter.gain~-help.pd ├── hv.filter.gain~.pd ├── hv.filters ├── allpass.coeffs.pd ├── allpass.pd ├── bandpass1.coeffs.pd ├── bandpass1.pd ├── bandpass2.coeffs.pd ├── bandpass2.pd ├── highpass.coeffs.pd ├── highpass.pd ├── highshelf.coeffs.pd ├── highshelf.pd ├── lowpass.coeffs.pd ├── lowpass.pd ├── lowshelf.coeffs.pd ├── lowshelf.pd ├── notch.coeffs.pd ├── notch.pd ├── peak.coeffs.pd ├── peak.pd └── spectrolog.pd ├── hv.filter~-help.pd ├── hv.filter~.pd ├── hv.flanger2~-help.pd ├── hv.flanger2~.pd ├── hv.flanger~-help.pd ├── hv.flanger~.pd ├── hv.freqshift~-help.pd ├── hv.freqshift~.pd ├── hv.gte~-help.pd ├── hv.gte~.pd ├── hv.gt~-help.pd ├── hv.gt~.pd ├── hv.hip~-help.pd ├── hv.hip~.pd ├── hv.lfo-help.pd ├── hv.lfo.pd ├── hv.lfo ├── pulse.pd ├── ramp.pd ├── saw.pd ├── sine.pd ├── square.pd └── triangle.pd ├── hv.log~-help.pd ├── hv.log~.pd ├── hv.lop~-help.pd ├── hv.lop~.pd ├── hv.lte~-help.pd ├── hv.lte~.pd ├── hv.lt~-help.pd ├── hv.lt~.pd ├── hv.multiplex~-help.pd ├── hv.multiplex~.pd ├── hv.neq~-help.pd ├── hv.neq~.pd ├── hv.osc ├── polyblep.pd ├── saw.pd ├── sine.pd └── square.pd ├── hv.osc~-help.pd ├── hv.osc~.pd ├── hv.pinknoise~-help.pd ├── hv.pinknoise~.pd ├── hv.pow~-help.pd ├── hv.pow~.pd ├── hv.reverb~-help.pd ├── hv.reverb~.pd ├── hv.tanh~.pd ├── hv.vline~-help.pd └── hv.vline~.pd /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | CHANGELOG 2 | ===== 3 | 4 | 0.4 5 | ----- 6 | 7 | * Add `hv.lop~` and `hv.hip~` variants with signal controlled cutoff. 8 | * Fix bug in `hv.vline~` 9 | * Patch use of `else/scope~` in `hv.lfo` help file. 10 | 11 | 0.3.1 12 | ----- 13 | 14 | * Missing connection in `hv.exp~` 15 | 16 | 0.3 17 | ----- 18 | 19 | * Add precision LFOs for sine, ramp, saw, square, and pulse. 20 | 21 | 0.2.1 22 | ----- 23 | 24 | * Bugfixes after renaming 25 | 26 | 0.2 27 | ----- 28 | 29 | * Rename signal abstractions to ~ 30 | 31 | 0.1 32 | ----- 33 | 34 | * Initial commit 35 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Enzien Audio Ltd. 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # heavylib 2 | 3 | Library of [heavy](https://enzienaudio.com) compatible abstractions. 4 | 5 | See the -help.pd patches for more information on each object. 6 | 7 | ## Synthesis 8 | 9 | --- 10 | 11 | ### Band-limited oscillators 12 | 13 | `[hv.osc~ saw]` - Band-limited PolyBlep sawtooth signal generator. [_more info_](https://github.com/cfloisand/pd-polyblep/blob/master/Source/polyblep~.c) 14 | 15 | `[hv.osc~ sine]` - Same as Pd `[osc~]` added for convenience. 16 | 17 | `[hv.osc~ square]` - Band-limited PolyBlep square signal generator. 18 | 19 | ### LFOs 20 | 21 | These precision LFOs have control rate inlets and outlet, however they sample from signal rate oscillators and require DSP to be on. 22 | 23 | They give a float output between `0.0` - `1.0`. Because we `[snapshot]` every 1ms we get aliasing when we enter audio range frequencies. 24 | 25 | `[hv.lfo sine]` - Control `[snapshot~]` of slow `[osc~]`. 26 | 27 | `[hv.lfo ramp]` - Control `[snapshot~]` `[phasor~]`. 28 | 29 | `[hv.lfo saw]` - Control rate sample and inverted `[phasor~]`. 30 | 31 | `[hv.lfo square]` - Amplified and clipped `[osc~]`, has phase offset. 32 | 33 | `[hv.lfo pulse]` - Band-limited PolyBlep square signal generator, taken from `[hv.osc~ square]`, instead of phase offset we get pulse width modulation. 34 | 35 | ### Noise 36 | 37 | `[hv.pinknoise~]` - Cheapish pinknoise generator. [_more info_](http://www.firstpr.com.au/dsp/pink-noise/) 38 | 39 | ### Envelopes 40 | 41 | `[hv.vline~]` - Envelope generator, replacement for Pd's [vline~] object. 42 | 43 | ## Processing 44 | 45 | --- 46 | 47 | ### Dynamics 48 | 49 | `[hv.compressor~]` - Compressor unit with Threshold and Ratio parameters. (Attack/Release is fixed at 40ms) 50 | 51 | `[hv.compressor2~]` - Stereo version of `[hv.compressor~]`. 52 | 53 | `[hv.envfollow~]` - Cheap envelope follower. 54 | 55 | ### Effects 56 | 57 | `[hv.comb~]` - Comb filter effect unit. 58 | 59 | `[hv.flanger~]` - Flange effect unit. 60 | 61 | `[hv.flanger2~]` - Stereo version of `[hv.flanger~]`. 62 | 63 | `[hv.freqshift~]` - Frequency shifter effect unit. 64 | 65 | `[hv.reverb~]` - Simple reverb unit. 66 | 67 | ### Filtering 68 | 69 | `[hv.filter~ allpass]` - Allpass filter with Q control (Biquad). 70 | 71 | `[hv.filter~ lowpass]` - Lowpass filter with Q control (Biquad). 72 | 73 | `[hv.filter~ highpass]` - Highpass filter with Q control (Biquad). 74 | 75 | `[hv.filter~ bandpass1]` - Bandpass filter with Q control, peak gain = Q (Biquad). 76 | 77 | `[hv.filter~ bandpass2]` - Bandpass filter with Q control, constant 0dB peak gain (Biquad). 78 | 79 | `[hv.filter~ notch]` - Notch filter with Q control (Biquad) 80 | 81 | `[hv.filter.gain~ peak]` - Peaking filter with Frequency, Q and Gain parameters (Biquad). 82 | 83 | `[hv.filter.gain~ lowshelf]` - Low shelving filter with Frequency, Q and Gain parameters (Biquad). 84 | 85 | `[hv.filter.gain~ highshelf]` - High shelving filter with Frequency, Q and Gain parameters (Biquad). 86 | 87 | `[hv.lop~]` - Lowpass variant with signal controlled cutoff (rpole~). 88 | 89 | `[hv.hip~]` - Highpass variant with signal controlled cutoff (rpole~). 90 | 91 | ## Math Operations 92 | 93 | --- 94 | 95 | `[hv.exp~]` - Signal-rate exponential ( exp ), alternative implementation. 96 | 97 | `[hv.eq~]` - Signal-rate equal ( == ). 98 | 99 | `[hv.neq~]` - Signal-rate not equal ( != ). 100 | 101 | `[hv.gt~]` - Signal-rate greater than ( > ). 102 | 103 | `[hv.gte~]` - Signal-rate greater than or equal to ( >= ). 104 | 105 | `[hv.log~]` - Signal-rate natural logarithm ( ln ). 106 | 107 | `[hv.lt~]` - Signal-rate less than ( < ). 108 | 109 | `[hv.lte~]` - Signal-rate less than or equal to ( <= ). 110 | 111 | `[hv.multiplex~]` - Mix between two input signals based on a comparator. 112 | 113 | `[hv.pow~]` - Signal-rate exponent ( x ^ y ), alternative implementation. 114 | 115 | `[hv.tanh~]` - Static non-linear waveshaper. 116 | 117 | ## Logic 118 | 119 | --- 120 | 121 | `[hv.dispatch]` - Utility for organising parameter interfaces to other abstractions. 122 | 123 | `[hv.drunk]` - Randomised walk number generator. 124 | -------------------------------------------------------------------------------- /hv.comb~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 476 214 635 649 10; 2 | #X obj 119 90 metro 1000; 3 | #X obj 119 112 t b b; 4 | #X obj 33 244 *~; 5 | #X msg 146 137 1 10; 6 | #X obj 33 100 noise~; 7 | #X msg 119 185 0 50; 8 | #X obj 119 163 del 10; 9 | #X obj 33 597 dac~; 10 | #X msg 161 293 feedfwd \$1; 11 | #X msg 161 411 indelay \$1; 12 | #X obj 164 268 hsl 128 15 0 1 0 0 empty empty empty -2 -8 0 10 -262144 13 | -1 -1 0 1; 14 | #X floatatom 238 293 5 0 0 0 - - -; 15 | #X obj 164 388 hsl 128 15 0 50 0 0 empty empty empty -2 -8 0 10 -262144 16 | -1 -1 0 1; 17 | #X obj 119 60 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 18 | 1; 19 | #X obj 33 122 *~ 0.1; 20 | #X text 39 36 Comb filter; 21 | #X text 305 267 Feedforward amount (0...0.999); 22 | #X obj 164 328 hsl 128 15 0 1 0 0 empty empty empty -2 -8 0 10 -262144 23 | -1 -1 0 1; 24 | #X floatatom 268 353 5 0 0 0 - - -; 25 | #X text 305 327 Feedback amount (0...0.999); 26 | #X msg 161 353 feedback \$1; 27 | #X floatatom 238 413 5 0 0 0 - - -; 28 | #X obj 164 448 hsl 128 15 0 50 0 0 empty empty empty -2 -8 0 10 -262144 29 | -1 -1 0 1; 30 | #X floatatom 238 473 5 0 0 0 - - -; 31 | #X text 299 449 Input delay time (0...50ms); 32 | #X obj 163 498 hsl 128 15 0 50 0 0 empty empty empty -2 -8 0 10 -262144 33 | -1 -1 0 1; 34 | #X floatatom 237 523 5 0 0 0 - - -; 35 | #X msg 160 521 slide \$1; 36 | #X text 299 499 Delay update interpolation time (0...1000ms); 37 | #X text 299 389 Output delay time (0...50ms); 38 | #X msg 161 471 outdelay \$1; 39 | #X obj 33 561 hv.comb~; 40 | #X obj 119 207 line~; 41 | #X connect 0 0 1 0; 42 | #X connect 1 0 6 0; 43 | #X connect 1 1 3 0; 44 | #X connect 2 0 31 0; 45 | #X connect 3 0 32 0; 46 | #X connect 4 0 14 0; 47 | #X connect 5 0 32 0; 48 | #X connect 6 0 5 0; 49 | #X connect 8 0 31 1; 50 | #X connect 9 0 31 1; 51 | #X connect 10 0 8 0; 52 | #X connect 10 0 11 0; 53 | #X connect 12 0 9 0; 54 | #X connect 12 0 21 0; 55 | #X connect 13 0 0 0; 56 | #X connect 14 0 2 0; 57 | #X connect 17 0 20 0; 58 | #X connect 17 0 18 0; 59 | #X connect 20 0 31 1; 60 | #X connect 22 0 30 0; 61 | #X connect 22 0 23 0; 62 | #X connect 25 0 27 0; 63 | #X connect 25 0 26 0; 64 | #X connect 27 0 31 1; 65 | #X connect 30 0 31 1; 66 | #X connect 31 0 7 0; 67 | #X connect 31 0 7 1; 68 | #X connect 32 0 2 1; 69 | -------------------------------------------------------------------------------- /hv.comb~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 959 193 491 627 10; 2 | #X obj 32 586 outlet~; 3 | #X obj 32 29 inlet~; 4 | #X obj 32 476 +~; 5 | #X obj 282 29 inlet; 6 | #X obj 257 461 *~; 7 | #X obj 257 281 line~; 8 | #X msg 272 395 \$1 10; 9 | #X obj 272 417 line~; 10 | #X obj 77 441 *~; 11 | #X obj 77 282 line~; 12 | #X obj 77 257 pack f f; 13 | #X msg 92 395 \$1 10; 14 | #X obj 92 417 line~; 15 | #X obj 257 256 pack f f; 16 | #X obj 32 531 -~; 17 | #X obj 282 51 hv.dispatch \$0 feedfwd 0.5; 18 | #X obj 92 343 r \$0-feedfwd; 19 | #X obj 272 343 r \$0-feedback; 20 | #X obj 257 181 r \$0-outdelay; 21 | #X obj 77 182 r \$0-indelay; 22 | #X obj 77 309 vd~ \$0-inputdelay; 23 | #X obj 257 307 vd~ \$0-outputdelay; 24 | #X obj 77 62 delwrite~ \$0-inputdelay 50; 25 | #X obj 92 586 delwrite~ \$0-outputdelay 50; 26 | #X obj 257 203 min 50; 27 | #X obj 77 204 min 50; 28 | #X obj 92 365 clip 0 0.999; 29 | #X obj 272 365 clip 0 0.999; 30 | #X obj 282 111 hv.dispatch \$0 outdelay 10; 31 | #X obj 282 71 hv.dispatch \$0 indelay 20; 32 | #X obj 171 203 clip 0 1000; 33 | #X obj 171 225 t f f; 34 | #X obj 282 91 hv.dispatch \$0 feedback 0.85; 35 | #X obj 282 131 hv.dispatch \$0 slide 0.5; 36 | #X obj 171 181 r \$0-slide; 37 | #X connect 1 0 22 0; 38 | #X connect 1 0 2 0; 39 | #X connect 2 0 14 0; 40 | #X connect 3 0 15 0; 41 | #X connect 4 0 14 1; 42 | #X connect 5 0 21 0; 43 | #X connect 6 0 7 0; 44 | #X connect 7 0 4 1; 45 | #X connect 8 0 2 1; 46 | #X connect 9 0 20 0; 47 | #X connect 10 0 9 0; 48 | #X connect 11 0 12 0; 49 | #X connect 12 0 8 1; 50 | #X connect 13 0 5 0; 51 | #X connect 14 0 0 0; 52 | #X connect 14 0 23 0; 53 | #X connect 15 0 29 0; 54 | #X connect 16 0 26 0; 55 | #X connect 17 0 27 0; 56 | #X connect 18 0 24 0; 57 | #X connect 19 0 25 0; 58 | #X connect 20 0 8 0; 59 | #X connect 21 0 4 0; 60 | #X connect 24 0 13 0; 61 | #X connect 25 0 10 0; 62 | #X connect 26 0 11 0; 63 | #X connect 27 0 6 0; 64 | #X connect 28 0 33 0; 65 | #X connect 29 0 32 0; 66 | #X connect 30 0 31 0; 67 | #X connect 31 0 10 1; 68 | #X connect 31 1 13 1; 69 | #X connect 32 0 28 0; 70 | #X connect 34 0 30 0; 71 | -------------------------------------------------------------------------------- /hv.compressor2~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 1 541 421 362 10; 2 | #X text 25 25 stereo compressor \, static 40ms attack/release \, adjustable 3 | threshold and ratio settings; 4 | #X obj 27 94 osc~ 440; 5 | #X msg 186 123 threshold \$1; 6 | #X floatatom 186 98 5 0 0 0 - - -; 7 | #X obj 75 272 env~; 8 | #X obj 27 273 env~; 9 | #X obj 27 303 - 100; 10 | #X floatatom 27 325 5 0 0 0 - - -; 11 | #X obj 75 302 - 100; 12 | #X floatatom 75 324 5 0 0 0 - - -; 13 | #X obj 191 270 env~; 14 | #X obj 191 300 - 100; 15 | #X floatatom 191 322 5 0 0 0 - - -; 16 | #X floatatom 292 96 5 0 0 0 - - -; 17 | #X msg 292 123 ratio \$1; 18 | #X text 207 185 // arg \$1: threshold; 19 | #X text 236 322 dB; 20 | #X text 205 203 // arg \$2: ratio; 21 | #X obj 75 185 hv.compressor2~ 60 2; 22 | #X connect 1 0 5 0; 23 | #X connect 1 0 18 0; 24 | #X connect 1 0 18 1; 25 | #X connect 2 0 18 2; 26 | #X connect 3 0 2 0; 27 | #X connect 4 0 8 0; 28 | #X connect 5 0 6 0; 29 | #X connect 6 0 7 0; 30 | #X connect 8 0 9 0; 31 | #X connect 10 0 11 0; 32 | #X connect 11 0 12 0; 33 | #X connect 13 0 14 0; 34 | #X connect 14 0 18 2; 35 | #X connect 18 0 4 0; 36 | #X connect 18 1 10 0; 37 | -------------------------------------------------------------------------------- /hv.compressor2~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 399 22 577 852 10; 2 | #X obj 160 408 t b f; 3 | #X obj 61 468 f; 4 | #X obj 61 498 /; 5 | #X obj 61 438 -; 6 | #X obj 16 362 f; 7 | #X obj 150 320 t b f f; 8 | #X obj 61 528 +; 9 | #X obj 376 16 inlet; 10 | #X obj 174 256 t b b; 11 | #X obj 160 385 r \$0-ratio; 12 | #X obj 150 190 r \$0-threshold; 13 | #X obj 16 135 env~ 256; 14 | #X obj 16 265 s \$0-inputlevel; 15 | #X obj 16 295 r \$0-inputlevel; 16 | #X obj 16 325 t f f; 17 | #X obj 16 558 s \$0-outputlevel; 18 | #N canvas 639 436 358 251 gainreduc 0; 19 | #X obj 32 94 -; 20 | #X obj 32 114 / 20; 21 | #X obj 32 134 t b f; 22 | #X msg 32 154 10; 23 | #X obj 32 174 pow; 24 | #X obj 32 34 inlet output; 25 | #X obj 47 64 inlet input; 26 | #X obj 32 206 outlet gain-reduction; 27 | #X text 70 172 gr = 20*log10(output - input); 28 | #X connect 0 0 1 0; 29 | #X connect 1 0 2 0; 30 | #X connect 2 0 3 0; 31 | #X connect 2 1 4 1; 32 | #X connect 3 0 4 0; 33 | #X connect 4 0 7 0; 34 | #X connect 5 0 0 0; 35 | #X connect 6 0 0 1; 36 | #X restore 151 668 pd gainreduc; 37 | #X obj 151 648 r \$0-outputlevel; 38 | #X obj 136 758 *~; 39 | #X obj 151 732 line~; 40 | #X text 93 498 Gain reduction; 41 | #X obj 26 235 r \$0-graph-input; 42 | #X obj 61 193 r \$0-switch; 43 | #X obj 16 213 spigot 1; 44 | #X obj 151 688 min 1; 45 | #X obj 89 135 env~ 256; 46 | #X obj 16 408 moses 70; 47 | #X obj 76 408 t f f; 48 | #X obj 16 173 max; 49 | #X obj 16 48 s~ \$0-inputSignalLeft; 50 | #X obj 155 48 s~ \$0-inputSignalRight; 51 | #X obj 16 588 r~ \$0-inputSignalLeft; 52 | #X obj 136 618 r~ \$0-inputSignalRight; 53 | #X obj 16 758 *~; 54 | #X obj 16 88 r~ \$0-inputSignalLeft; 55 | #X obj 89 112 r~ \$0-inputSignalRight; 56 | #X obj 136 788 outlet~ rightOutput; 57 | #X obj 16 788 outlet~ leftOutput; 58 | #X text 213 709 ms attack/release; 59 | #X obj 155 16 inlet~ rightInput; 60 | #X obj 16 14 inlet~ leftInput; 61 | #X obj 174 286 f \$1; 62 | #X obj 210 286 f \$2; 63 | #X obj 174 234 loadbang; 64 | #X msg 151 710 \$1 40; 65 | #X obj 376 36 hv.dispatch \$0 ratio 1; 66 | #X obj 376 56 hv.dispatch \$0 threshold 70; 67 | #X connect 0 0 1 0; 68 | #X connect 0 1 2 1; 69 | #X connect 1 0 2 0; 70 | #X connect 2 0 6 0; 71 | #X connect 3 0 1 0; 72 | #X connect 4 0 26 0; 73 | #X connect 5 0 4 0; 74 | #X connect 5 1 26 1; 75 | #X connect 5 2 27 0; 76 | #X connect 6 0 15 0; 77 | #X connect 7 0 45 0; 78 | #X connect 8 0 41 0; 79 | #X connect 8 1 42 0; 80 | #X connect 9 0 0 0; 81 | #X connect 10 0 5 0; 82 | #X connect 11 0 28 0; 83 | #X connect 13 0 14 0; 84 | #X connect 14 0 4 0; 85 | #X connect 14 1 16 1; 86 | #X connect 16 0 24 0; 87 | #X connect 17 0 16 0; 88 | #X connect 18 0 36 0; 89 | #X connect 19 0 18 1; 90 | #X connect 19 0 33 1; 91 | #X connect 21 0 12 0; 92 | #X connect 22 0 23 1; 93 | #X connect 23 0 12 0; 94 | #X connect 24 0 44 0; 95 | #X connect 25 0 28 1; 96 | #X connect 26 0 15 0; 97 | #X connect 26 1 3 0; 98 | #X connect 27 0 3 1; 99 | #X connect 27 1 6 1; 100 | #X connect 28 0 23 0; 101 | #X connect 31 0 33 0; 102 | #X connect 32 0 18 0; 103 | #X connect 33 0 37 0; 104 | #X connect 34 0 11 0; 105 | #X connect 35 0 25 0; 106 | #X connect 39 0 30 0; 107 | #X connect 40 0 29 0; 108 | #X connect 41 0 5 0; 109 | #X connect 42 0 0 0; 110 | #X connect 43 0 8 0; 111 | #X connect 44 0 19 0; 112 | #X connect 45 0 46 0; 113 | -------------------------------------------------------------------------------- /hv.compressor~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 745 441 421 362 10; 2 | #X obj 27 94 osc~ 440; 3 | #X msg 134 139 threshold \$1; 4 | #X floatatom 134 114 5 0 0 0 - - -; 5 | #X obj 75 272 env~; 6 | #X obj 27 273 env~; 7 | #X obj 27 303 - 100; 8 | #X floatatom 27 325 5 0 0 0 - - -; 9 | #X obj 75 302 - 100; 10 | #X floatatom 75 324 5 0 0 0 - - -; 11 | #X floatatom 240 112 5 0 0 0 - - -; 12 | #X msg 240 139 ratio \$1; 13 | #X text 207 185 // arg \$1: threshold; 14 | #X text 25 25 mono compressor \, static 40ms attack/release \, adjustable 15 | threshold and ratio settings; 16 | #X text 118 324 dB; 17 | #X text 206 205 // arg \$2: ratio; 18 | #X obj 75 185 hv.compressor~ 60 2; 19 | #X connect 0 0 4 0; 20 | #X connect 0 0 15 0; 21 | #X connect 1 0 15 1; 22 | #X connect 2 0 1 0; 23 | #X connect 3 0 7 0; 24 | #X connect 4 0 5 0; 25 | #X connect 5 0 6 0; 26 | #X connect 7 0 8 0; 27 | #X connect 9 0 10 0; 28 | #X connect 10 0 15 1; 29 | #X connect 15 0 3 0; 30 | -------------------------------------------------------------------------------- /hv.compressor~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 399 22 455 583 10; 2 | #X obj 145 222 t b f; 3 | #X obj 76 282 f; 4 | #X obj 76 312 /; 5 | #X obj 76 252 -; 6 | #X obj 31 176 f; 7 | #X obj 135 134 t b f f; 8 | #X obj 76 342 +; 9 | #X obj 266 16 inlet; 10 | #X obj 159 70 t b b; 11 | #X obj 145 199 r \$0-ratio; 12 | #X obj 135 14 r \$0-threshold; 13 | #X obj 31 55 env~ 256; 14 | #X obj 31 139 t f f; 15 | #N canvas 639 436 358 251 gainreduc 0; 16 | #X obj 32 94 -; 17 | #X obj 32 114 / 20; 18 | #X obj 32 134 t b f; 19 | #X msg 32 154 10; 20 | #X obj 32 174 pow; 21 | #X obj 32 34 inlet output; 22 | #X obj 47 64 inlet input; 23 | #X obj 32 206 outlet gain-reduction; 24 | #X text 70 172 gr = 20*log10(output - input); 25 | #X connect 0 0 1 0; 26 | #X connect 1 0 2 0; 27 | #X connect 2 0 3 0; 28 | #X connect 2 1 4 1; 29 | #X connect 3 0 4 0; 30 | #X connect 4 0 7 0; 31 | #X connect 5 0 0 0; 32 | #X connect 6 0 0 1; 33 | #X restore 31 402 pd gainreduc; 34 | #X obj 31 466 line~; 35 | #X text 108 312 Gain reduction; 36 | #X obj 31 422 min 1; 37 | #X obj 31 222 moses 70; 38 | #X obj 91 222 t f f; 39 | #X obj 31 93 max; 40 | #X obj 16 502 *~; 41 | #X obj 16 532 outlet~ leftOutput; 42 | #X text 78 445 ms attack/release; 43 | #X obj 159 100 f \$1; 44 | #X obj 195 100 f \$2; 45 | #X obj 159 48 loadbang; 46 | #X msg 31 444 \$1 40; 47 | #X obj 16 14 inlet~ input; 48 | #X obj 31 372 t a; 49 | #X obj 266 36 hv.dispatch \$0 ratio 1; 50 | #X obj 266 56 hv.dispatch \$0 threshold 70; 51 | #X connect 0 0 1 0; 52 | #X connect 0 1 2 1; 53 | #X connect 1 0 2 0; 54 | #X connect 2 0 6 0; 55 | #X connect 3 0 1 0; 56 | #X connect 4 0 17 0; 57 | #X connect 5 0 4 0; 58 | #X connect 5 1 17 1; 59 | #X connect 5 2 18 0; 60 | #X connect 6 0 28 0; 61 | #X connect 7 0 29 0; 62 | #X connect 8 0 23 0; 63 | #X connect 8 1 24 0; 64 | #X connect 9 0 0 0; 65 | #X connect 10 0 5 0; 66 | #X connect 11 0 19 0; 67 | #X connect 12 0 4 0; 68 | #X connect 12 1 13 1; 69 | #X connect 13 0 16 0; 70 | #X connect 14 0 20 1; 71 | #X connect 16 0 26 0; 72 | #X connect 17 0 28 0; 73 | #X connect 17 1 3 0; 74 | #X connect 18 0 3 1; 75 | #X connect 18 1 6 1; 76 | #X connect 19 0 12 0; 77 | #X connect 20 0 21 0; 78 | #X connect 23 0 5 0; 79 | #X connect 24 0 0 0; 80 | #X connect 25 0 8 0; 81 | #X connect 26 0 14 0; 82 | #X connect 27 0 20 0; 83 | #X connect 27 0 11 0; 84 | #X connect 28 0 13 0; 85 | #X connect 29 0 30 0; 86 | -------------------------------------------------------------------------------- /hv.dispatch-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 146 78 490 359 10; 2 | #X obj 33 175 t a; 3 | #X msg 33 108 param-1 \$1; 4 | #X msg 137 153 param-2 \$1; 5 | #X obj 140 130 hsl 128 15 0 1 0 0 empty empty empty -2 -8 0 10 -262144 6 | -1 -1 0 1; 7 | #X obj 35 84 hsl 128 15 0 1 0 0 empty empty empty -2 -8 0 10 -262144 8 | -1 -1 0 1; 9 | #X obj 49 290 r \$0-param-1; 10 | #X floatatom 49 312 5 0 0 0 - - -, f 5; 11 | #X floatatom 196 312 5 0 0 0 - - -, f 5; 12 | #X obj 196 290 r \$0-param-2; 13 | #X text 32 23 Automatically generates local send object for parameter 14 | distribution.; 15 | #X text 229 55 arg \$1: Unique ID; 16 | #X text 229 70 arg \$2: Parameter name; 17 | #X text 229 86 arg \$3: Default value; 18 | #X text 209 227 Can chain hv_dispatch objects together; 19 | #X obj 33 206 hv.dispatch \$0 param-1 0.2; 20 | #X obj 33 228 hv.dispatch \$0 param-2 0.5; 21 | #X connect 0 0 14 0; 22 | #X connect 1 0 0 0; 23 | #X connect 2 0 0 0; 24 | #X connect 3 0 2 0; 25 | #X connect 4 0 1 0; 26 | #X connect 5 0 6 0; 27 | #X connect 8 0 7 0; 28 | #X connect 14 0 15 0; 29 | -------------------------------------------------------------------------------- /hv.dispatch.pd: -------------------------------------------------------------------------------- 1 | #N canvas 146 78 165 232 10; 2 | #X obj 32 36 inlet; 3 | #X obj 77 96 outlet; 4 | #X obj 32 66 route \$2; 5 | #X obj 32 176 s \$1-\$2; 6 | #X obj 48 127 loadbang; 7 | #X obj 48 149 \$3; 8 | #X connect 0 0 2 0; 9 | #X connect 2 0 3 0; 10 | #X connect 2 1 1 0; 11 | #X connect 4 0 5 0; 12 | #X connect 5 0 3 0; 13 | -------------------------------------------------------------------------------- /hv.drunk-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 807 78 551 416 10; 2 | #X msg 161 60 seed 1234; 3 | #X obj 63 223 print; 4 | #X obj 63 85 metro 1000; 5 | #X obj 67 58 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 6 | ; 7 | #X msg 172 103 200; 8 | #X msg 159 155 3; 9 | #X text 189 152 max step size; 10 | #X text 73 271 A random walk (drunk) is a special case of a Markov 11 | chain \, in which the states are integers and the transitions add or 12 | subtract a small amount (or zero) from the previous state to get a 13 | new one. Here the "f" holds the state. When it gets a bang \, the previous 14 | state is added to a random number (from 0 to $bound) multiplied by 15 | a random sign (-1 or 1). The new value is then coerced into the range 16 | from 0 to $bound; 17 | #X text 202 105 bound; 18 | #X obj 63 189 hv.drunk 100 5; 19 | #X connect 0 0 9 0; 20 | #X connect 2 0 9 0; 21 | #X connect 3 0 2 0; 22 | #X connect 4 0 9 1; 23 | #X connect 5 0 9 2; 24 | #X connect 9 0 1 0; 25 | -------------------------------------------------------------------------------- /hv.drunk.pd: -------------------------------------------------------------------------------- 1 | #N canvas 807 22 809 703 10; 2 | #X obj 123 407 random 2; 3 | #X obj 123 348 t b b f; 4 | #X obj 123 463 sel 0 1; 5 | #X obj 215 525 +; 6 | #X obj 185 524 *; 7 | #X text 39 9 Random walk generator; 8 | #X text 132 445 sign; 9 | #X text 205 382 magnitude; 10 | #X text 281 554 add prev value; 11 | #X text 278 571 to random increment; 12 | #X text 475 481 us back in.; 13 | #X text 446 741 updated for Pd version 0.37-1; 14 | #N canvas 219 245 417 417 coerce 0; 15 | #X obj 41 182 moses 0; 16 | #X obj 41 206 * -1; 17 | #X obj 206 185 * -1; 18 | #X obj 236 162 * 2; 19 | #X obj 115 182 moses 128; 20 | #X obj 41 294 outlet; 21 | #X obj 41 44 inlet; 22 | #X obj 173 48 inlet; 23 | #X obj 206 210 + 256; 24 | #X obj 173 95 t a a; 25 | #X text 234 76 us back in.; 26 | #X text 235 46 coercion to range 0-128 \; if out of range \, reflect 27 | ; 28 | #X connect 0 0 1 0; 29 | #X connect 0 1 4 0; 30 | #X connect 1 0 5 0; 31 | #X connect 2 0 8 0; 32 | #X connect 3 0 8 1; 33 | #X connect 4 0 5 0; 34 | #X connect 4 1 2 0; 35 | #X connect 6 0 0 0; 36 | #X connect 7 0 9 0; 37 | #X connect 8 0 5 0; 38 | #X connect 9 0 4 1; 39 | #X connect 9 1 3 0; 40 | #X restore 361 468 pd coerce; 41 | #X obj 439 105 loadbang; 42 | #X obj 419 134 f \$1; 43 | #X text 385 18 upper bound: must be > 0; 44 | #X text 476 451 coercion to range 0-128 \; if out of range \, reflect 45 | ; 46 | #X obj 201 408 random \$2; 47 | #X obj 123 40 inlet; 48 | #X obj 587 42 inlet; 49 | #X obj 419 35 inlet; 50 | #X obj 150 491 1; 51 | #X obj 123 491 -1; 52 | #X text 592 19 stepsize; 53 | #X obj 587 127 f \$2; 54 | #X obj 587 151 select 0; 55 | #X obj 587 173 2; 56 | #X obj 596 103 loadbang; 57 | #X obj 587 202 f; 58 | #X obj 361 529 outlet; 59 | #X obj 151 293 * 0.5; 60 | #X msg 419 208 128; 61 | #X obj 419 155 moses 0; 62 | #X obj 463 177 select 0; 63 | #X obj 419 234 f; 64 | #X text 159 312 start at bound/2; 65 | #N canvas 298 277 488 430 router 0; 66 | #X obj 66 43 inlet; 67 | #X obj 231 273 outlet; 68 | #X obj 270 245 outlet; 69 | #X obj 309 215 outlet; 70 | #X obj 66 354 outlet; 71 | #X obj 66 332 b; 72 | #X obj 151 299 outlet; 73 | #X obj 108 326 s \$0-seed; 74 | #X text 286 272 value; 75 | #X text 326 248 bound; 76 | #X text 363 216 stepsize; 77 | #X text 118 356 bang; 78 | #X text 203 298 set value without output.; 79 | #X obj 238 139 unpack f f f; 80 | #X obj 66 92 route bang seed set; 81 | #X connect 0 0 14 0; 82 | #X connect 5 0 4 0; 83 | #X connect 13 0 1 0; 84 | #X connect 13 1 2 0; 85 | #X connect 13 2 3 0; 86 | #X connect 14 0 5 0; 87 | #X connect 14 1 7 0; 88 | #X connect 14 2 6 0; 89 | #X connect 14 3 13 0; 90 | #X restore 123 87 pd router; 91 | #X obj 353 439 clip 0 128; 92 | #X obj 418 418 t a a; 93 | #X text 449 235 bound; 94 | #X text 615 203 stepsize; 95 | #X text 130 636 A random walk is a special case of a Markov chain \, 96 | in which the states are integers and the transitions add or subtract 97 | a small amount (or zero) from the previous state to get a new one. 98 | Here the "f" holds the state. When it gets a bang \, the previous state 99 | is added to a random number (from 0 to $bound) multiplied by a random 100 | sign (-1 or 1). The new value is then coerced into the range from 0 101 | to $bound; 102 | #X obj 123 323 int; 103 | #X msg 41 368 seed \$1; 104 | #X obj 41 338 r \$0-seed; 105 | #N canvas 228 198 627 317 LICENSE-BSD 0; 106 | #X text 121 56 This software is copyrighted by Miller Puckette \, Reality 107 | Jockey Ltd. and others. The terms (the "Standard Improved BSD License") 108 | apply to all files associated with the software unless explicitly disclaimed 109 | in individual files.; 110 | #X text 123 148 See the file LICENSE.txt for the full license text. 111 | ; 112 | #X restore 683 80 pd LICENSE-BSD; 113 | #X connect 0 0 2 0; 114 | #X connect 1 0 0 0; 115 | #X connect 1 1 17 0; 116 | #X connect 1 2 3 1; 117 | #X connect 2 0 22 0; 118 | #X connect 2 1 21 0; 119 | #X connect 3 0 12 0; 120 | #X connect 4 0 3 0; 121 | #X connect 12 0 29 0; 122 | #X connect 12 0 42 1; 123 | #X connect 13 0 14 0; 124 | #X connect 14 0 32 0; 125 | #X connect 17 0 4 1; 126 | #X connect 18 0 36 0; 127 | #X connect 19 0 24 0; 128 | #X connect 20 0 14 0; 129 | #X connect 21 0 4 0; 130 | #X connect 22 0 4 0; 131 | #X connect 24 0 25 0; 132 | #X connect 25 0 26 0; 133 | #X connect 25 1 28 0; 134 | #X connect 26 0 28 0; 135 | #X connect 27 0 24 0; 136 | #X connect 28 0 17 1; 137 | #X connect 30 0 42 1; 138 | #X connect 31 0 34 0; 139 | #X connect 32 0 31 0; 140 | #X connect 32 1 33 0; 141 | #X connect 33 0 31 0; 142 | #X connect 33 1 34 0; 143 | #X connect 34 0 30 0; 144 | #X connect 34 0 38 0; 145 | #X connect 36 0 42 0; 146 | #X connect 36 1 42 1; 147 | #X connect 36 2 37 0; 148 | #X connect 36 3 34 0; 149 | #X connect 36 4 28 0; 150 | #X connect 37 0 12 0; 151 | #X connect 38 0 37 2; 152 | #X connect 38 1 12 1; 153 | #X connect 42 0 1 0; 154 | #X connect 43 0 0 0; 155 | #X connect 43 0 17 0; 156 | #X connect 44 0 43 0; 157 | -------------------------------------------------------------------------------- /hv.envfollow~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 877 440 376 419 10; 2 | #X obj 35 76 osc~ 440; 3 | #X obj 36 162 *~; 4 | #X obj 51 138 vline~; 5 | #X obj 36 346 *~ 0.5; 6 | #X obj 37 374 dac~; 7 | #X obj 107 164 hsl 128 15 0 500 0 0 empty empty attack -2 -8 0 10 -262144 8 | -1 -1 0 1; 9 | #X obj 95 257 noise~; 10 | #X obj 95 284 *~ 0.1; 11 | #X obj 70 309 *~; 12 | #X text 178 113 <-- trigger; 13 | #X text 32 33 Envelope follower with adjustable attack parameter; 14 | #X floatatom 114 186 5 0 0 0 - - -; 15 | #X obj 169 200 hsl 128 15 0 1000 0 0 empty empty release -2 -8 0 10 16 | -262144 -1 -1 0 1; 17 | #X floatatom 166 220 5 0 0 0 - - -; 18 | #X msg 51 112 0 \, 1 1 0 \, 0 100 10; 19 | #X obj 70 232 hv.envfollow~; 20 | #X connect 0 0 1 0; 21 | #X connect 1 0 3 0; 22 | #X connect 1 0 15 0; 23 | #X connect 2 0 1 1; 24 | #X connect 3 0 4 0; 25 | #X connect 3 0 4 1; 26 | #X connect 5 0 11 0; 27 | #X connect 5 0 15 1; 28 | #X connect 6 0 7 0; 29 | #X connect 7 0 8 1; 30 | #X connect 8 0 3 0; 31 | #X connect 12 0 13 0; 32 | #X connect 12 0 15 2; 33 | #X connect 14 0 2 0; 34 | #X connect 15 0 8 0; 35 | -------------------------------------------------------------------------------- /hv.envfollow~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 849 146 552 358 10; 2 | #X obj 28 240 -~; 3 | #X obj 28 216 sig~ 1; 4 | #X obj 13 288 rpole~; 5 | #X obj 116 32 loadbang; 6 | #X obj 116 56 samplerate~; 7 | #X obj 79 122 *; 8 | #X obj 13 263 *~; 9 | #X obj 13 319 outlet~; 10 | #X obj 193 121 *; 11 | #X text 228 220 temp = abs(in); 12 | #X text 228 280 else; 13 | #X obj 153 194 r~ \$0-env; 14 | #X obj 67 319 s~ \$0-env; 15 | #X text 238 260 env = temp + attack_coeff * (env - temp); 16 | #X text 238 300 env = temp + release_coeff * (env - temp); 17 | #X obj 116 79 / 1000; 18 | #X text 228 187 http://www.musicdsp.org/archive.php?classid=2#97; 19 | #X obj 13 9 inlet~; 20 | #X obj 79 9 inlet attack (ms); 21 | #X obj 193 9 inlet release (ms); 22 | #X obj 13 150 abs~; 23 | #N canvas 0 22 427 275 coeff 0; 24 | #X obj 53 55 inlet; 25 | #X obj 53 150 exp; 26 | #X msg 53 172 \$1 10; 27 | #X obj 53 194 line~; 28 | #X obj 53 125 /; 29 | #X msg 53 103 -4.60517 \$1; 30 | #X obj 53 82 max 1; 31 | #X obj 53 216 outlet~; 32 | #X text 109 217 coeff = exp(-1 / (Fs * time_ms)); 33 | #X connect 0 0 6 0; 34 | #X connect 1 0 2 0; 35 | #X connect 2 0 3 0; 36 | #X connect 3 0 7 0; 37 | #X connect 4 0 1 0; 38 | #X connect 5 0 4 0; 39 | #X connect 6 0 5 0; 40 | #X restore 193 149 pd coeff; 41 | #N canvas 0 22 427 275 coeff 0; 42 | #X obj 53 55 inlet; 43 | #X obj 53 150 exp; 44 | #X msg 53 172 \$1 10; 45 | #X obj 53 194 line~; 46 | #X obj 53 125 /; 47 | #X msg 53 103 -4.60517 \$1; 48 | #X obj 53 82 max 1; 49 | #X obj 53 216 outlet~; 50 | #X text 109 217 coeff = exp(-1 / (Fs * time_ms)); 51 | #X connect 0 0 6 0; 52 | #X connect 1 0 2 0; 53 | #X connect 2 0 3 0; 54 | #X connect 3 0 7 0; 55 | #X connect 4 0 1 0; 56 | #X connect 5 0 4 0; 57 | #X connect 6 0 5 0; 58 | #X restore 79 152 pd coeff; 59 | #X text 228 239 if (tmp > env); 60 | #X obj 79 217 hv.multiplex~; 61 | #X connect 0 0 6 1; 62 | #X connect 1 0 0 0; 63 | #X connect 2 0 7 0; 64 | #X connect 2 0 12 0; 65 | #X connect 3 0 4 0; 66 | #X connect 4 0 15 0; 67 | #X connect 5 0 22 0; 68 | #X connect 6 0 2 0; 69 | #X connect 8 0 21 0; 70 | #X connect 11 0 24 3; 71 | #X connect 15 0 5 1; 72 | #X connect 15 0 8 1; 73 | #X connect 17 0 20 0; 74 | #X connect 18 0 5 0; 75 | #X connect 19 0 8 0; 76 | #X connect 20 0 6 0; 77 | #X connect 20 0 24 2; 78 | #X connect 21 0 24 1; 79 | #X connect 22 0 24 0; 80 | #X connect 24 0 0 1; 81 | #X connect 24 0 2 1; 82 | -------------------------------------------------------------------------------- /hv.eq~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 788 430 390 231 10; 2 | #X obj 31 162 env~; 3 | #X floatatom 31 207 5 0 0 0 - - -; 4 | #X floatatom 31 71 5 0 0 0 - - -; 5 | #X obj 63 113 sig~ 0; 6 | #X obj 31 91 sig~ 0; 7 | #X obj 31 184 dbtorms; 8 | #X text 23 30 Outputs 1 if left input is equal to the right input \, 9 | 0 otherwise.; 10 | #X text 23 14 Signal rate ==~ (equals) operation.; 11 | #X obj 31 137 hv.eq~; 12 | #X connect 0 0 5 0; 13 | #X connect 2 0 4 0; 14 | #X connect 3 0 8 1; 15 | #X connect 4 0 8 0; 16 | #X connect 5 0 1 0; 17 | #X connect 8 0 0 0; 18 | -------------------------------------------------------------------------------- /hv.eq~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 572 582 217 179 10; 2 | #X obj 128 35 inlet~; 3 | #X obj 29 35 inlet~; 4 | #X obj 29 117 outlet~; 5 | #N canvas 929 472 249 206 @hv_obj 1; 6 | #X obj 124 31 inlet~; 7 | #X obj 31 31 inlet~; 8 | #X obj 31 141 outlet~; 9 | #X obj 31 111 *~; 10 | #X obj 31 79 hv.gte~; 11 | #X obj 85 78 hv.lte~; 12 | #X connect 0 0 4 1; 13 | #X connect 0 0 5 1; 14 | #X connect 1 0 4 0; 15 | #X connect 1 0 5 0; 16 | #X connect 3 0 2 0; 17 | #X connect 4 0 3 0; 18 | #X connect 5 0 3 1; 19 | #X restore 29 76 pd @hv_obj __eq~f; 20 | #X connect 0 0 3 1; 21 | #X connect 1 0 3 0; 22 | #X connect 3 0 2 0; 23 | -------------------------------------------------------------------------------- /hv.exp~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 485 59 520 418 10; 2 | #X text 22 10 This abstraction presents an alternative implementation 3 | to the exp~ object. Heavy uses the system's expf() function (as does 4 | Pd) \, but some applications may wish to avoid the expf() function 5 | entirely \, and instead use this reasonably fast approximation.; 6 | #X obj 35 178 sig~; 7 | #X obj 86 205 loadbang; 8 | #X obj 86 229 metro 100; 9 | #X obj 86 263 snapshot~; 10 | #X floatatom 35 150 5 0 0 0 - - -; 11 | #X floatatom 86 288 7 0 0 0 - - -; 12 | #X text 105 128 raises the Euler number 'e' (about 2.718) \, to the 13 | power of the input signal., f 43; 14 | #X text 213 199 See also:; 15 | #X obj 35 205 hv.exp~; 16 | #X obj 287 198 hv.pow~; 17 | #X text 211 276 updated for heavylib version 0.2; 18 | #X connect 1 0 9 0; 19 | #X connect 2 0 3 0; 20 | #X connect 3 0 4 0; 21 | #X connect 4 0 6 0; 22 | #X connect 5 0 1 0; 23 | #X connect 9 0 4 0; 24 | -------------------------------------------------------------------------------- /hv.exp~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 505 239 509 364 10; 2 | #X obj 17 13 inlet~; 3 | #X obj 19 338 outlet~; 4 | #X obj 17 38 *~ 0.0009765625; 5 | #X obj 17 62 +~ 1; 6 | #X obj 17 112 *~; 7 | #X obj 17 87 *~; 8 | #X obj 18 162 *~; 9 | #X obj 18 137 *~; 10 | #X obj 18 214 *~; 11 | #X obj 18 189 *~; 12 | #X obj 19 264 *~; 13 | #X obj 19 239 *~; 14 | #X obj 19 314 *~; 15 | #X obj 19 289 *~; 16 | #X text 122 10 https://en.wikipedia.org/wiki/Exponential_function; 17 | #X text 121 29 https://codingforspeed.com/using-faster-exponential-approximation/; 18 | #X connect 0 0 2 0; 19 | #X connect 2 0 3 0; 20 | #X connect 3 0 5 0; 21 | #X connect 3 0 5 1; 22 | #X connect 4 0 7 0; 23 | #X connect 4 0 7 1; 24 | #X connect 5 0 4 0; 25 | #X connect 5 0 4 1; 26 | #X connect 6 0 9 0; 27 | #X connect 6 0 9 1; 28 | #X connect 7 0 6 0; 29 | #X connect 7 0 6 1; 30 | #X connect 8 0 11 0; 31 | #X connect 8 0 11 1; 32 | #X connect 9 0 8 0; 33 | #X connect 9 0 8 1; 34 | #X connect 10 0 13 0; 35 | #X connect 10 0 13 1; 36 | #X connect 11 0 10 0; 37 | #X connect 11 0 10 1; 38 | #X connect 12 0 1 0; 39 | #X connect 13 0 12 0; 40 | #X connect 13 0 12 1; 41 | -------------------------------------------------------------------------------- /hv.filter.gain~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 1 52 808 755 10; 2 | #X obj 42 171 noise~; 3 | #X obj 42 193 *~ 0.05; 4 | #X obj 403 37 hv.filters/spectrolog; 5 | #X text 50 96 Available filters:; 6 | #X text 31 57 Includes signal-rate coefficient updating to avoid clicks 7 | when sweeping the controls.; 8 | #X text 31 19 Generic filter module with swappable filter types and 9 | frequency \, Q and gain settings.; 10 | #X text 100 152 peak; 11 | #X text 100 132 lowshelf; 12 | #X text 100 112 highshelf; 13 | #X obj 403 283 hv.filters/spectrolog; 14 | #X obj 405 531 hv.filters/spectrolog; 15 | #X obj 403 12 r~ \$0-lowshelf; 16 | #X obj 403 258 r~ \$0-highshelf; 17 | #X obj 405 506 r~ \$0-peak; 18 | #X obj 31 445 s~ \$0-lowshelf; 19 | #X obj 42 215 s~ \$0-noise; 20 | #X obj 31 389 r~ \$0-noise; 21 | #X obj 108 389 r \$0-freq; 22 | #X obj 172 389 r \$0-q; 23 | #X obj 219 389 r \$0-gain; 24 | #X obj 210 108 r freq @hv_param 1 128 50; 25 | #X obj 213 131 hsl 128 15 0 127 0 0 empty empty empty -2 -8 0 10 -262144 26 | -1 -1 0 1; 27 | #X obj 210 151 mtof; 28 | #X obj 210 173 s \$0-freq; 29 | #X obj 213 227 hsl 128 15 0.1 100 0 0 empty empty empty -2 -8 0 10 30 | -262144 -1 -1 0 1; 31 | #X obj 210 204 r q @hv_param 0.1 100 1; 32 | #X obj 210 249 s \$0-q; 33 | #X obj 213 304 hsl 128 15 -24 24 0 0 empty empty empty -2 -8 0 10 -262144 34 | -1 -1 0 1; 35 | #X obj 210 281 r gain @hv_param -24 24 0; 36 | #X obj 210 326 s \$0-gain; 37 | #X obj 31 509 r~ \$0-noise; 38 | #X obj 108 509 r \$0-freq; 39 | #X obj 172 509 r \$0-q; 40 | #X obj 219 509 r \$0-gain; 41 | #X obj 31 639 r~ \$0-noise; 42 | #X obj 108 639 r \$0-freq; 43 | #X obj 172 639 r \$0-q; 44 | #X obj 219 639 r \$0-gain; 45 | #X text 31 366 // lowshelf; 46 | #X text 32 488 // highshelf; 47 | #X text 33 615 // peaking eq; 48 | #X obj 31 695 s~ \$0-peak; 49 | #X obj 31 565 s~ \$0-highshelf; 50 | #X obj 31 417 hv.filter.gain~ lowshelf 1000 2; 51 | #X obj 31 537 hv.filter.gain~ highshelf 1000 2; 52 | #X obj 31 667 hv.filter.gain~ peak 1000 2; 53 | #X connect 0 0 1 0; 54 | #X connect 1 0 15 0; 55 | #X connect 11 0 2 0; 56 | #X connect 12 0 9 0; 57 | #X connect 13 0 10 0; 58 | #X connect 16 0 43 0; 59 | #X connect 17 0 43 1; 60 | #X connect 18 0 43 2; 61 | #X connect 19 0 43 3; 62 | #X connect 20 0 21 0; 63 | #X connect 21 0 22 0; 64 | #X connect 22 0 23 0; 65 | #X connect 24 0 26 0; 66 | #X connect 25 0 24 0; 67 | #X connect 27 0 29 0; 68 | #X connect 28 0 27 0; 69 | #X connect 30 0 44 0; 70 | #X connect 31 0 44 1; 71 | #X connect 32 0 44 2; 72 | #X connect 33 0 44 3; 73 | #X connect 34 0 45 0; 74 | #X connect 35 0 45 1; 75 | #X connect 36 0 45 2; 76 | #X connect 37 0 45 3; 77 | #X connect 43 0 14 0; 78 | #X connect 44 0 42 0; 79 | #X connect 45 0 41 0; 80 | -------------------------------------------------------------------------------- /hv.filter.gain~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 269 33 271 233 10; 2 | #X obj 82 58 inlet freq; 3 | #X obj 125 83 inlet q; 4 | #X obj 39 29 inlet~; 5 | #X obj 39 178 outlet~; 6 | #X obj 168 117 inlet gain; 7 | #X obj 39 146 hv.filters/\$1 \$2 \$3 \$4; 8 | #X connect 0 0 5 1; 9 | #X connect 1 0 5 2; 10 | #X connect 2 0 5 0; 11 | #X connect 4 0 5 3; 12 | #X connect 5 0 3 0; 13 | -------------------------------------------------------------------------------- /hv.filters/allpass.coeffs.pd: -------------------------------------------------------------------------------- 1 | #N canvas 357 23 608 743 10; 2 | #N canvas 0 22 783 567 hz2rad 0; 3 | #X obj 194 113 samplerate~; 4 | #X obj 194 71 loadbang; 5 | #X obj 194 185 atan; 6 | #X msg 194 160 1; 7 | #X text 382 53 w = 2 * pi * f / SR; 8 | #X obj 194 207 * 8; 9 | #X obj 194 137 t b a; 10 | #X obj 194 230 / 44100; 11 | #X text 260 232 2 * pi / SR; 12 | #X obj 119 269 *; 13 | #X obj 119 35 inlet; 14 | #X obj 119 298 outlet; 15 | #X text 175 300 w(rad); 16 | #X text 167 35 freq(Hz); 17 | #X connect 0 0 6 0; 18 | #X connect 1 0 0 0; 19 | #X connect 2 0 5 0; 20 | #X connect 3 0 2 0; 21 | #X connect 5 0 7 0; 22 | #X connect 6 0 3 0; 23 | #X connect 6 1 7 1; 24 | #X connect 7 0 9 1; 25 | #X connect 9 0 11 0; 26 | #X connect 10 0 9 0; 27 | #X restore 41 336 pd hz2rad; 28 | #X obj 41 366 t f f; 29 | #X obj 109 396 sin; 30 | #X obj 41 396 cos; 31 | #X obj 109 436 s \$0-wsin; 32 | #X obj 41 436 s \$0-wcos; 33 | #X obj 41 276 clip 20 20000; 34 | #X obj 213 276 clip 0.1 100; 35 | #X obj 138 306 r \$0-wsin; 36 | #X obj 198 436 s \$0-alpha; 37 | #X msg 213 306 1 \$1; 38 | #X obj 213 336 /; 39 | #X obj 198 366 *; 40 | #X obj 198 396 * 0.5; 41 | #N canvas 0 22 450 300 a0 0; 42 | #X obj 54 65 r \$0-wcos; 43 | #X obj 124 65 r \$0-wsin; 44 | #X obj 194 65 r \$0-alpha; 45 | #X obj 194 200 outlet; 46 | #X obj 194 139 + 1; 47 | #X connect 2 0 4 0; 48 | #X connect 4 0 3 0; 49 | #X restore 37 476 pd a0; 50 | #X text 305 139 (b0/a0) + (b1/a0)*z^(-1) + (b2/a0)*z^(-2); 51 | #X obj 22 506 f; 52 | #X msg 22 536 1 \$1; 53 | #X obj 22 566 /; 54 | #X obj 22 656 *; 55 | #X obj 84 656 *; 56 | #X obj 146 656 *; 57 | #X obj 208 657 *; 58 | #X obj 271 657 *; 59 | #X text 280 414 w0 = 2*pi*f0*Fs; 60 | #X text 280 434 alpha = sin(w0)/(2*Q); 61 | #X obj 207 71 t b f; 62 | #X obj 22 51 inlet freq; 63 | #X obj 207 51 inlet q; 64 | #X text 308 176 1 + (a1/a0)*z^(-1) + (a2/a0)*z^(-2); 65 | #X text 264 115 Audio-Cookbook:; 66 | #X text 264 205 http://musicdsp.org/files/Audio-EQ-Cookbook.txt; 67 | #X text 266 157 H(z) = -----------------------------------------; 68 | #X obj 22 596 t f f f f f b; 69 | #X obj 22 181 t b a b; 70 | #X obj 22 698 outlet b0; 71 | #X obj 84 698 outlet b1; 72 | #X obj 146 698 outlet b2; 73 | #X obj 208 698 outlet a1; 74 | #X obj 271 698 outlet a2; 75 | #X text 389 660 b0 = 1 - alpha; 76 | #X text 389 600 a0 = 1 + alpha; 77 | #X text 389 640 a2 = 1 - alpha; 78 | #X text 389 620 a1 = -2*cos(w0); 79 | #X text 389 680 b1 = -2*cos(w0); 80 | #X text 389 700 b2 = 1 + alpha; 81 | #N canvas 0 22 450 300 b0 0; 82 | #X obj 54 65 r \$0-wcos; 83 | #X obj 124 65 r \$0-wsin; 84 | #X obj 194 65 r \$0-alpha; 85 | #X obj 194 181 outlet; 86 | #X msg 194 121 1 \$1; 87 | #X obj 194 151 -; 88 | #X connect 2 0 4 0; 89 | #X connect 4 0 5 0; 90 | #X connect 5 0 3 0; 91 | #X restore 126 595 pd b0; 92 | #N canvas 0 22 450 300 b1 0; 93 | #X obj 54 65 r \$0-wcos; 94 | #X obj 124 65 r \$0-wsin; 95 | #X obj 194 65 r \$0-alpha; 96 | #X obj 54 178 outlet; 97 | #X obj 54 127 * -2; 98 | #X connect 0 0 4 0; 99 | #X connect 4 0 3 0; 100 | #X restore 166 595 pd b1; 101 | #N canvas 0 22 450 300 b2 0; 102 | #X obj 54 65 r \$0-wcos; 103 | #X obj 124 65 r \$0-wsin; 104 | #X obj 194 65 r \$0-alpha; 105 | #X obj 194 198 outlet; 106 | #X obj 194 128 + 1; 107 | #X connect 2 0 4 0; 108 | #X connect 4 0 3 0; 109 | #X restore 206 595 pd b2; 110 | #N canvas 0 22 450 300 a1 0; 111 | #X obj 54 65 r \$0-wcos; 112 | #X obj 124 65 r \$0-wsin; 113 | #X obj 194 65 r \$0-alpha; 114 | #X obj 54 198 outlet; 115 | #X obj 54 127 * -2; 116 | #X connect 0 0 4 0; 117 | #X connect 4 0 3 0; 118 | #X restore 246 595 pd a1; 119 | #N canvas 0 22 450 300 a2 0; 120 | #X obj 54 65 r \$0-wcos; 121 | #X obj 124 65 r \$0-wsin; 122 | #X obj 196 65 r \$0-alpha; 123 | #X obj 196 187 outlet; 124 | #X msg 196 129 1 \$1; 125 | #X obj 196 151 -; 126 | #X connect 2 0 4 0; 127 | #X connect 4 0 5 0; 128 | #X connect 5 0 3 0; 129 | #X restore 286 595 pd a2; 130 | #X text 378 580 ALL:; 131 | #X text 19 20 Allpass filter with Q - biquad filter coefficient generator 132 | ; 133 | #X obj 113 51 loadbang; 134 | #X obj 22 142 f \$1; 135 | #X obj 213 239 f \$2; 136 | #X connect 0 0 1 0; 137 | #X connect 1 0 3 0; 138 | #X connect 1 1 2 0; 139 | #X connect 2 0 4 0; 140 | #X connect 3 0 5 0; 141 | #X connect 6 0 0 0; 142 | #X connect 7 0 10 0; 143 | #X connect 8 0 12 0; 144 | #X connect 10 0 11 0; 145 | #X connect 11 0 12 1; 146 | #X connect 12 0 13 0; 147 | #X connect 13 0 9 0; 148 | #X connect 14 0 16 1; 149 | #X connect 16 0 17 0; 150 | #X connect 17 0 18 0; 151 | #X connect 18 0 33 0; 152 | #X connect 19 0 35 0; 153 | #X connect 20 0 36 0; 154 | #X connect 21 0 37 0; 155 | #X connect 22 0 38 0; 156 | #X connect 23 0 39 0; 157 | #X connect 26 0 54 0; 158 | #X connect 26 1 55 1; 159 | #X connect 27 0 54 0; 160 | #X connect 28 0 26 0; 161 | #X connect 33 0 19 0; 162 | #X connect 33 1 20 0; 163 | #X connect 33 2 21 0; 164 | #X connect 33 3 22 0; 165 | #X connect 33 4 23 0; 166 | #X connect 34 0 16 0; 167 | #X connect 34 1 6 0; 168 | #X connect 34 2 55 0; 169 | #X connect 46 0 19 1; 170 | #X connect 47 0 20 1; 171 | #X connect 48 0 21 1; 172 | #X connect 49 0 22 1; 173 | #X connect 50 0 23 1; 174 | #X connect 53 0 54 0; 175 | #X connect 54 0 34 0; 176 | #X connect 55 0 7 0; 177 | -------------------------------------------------------------------------------- /hv.filters/allpass.pd: -------------------------------------------------------------------------------- 1 | #N canvas 169 35 325 250 10; 2 | #X obj 35 206 outlet~; 3 | #X obj 35 44 inlet~; 4 | #N canvas 140 389 549 400 @hv_obj 0; 5 | #X obj 133 65 inlet~ b0; 6 | #X obj 204 65 inlet~ b1; 7 | #X obj 276 65 inlet~ b2; 8 | #X obj 347 65 inlet~ a1; 9 | #X obj 417 65 inlet~ a2; 10 | #X obj 51 65 inlet~; 11 | #N canvas 457 278 463 637 zeros 0; 12 | #X obj 114 473 czero~; 13 | #X obj 114 523 czero~; 14 | #X obj 114 583 outlet~; 15 | #X obj 147 553 outlet~; 16 | #X obj 206 74 inlet~ b0; 17 | #X obj 277 74 inlet~ b1; 18 | #X obj 349 74 inlet~ b2; 19 | #X obj 114 74 inlet~; 20 | #X obj 206 242 *~ -1; 21 | #X obj 206 264 *~ 0.5; 22 | #X obj 299 227 *~; 23 | #X obj 302 293 -~; 24 | #X obj 326 248 *~ 4; 25 | #X obj 326 226 *~; 26 | #X obj 351 319 abs~; 27 | #X obj 351 363 *~ 0.5; 28 | #X obj 349 401 /~; 29 | #N canvas 490 269 488 402 location 0; 30 | #X obj 63 64 inlet~; 31 | #X obj 165 71 inlet~; 32 | #X obj 334 70 inlet~; 33 | #X obj 63 314 outlet~; 34 | #X obj 132 316 outlet~; 35 | #X obj 244 317 outlet~; 36 | #X obj 336 319 outlet~; 37 | #N canvas 0 22 450 300 gte 0; 38 | #X obj 148 48 inlet~; 39 | #X obj 43 48 inlet~; 40 | #X obj 43 143 outlet~; 41 | #N canvas 467 216 450 300 @hv_obj 0; 42 | #X obj 217 60 inlet~; 43 | #X obj 120 60 inlet~; 44 | #X obj 170 183 outlet~; 45 | #X connect 1 0 2 0; 46 | #X restore 43 119 pd @hv_obj __and~f; 47 | #X obj 148 97 sig~ 1; 48 | #N canvas 249 541 148 189 @hv_obj 0; 49 | #X obj 23 69 -~; 50 | #X obj 23 94 clip~ -1e-37 0; 51 | #X obj 23 18 inlet~; 52 | #X obj 67 19 inlet~; 53 | #X obj 23 159 outlet~; 54 | #X obj 23 136 *~ 1e+37; 55 | #X obj 23 44 min~; 56 | #X obj 23 115 +~ 1e-37; 57 | #X connect 0 0 1 0; 58 | #X connect 1 0 7 0; 59 | #X connect 2 0 6 0; 60 | #X connect 3 0 6 1; 61 | #X connect 3 0 0 1; 62 | #X connect 5 0 4 0; 63 | #X connect 6 0 0 0; 64 | #X connect 7 0 5 0; 65 | #X restore 43 71 pd @hv_obj __gte~f; 66 | #X connect 0 0 5 1; 67 | #X connect 1 0 5 0; 68 | #X connect 3 0 2 0; 69 | #X connect 4 0 3 1; 70 | #X connect 5 0 3 0; 71 | #X restore 164 154 pd gte; 72 | #N canvas 0 22 281 183 lte 0; 73 | #X obj 150 34 inlet~; 74 | #X obj 45 34 inlet~; 75 | #X obj 45 129 outlet~; 76 | #N canvas 467 216 450 300 @hv_obj 0; 77 | #X obj 217 60 inlet~; 78 | #X obj 120 60 inlet~; 79 | #X obj 170 183 outlet~; 80 | #X connect 1 0 2 0; 81 | #X restore 45 105 pd @hv_obj __and~f; 82 | #X obj 150 83 sig~ 1; 83 | #N canvas 715 101 191 233 @hv_obj 0; 84 | #X obj 49 83 -~; 85 | #X obj 50 109 clip~ -1e-37 0; 86 | #X obj 49 32 inlet~; 87 | #X obj 93 33 inlet~; 88 | #X obj 50 174 outlet~; 89 | #X obj 50 151 *~ 1e+37; 90 | #X obj 49 58 min~; 91 | #X obj 50 130 +~ 1e-37; 92 | #X connect 0 0 1 0; 93 | #X connect 1 0 7 0; 94 | #X connect 2 0 6 0; 95 | #X connect 2 0 0 1; 96 | #X connect 3 0 6 1; 97 | #X connect 5 0 4 0; 98 | #X connect 6 0 0 0; 99 | #X connect 7 0 5 0; 100 | #X restore 45 57 pd @hv_obj __lte~f; 101 | #X connect 0 0 5 1; 102 | #X connect 1 0 5 0; 103 | #X connect 3 0 2 0; 104 | #X connect 4 0 3 1; 105 | #X connect 5 0 3 0; 106 | #X restore 229 154 pd lte; 107 | #X obj 65 257 +~; 108 | #X obj 264 101 sig~ 0; 109 | #X obj 256 206 *~; 110 | #X obj 338 206 *~; 111 | #X obj 244 290 -~; 112 | #X obj 340 289 *~ -1; 113 | #X connect 0 0 9 0; 114 | #X connect 0 0 13 0; 115 | #X connect 1 0 7 0; 116 | #X connect 1 0 8 0; 117 | #X connect 2 0 11 1; 118 | #X connect 2 0 12 1; 119 | #X connect 7 0 11 0; 120 | #X connect 8 0 12 0; 121 | #X connect 9 0 3 0; 122 | #X connect 10 0 7 1; 123 | #X connect 10 0 8 1; 124 | #X connect 11 0 9 1; 125 | #X connect 11 0 13 1; 126 | #X connect 12 0 4 0; 127 | #X connect 12 0 14 0; 128 | #X connect 13 0 5 0; 129 | #X connect 14 0 6 0; 130 | #X restore 136 443 pd location; 131 | #X obj 351 341 sqrt~; 132 | #X obj 206 301 /~; 133 | #X connect 0 0 1 0; 134 | #X connect 0 1 1 1; 135 | #X connect 1 0 2 0; 136 | #X connect 1 1 3 0; 137 | #X connect 4 0 13 0; 138 | #X connect 4 0 16 1; 139 | #X connect 4 0 19 1; 140 | #X connect 5 0 8 0; 141 | #X connect 5 0 10 1; 142 | #X connect 5 0 10 0; 143 | #X connect 6 0 13 1; 144 | #X connect 7 0 0 0; 145 | #X connect 8 0 9 0; 146 | #X connect 9 0 19 0; 147 | #X connect 10 0 11 0; 148 | #X connect 11 0 14 0; 149 | #X connect 11 0 17 1; 150 | #X connect 12 0 11 1; 151 | #X connect 13 0 12 0; 152 | #X connect 14 0 18 0; 153 | #X connect 15 0 16 0; 154 | #X connect 16 0 17 2; 155 | #X connect 17 0 0 2; 156 | #X connect 17 1 0 3; 157 | #X connect 17 2 1 2; 158 | #X connect 17 3 1 3; 159 | #X connect 18 0 15 0; 160 | #X connect 19 0 17 0; 161 | #X restore 51 215 pd zeros; 162 | #X obj 51 155 *~; 163 | #N canvas 354 142 470 501 poles 0; 164 | #X obj 63 335 cpole~; 165 | #X obj 63 376 cpole~; 166 | #X obj 63 433 outlet~; 167 | #X obj 63 44 inlet~; 168 | #X obj 113 44 inlet~; 169 | #X obj 176 44 inlet~ a1; 170 | #X obj 324 39 inlet~ a2; 171 | #N canvas 490 269 488 402 location 0; 172 | #X obj 63 64 inlet~; 173 | #X obj 165 71 inlet~; 174 | #X obj 334 70 inlet~; 175 | #X obj 63 314 outlet~; 176 | #X obj 132 316 outlet~; 177 | #X obj 244 317 outlet~; 178 | #X obj 336 319 outlet~; 179 | #N canvas 0 22 450 300 gte 0; 180 | #X obj 148 48 inlet~; 181 | #X obj 43 48 inlet~; 182 | #X obj 43 143 outlet~; 183 | #N canvas 467 216 450 300 @hv_obj 0; 184 | #X obj 217 60 inlet~; 185 | #X obj 120 60 inlet~; 186 | #X obj 170 183 outlet~; 187 | #X connect 1 0 2 0; 188 | #X restore 43 119 pd @hv_obj __and~f; 189 | #X obj 148 97 sig~ 1; 190 | #N canvas 249 541 148 189 @hv_obj 0; 191 | #X obj 23 69 -~; 192 | #X obj 23 94 clip~ -1e-37 0; 193 | #X obj 23 18 inlet~; 194 | #X obj 67 19 inlet~; 195 | #X obj 23 159 outlet~; 196 | #X obj 23 136 *~ 1e+37; 197 | #X obj 23 44 min~; 198 | #X obj 23 115 +~ 1e-37; 199 | #X connect 0 0 1 0; 200 | #X connect 1 0 7 0; 201 | #X connect 2 0 6 0; 202 | #X connect 3 0 6 1; 203 | #X connect 3 0 0 1; 204 | #X connect 5 0 4 0; 205 | #X connect 6 0 0 0; 206 | #X connect 7 0 5 0; 207 | #X restore 43 71 pd @hv_obj __gte~f; 208 | #X connect 0 0 5 1; 209 | #X connect 1 0 5 0; 210 | #X connect 3 0 2 0; 211 | #X connect 4 0 3 1; 212 | #X connect 5 0 3 0; 213 | #X restore 164 154 pd gte; 214 | #N canvas 0 22 281 183 lte 0; 215 | #X obj 150 34 inlet~; 216 | #X obj 45 34 inlet~; 217 | #X obj 45 129 outlet~; 218 | #N canvas 467 216 450 300 @hv_obj 0; 219 | #X obj 217 60 inlet~; 220 | #X obj 120 60 inlet~; 221 | #X obj 170 183 outlet~; 222 | #X connect 1 0 2 0; 223 | #X restore 45 105 pd @hv_obj __and~f; 224 | #X obj 150 83 sig~ 1; 225 | #N canvas 715 101 191 233 @hv_obj 0; 226 | #X obj 49 83 -~; 227 | #X obj 50 109 clip~ -1e-37 0; 228 | #X obj 49 32 inlet~; 229 | #X obj 93 33 inlet~; 230 | #X obj 50 174 outlet~; 231 | #X obj 50 151 *~ 1e+37; 232 | #X obj 49 58 min~; 233 | #X obj 50 130 +~ 1e-37; 234 | #X connect 0 0 1 0; 235 | #X connect 1 0 7 0; 236 | #X connect 2 0 6 0; 237 | #X connect 2 0 0 1; 238 | #X connect 3 0 6 1; 239 | #X connect 5 0 4 0; 240 | #X connect 6 0 0 0; 241 | #X connect 7 0 5 0; 242 | #X restore 45 57 pd @hv_obj __lte~f; 243 | #X connect 0 0 5 1; 244 | #X connect 1 0 5 0; 245 | #X connect 3 0 2 0; 246 | #X connect 4 0 3 1; 247 | #X connect 5 0 3 0; 248 | #X restore 229 154 pd lte; 249 | #X obj 65 257 +~; 250 | #X obj 264 101 sig~ 0; 251 | #X obj 256 206 *~; 252 | #X obj 338 206 *~; 253 | #X obj 244 290 -~; 254 | #X obj 340 289 *~ -1; 255 | #X connect 0 0 9 0; 256 | #X connect 0 0 13 0; 257 | #X connect 1 0 7 0; 258 | #X connect 1 0 8 0; 259 | #X connect 2 0 11 1; 260 | #X connect 2 0 12 1; 261 | #X connect 7 0 11 0; 262 | #X connect 8 0 12 0; 263 | #X connect 9 0 3 0; 264 | #X connect 10 0 7 1; 265 | #X connect 10 0 8 1; 266 | #X connect 11 0 9 1; 267 | #X connect 11 0 13 1; 268 | #X connect 12 0 4 0; 269 | #X connect 12 0 14 0; 270 | #X connect 13 0 5 0; 271 | #X connect 14 0 6 0; 272 | #X restore 85 309 pd location; 273 | #X obj 161 144 *~ 0.5; 274 | #X obj 248 141 *~; 275 | #X obj 248 174 +~; 276 | #X obj 298 136 *~ 4; 277 | #X obj 248 196 abs~; 278 | #X obj 248 240 *~ 0.5; 279 | #X obj 248 218 sqrt~; 280 | #X connect 0 0 1 0; 281 | #X connect 0 1 1 1; 282 | #X connect 1 0 2 0; 283 | #X connect 3 0 0 0; 284 | #X connect 4 0 0 1; 285 | #X connect 5 0 8 0; 286 | #X connect 5 0 9 0; 287 | #X connect 5 0 9 1; 288 | #X connect 6 0 11 0; 289 | #X connect 7 0 0 2; 290 | #X connect 7 1 0 3; 291 | #X connect 7 2 1 2; 292 | #X connect 7 3 1 3; 293 | #X connect 8 0 7 0; 294 | #X connect 9 0 10 0; 295 | #X connect 10 0 7 1; 296 | #X connect 10 0 12 0; 297 | #X connect 11 0 10 1; 298 | #X connect 12 0 14 0; 299 | #X connect 13 0 7 2; 300 | #X connect 14 0 13 0; 301 | #X restore 51 275 pd poles; 302 | #X obj 51 330 outlet~; 303 | #X obj 347 97 *~ -1; 304 | #X obj 417 97 *~ -1; 305 | #X connect 0 0 6 1; 306 | #X connect 0 0 7 1; 307 | #X connect 1 0 6 2; 308 | #X connect 2 0 6 3; 309 | #X connect 3 0 10 0; 310 | #X connect 4 0 11 0; 311 | #X connect 5 0 7 0; 312 | #X connect 6 0 8 0; 313 | #X connect 6 1 8 1; 314 | #X connect 7 0 6 0; 315 | #X connect 8 0 9 0; 316 | #X connect 10 0 8 2; 317 | #X connect 11 0 8 3; 318 | #X restore 35 153 pd @hv_obj biquad; 319 | #X obj 94 43 inlet freq; 320 | #X obj 217 44 inlet q; 321 | #N canvas 0 22 173 173 s 0; 322 | #X obj 37 46 inlet; 323 | #X obj 37 90 line~; 324 | #X obj 37 112 outlet~; 325 | #X msg 37 68 \$1 10; 326 | #X connect 0 0 3 0; 327 | #X connect 1 0 2 0; 328 | #X connect 3 0 1 0; 329 | #X restore 94 110 pd s; 330 | #N canvas 0 22 173 173 s 0; 331 | #X obj 37 46 inlet; 332 | #X obj 37 90 line~; 333 | #X obj 37 112 outlet~; 334 | #X msg 37 68 \$1 10; 335 | #X connect 0 0 3 0; 336 | #X connect 1 0 2 0; 337 | #X connect 3 0 1 0; 338 | #X restore 124 110 pd s; 339 | #N canvas 0 22 173 173 s 0; 340 | #X obj 37 46 inlet; 341 | #X obj 37 90 line~; 342 | #X obj 37 112 outlet~; 343 | #X msg 37 68 \$1 10; 344 | #X connect 0 0 3 0; 345 | #X connect 1 0 2 0; 346 | #X connect 3 0 1 0; 347 | #X restore 155 110 pd s; 348 | #N canvas 0 22 173 173 s 0; 349 | #X obj 37 46 inlet; 350 | #X obj 37 90 line~; 351 | #X obj 37 112 outlet~; 352 | #X msg 37 68 \$1 10; 353 | #X connect 0 0 3 0; 354 | #X connect 1 0 2 0; 355 | #X connect 3 0 1 0; 356 | #X restore 186 110 pd s; 357 | #N canvas 0 22 173 173 s 0; 358 | #X obj 37 46 inlet; 359 | #X obj 37 90 line~; 360 | #X obj 37 112 outlet~; 361 | #X msg 37 68 \$1 10; 362 | #X connect 0 0 3 0; 363 | #X connect 1 0 2 0; 364 | #X connect 3 0 1 0; 365 | #X restore 217 110 pd s; 366 | #X obj 94 73 allpass.coeffs \$1 \$2; 367 | #X connect 1 0 2 0; 368 | #X connect 2 0 0 0; 369 | #X connect 3 0 10 0; 370 | #X connect 4 0 10 1; 371 | #X connect 5 0 2 1; 372 | #X connect 6 0 2 2; 373 | #X connect 7 0 2 3; 374 | #X connect 8 0 2 4; 375 | #X connect 9 0 2 5; 376 | #X connect 10 0 5 0; 377 | #X connect 10 1 6 0; 378 | #X connect 10 2 7 0; 379 | #X connect 10 3 8 0; 380 | #X connect 10 4 9 0; 381 | -------------------------------------------------------------------------------- /hv.filters/bandpass1.coeffs.pd: -------------------------------------------------------------------------------- 1 | #N canvas 356 22 613 703 10; 2 | #N canvas 0 22 783 567 hz2rad 0; 3 | #X obj 194 113 samplerate~; 4 | #X obj 194 71 loadbang; 5 | #X obj 194 185 atan; 6 | #X msg 194 160 1; 7 | #X text 382 53 w = 2 * pi * f / SR; 8 | #X obj 194 207 * 8; 9 | #X obj 194 137 t b a; 10 | #X obj 194 230 / 44100; 11 | #X text 260 232 2 * pi / SR; 12 | #X obj 119 269 *; 13 | #X obj 119 35 inlet; 14 | #X obj 119 298 outlet; 15 | #X text 175 300 w(rad); 16 | #X text 167 35 freq(Hz); 17 | #X connect 0 0 6 0; 18 | #X connect 1 0 0 0; 19 | #X connect 2 0 5 0; 20 | #X connect 3 0 2 0; 21 | #X connect 5 0 7 0; 22 | #X connect 6 0 3 0; 23 | #X connect 6 1 7 1; 24 | #X connect 7 0 9 1; 25 | #X connect 9 0 11 0; 26 | #X connect 10 0 9 0; 27 | #X restore 41 346 pd hz2rad; 28 | #X obj 41 376 t f f; 29 | #X obj 109 406 sin; 30 | #X obj 41 406 cos; 31 | #X obj 109 446 s \$0-wsin; 32 | #X obj 41 446 s \$0-wcos; 33 | #X obj 41 286 clip 20 20000; 34 | #X obj 203 286 clip 0.1 100; 35 | #X obj 138 316 r \$0-wsin; 36 | #X obj 188 446 s \$0-alpha; 37 | #X msg 203 316 1 \$1; 38 | #X obj 203 346 /; 39 | #X obj 188 376 *; 40 | #X obj 188 406 * 0.5; 41 | #N canvas 346 735 450 300 b0 0; 42 | #X obj 124 65 r \$0-wsin; 43 | #X obj 124 99 * 0.5; 44 | #X obj 124 131 outlet; 45 | #X connect 0 0 1 0; 46 | #X connect 1 0 2 0; 47 | #X restore 118 606 pd b0; 48 | #N canvas 864 719 450 300 b2 0; 49 | #X obj 124 119 outlet; 50 | #X obj 124 65 r \$0-wsin; 51 | #X obj 124 87 * -0.5; 52 | #X connect 1 0 2 0; 53 | #X connect 2 0 0 0; 54 | #X restore 202 606 pd b2; 55 | #N canvas 0 22 450 300 a0 0; 56 | #X obj 194 65 r \$0-alpha; 57 | #X obj 194 200 outlet; 58 | #X obj 194 139 + 1; 59 | #X connect 0 0 2 0; 60 | #X connect 2 0 1 0; 61 | #X restore 37 486 pd a0; 62 | #N canvas 616 345 450 300 a1 0; 63 | #X obj 194 109 outlet; 64 | #X obj 194 65 r \$0-wcos; 65 | #X obj 194 87 * -2; 66 | #X connect 1 0 2 0; 67 | #X connect 2 0 0 0; 68 | #X restore 244 606 pd a1; 69 | #N canvas 0 22 450 300 a2 0; 70 | #X obj 196 65 r \$0-alpha; 71 | #X obj 196 187 outlet; 72 | #X msg 196 129 1 \$1; 73 | #X obj 196 151 -; 74 | #X connect 0 0 2 0; 75 | #X connect 2 0 3 0; 76 | #X connect 3 0 1 0; 77 | #X restore 286 606 pd a2; 78 | #X text 308 83 (b0/a0) + (b1/a0)*z^(-1) + (b2/a0)*z^(-2); 79 | #X obj 22 516 f; 80 | #X msg 22 546 1 \$1; 81 | #X obj 22 576 /; 82 | #X obj 22 666 *; 83 | #X obj 146 666 *; 84 | #X obj 208 667 *; 85 | #X obj 271 667 *; 86 | #X text 270 424 w0 = 2*pi*f0*Fs; 87 | #X text 270 444 alpha = sin(w0)/(2*Q); 88 | #X obj 197 81 t b f; 89 | #X obj 22 61 inlet freq; 90 | #X obj 197 61 inlet q; 91 | #X obj 103 61 loadbang; 92 | #X text 379 610 a0 = 1 + alpha; 93 | #X text 311 120 1 + (a1/a0)*z^(-1) + (a2/a0)*z^(-2); 94 | #X text 267 59 Audio-Cookbook:; 95 | #X text 267 149 http://musicdsp.org/files/Audio-EQ-Cookbook.txt; 96 | #X text 269 101 H(z) = -----------------------------------------; 97 | #X obj 22 191 t b a b; 98 | #X obj 84 708 outlet b1; 99 | #X obj 146 708 outlet b2; 100 | #X obj 208 708 outlet a1; 101 | #X obj 271 708 outlet a2; 102 | #X text 19 10 Bandpass filter with Q - biquad filter coefficient generator 103 | ; 104 | #X text 379 690 b1 = 0; 105 | #X obj 22 606 t f f f f; 106 | #X obj 22 708 outlet b0; 107 | #X obj 22 152 f \$1; 108 | #X obj 203 249 f \$2; 109 | #X text 19 32 constant skirt gain \, peak gain = Q; 110 | #X text 341 288 BPF: H(s) = s / (s^2 + s/Q + 1) (constant skirt gain 111 | \, peak gain = Q) b0 = sin(w0)/2 = Q*alpha b1 = 0 b2 = -sin(w0)/2 = 112 | -Q*alpha a0 = 1 + alpha a1 = -2*cos(w0) a2 = 1 - alpha; 113 | #X text 379 650 a2 = 1 - alpha; 114 | #X text 379 630 a1 = -2*cos(w0); 115 | #X text 379 670 b0 = sin(w0)/2 = Q*alpha; 116 | #X text 379 710 b2 = -sin(w0)/2 = -Q*alpha; 117 | #X text 368 590 BPF: (constant skirt gain); 118 | #X connect 0 0 1 0; 119 | #X connect 1 0 3 0; 120 | #X connect 1 1 2 0; 121 | #X connect 2 0 4 0; 122 | #X connect 3 0 5 0; 123 | #X connect 6 0 0 0; 124 | #X connect 7 0 10 0; 125 | #X connect 8 0 12 0; 126 | #X connect 10 0 11 0; 127 | #X connect 11 0 12 1; 128 | #X connect 12 0 13 0; 129 | #X connect 13 0 9 0; 130 | #X connect 14 0 23 1; 131 | #X connect 15 0 24 1; 132 | #X connect 16 0 20 1; 133 | #X connect 17 0 25 1; 134 | #X connect 18 0 26 1; 135 | #X connect 20 0 21 0; 136 | #X connect 21 0 22 0; 137 | #X connect 22 0 45 0; 138 | #X connect 23 0 46 0; 139 | #X connect 24 0 40 0; 140 | #X connect 25 0 41 0; 141 | #X connect 26 0 42 0; 142 | #X connect 29 0 47 0; 143 | #X connect 29 1 48 1; 144 | #X connect 30 0 47 0; 145 | #X connect 31 0 29 0; 146 | #X connect 32 0 47 0; 147 | #X connect 38 0 20 0; 148 | #X connect 38 1 6 0; 149 | #X connect 38 2 48 0; 150 | #X connect 45 0 23 0; 151 | #X connect 45 1 24 0; 152 | #X connect 45 2 25 0; 153 | #X connect 45 3 26 0; 154 | #X connect 47 0 38 0; 155 | #X connect 48 0 7 0; 156 | -------------------------------------------------------------------------------- /hv.filters/bandpass1.pd: -------------------------------------------------------------------------------- 1 | #N canvas 682 243 312 271 10; 2 | #X obj 35 216 outlet~; 3 | #X obj 35 44 inlet~; 4 | #N canvas 140 389 549 400 @hv_obj 0; 5 | #X obj 133 65 inlet~ b0; 6 | #X obj 204 65 inlet~ b1; 7 | #X obj 276 65 inlet~ b2; 8 | #X obj 347 65 inlet~ a1; 9 | #X obj 417 65 inlet~ a2; 10 | #X obj 51 65 inlet~; 11 | #N canvas 457 278 463 637 zeros 0; 12 | #X obj 114 473 czero~; 13 | #X obj 114 523 czero~; 14 | #X obj 114 583 outlet~; 15 | #X obj 147 553 outlet~; 16 | #X obj 206 74 inlet~ b0; 17 | #X obj 277 74 inlet~ b1; 18 | #X obj 349 74 inlet~ b2; 19 | #X obj 114 74 inlet~; 20 | #X obj 206 242 *~ -1; 21 | #X obj 206 264 *~ 0.5; 22 | #X obj 299 227 *~; 23 | #X obj 302 293 -~; 24 | #X obj 326 248 *~ 4; 25 | #X obj 326 226 *~; 26 | #X obj 351 319 abs~; 27 | #X obj 351 363 *~ 0.5; 28 | #X obj 349 401 /~; 29 | #N canvas 490 269 488 402 location 0; 30 | #X obj 63 64 inlet~; 31 | #X obj 165 71 inlet~; 32 | #X obj 334 70 inlet~; 33 | #X obj 63 314 outlet~; 34 | #X obj 132 316 outlet~; 35 | #X obj 244 317 outlet~; 36 | #X obj 336 319 outlet~; 37 | #N canvas 0 22 450 300 gte 0; 38 | #X obj 148 48 inlet~; 39 | #X obj 43 48 inlet~; 40 | #X obj 43 143 outlet~; 41 | #N canvas 467 216 450 300 @hv_obj 0; 42 | #X obj 217 60 inlet~; 43 | #X obj 120 60 inlet~; 44 | #X obj 170 183 outlet~; 45 | #X connect 1 0 2 0; 46 | #X restore 43 119 pd @hv_obj __and~f; 47 | #X obj 148 97 sig~ 1; 48 | #N canvas 249 541 148 189 @hv_obj 0; 49 | #X obj 23 69 -~; 50 | #X obj 23 94 clip~ -1e-37 0; 51 | #X obj 23 18 inlet~; 52 | #X obj 67 19 inlet~; 53 | #X obj 23 159 outlet~; 54 | #X obj 23 136 *~ 1e+37; 55 | #X obj 23 44 min~; 56 | #X obj 23 115 +~ 1e-37; 57 | #X connect 0 0 1 0; 58 | #X connect 1 0 7 0; 59 | #X connect 2 0 6 0; 60 | #X connect 3 0 6 1; 61 | #X connect 3 0 0 1; 62 | #X connect 5 0 4 0; 63 | #X connect 6 0 0 0; 64 | #X connect 7 0 5 0; 65 | #X restore 43 71 pd @hv_obj __gte~f; 66 | #X connect 0 0 5 1; 67 | #X connect 1 0 5 0; 68 | #X connect 3 0 2 0; 69 | #X connect 4 0 3 1; 70 | #X connect 5 0 3 0; 71 | #X restore 164 154 pd gte; 72 | #N canvas 0 22 281 183 lte 0; 73 | #X obj 150 34 inlet~; 74 | #X obj 45 34 inlet~; 75 | #X obj 45 129 outlet~; 76 | #N canvas 467 216 450 300 @hv_obj 0; 77 | #X obj 217 60 inlet~; 78 | #X obj 120 60 inlet~; 79 | #X obj 170 183 outlet~; 80 | #X connect 1 0 2 0; 81 | #X restore 45 105 pd @hv_obj __and~f; 82 | #X obj 150 83 sig~ 1; 83 | #N canvas 715 101 191 233 @hv_obj 0; 84 | #X obj 49 83 -~; 85 | #X obj 50 109 clip~ -1e-37 0; 86 | #X obj 49 32 inlet~; 87 | #X obj 93 33 inlet~; 88 | #X obj 50 174 outlet~; 89 | #X obj 50 151 *~ 1e+37; 90 | #X obj 49 58 min~; 91 | #X obj 50 130 +~ 1e-37; 92 | #X connect 0 0 1 0; 93 | #X connect 1 0 7 0; 94 | #X connect 2 0 6 0; 95 | #X connect 2 0 0 1; 96 | #X connect 3 0 6 1; 97 | #X connect 5 0 4 0; 98 | #X connect 6 0 0 0; 99 | #X connect 7 0 5 0; 100 | #X restore 45 57 pd @hv_obj __lte~f; 101 | #X connect 0 0 5 1; 102 | #X connect 1 0 5 0; 103 | #X connect 3 0 2 0; 104 | #X connect 4 0 3 1; 105 | #X connect 5 0 3 0; 106 | #X restore 229 154 pd lte; 107 | #X obj 65 257 +~; 108 | #X obj 264 101 sig~ 0; 109 | #X obj 256 206 *~; 110 | #X obj 338 206 *~; 111 | #X obj 244 290 -~; 112 | #X obj 340 289 *~ -1; 113 | #X connect 0 0 9 0; 114 | #X connect 0 0 13 0; 115 | #X connect 1 0 7 0; 116 | #X connect 1 0 8 0; 117 | #X connect 2 0 11 1; 118 | #X connect 2 0 12 1; 119 | #X connect 7 0 11 0; 120 | #X connect 8 0 12 0; 121 | #X connect 9 0 3 0; 122 | #X connect 10 0 7 1; 123 | #X connect 10 0 8 1; 124 | #X connect 11 0 9 1; 125 | #X connect 11 0 13 1; 126 | #X connect 12 0 4 0; 127 | #X connect 12 0 14 0; 128 | #X connect 13 0 5 0; 129 | #X connect 14 0 6 0; 130 | #X restore 136 443 pd location; 131 | #X obj 351 341 sqrt~; 132 | #X obj 206 301 /~; 133 | #X connect 0 0 1 0; 134 | #X connect 0 1 1 1; 135 | #X connect 1 0 2 0; 136 | #X connect 1 1 3 0; 137 | #X connect 4 0 13 0; 138 | #X connect 4 0 16 1; 139 | #X connect 4 0 19 1; 140 | #X connect 5 0 8 0; 141 | #X connect 5 0 10 1; 142 | #X connect 5 0 10 0; 143 | #X connect 6 0 13 1; 144 | #X connect 7 0 0 0; 145 | #X connect 8 0 9 0; 146 | #X connect 9 0 19 0; 147 | #X connect 10 0 11 0; 148 | #X connect 11 0 14 0; 149 | #X connect 11 0 17 1; 150 | #X connect 12 0 11 1; 151 | #X connect 13 0 12 0; 152 | #X connect 14 0 18 0; 153 | #X connect 15 0 16 0; 154 | #X connect 16 0 17 2; 155 | #X connect 17 0 0 2; 156 | #X connect 17 1 0 3; 157 | #X connect 17 2 1 2; 158 | #X connect 17 3 1 3; 159 | #X connect 18 0 15 0; 160 | #X connect 19 0 17 0; 161 | #X restore 51 215 pd zeros; 162 | #X obj 51 155 *~; 163 | #N canvas 354 142 470 501 poles 0; 164 | #X obj 63 335 cpole~; 165 | #X obj 63 376 cpole~; 166 | #X obj 63 433 outlet~; 167 | #X obj 63 44 inlet~; 168 | #X obj 113 44 inlet~; 169 | #X obj 176 44 inlet~ a1; 170 | #X obj 324 39 inlet~ a2; 171 | #N canvas 490 269 488 402 location 0; 172 | #X obj 63 64 inlet~; 173 | #X obj 165 71 inlet~; 174 | #X obj 334 70 inlet~; 175 | #X obj 63 314 outlet~; 176 | #X obj 132 316 outlet~; 177 | #X obj 244 317 outlet~; 178 | #X obj 336 319 outlet~; 179 | #N canvas 0 22 450 300 gte 0; 180 | #X obj 148 48 inlet~; 181 | #X obj 43 48 inlet~; 182 | #X obj 43 143 outlet~; 183 | #N canvas 467 216 450 300 @hv_obj 0; 184 | #X obj 217 60 inlet~; 185 | #X obj 120 60 inlet~; 186 | #X obj 170 183 outlet~; 187 | #X connect 1 0 2 0; 188 | #X restore 43 119 pd @hv_obj __and~f; 189 | #X obj 148 97 sig~ 1; 190 | #N canvas 249 541 148 189 @hv_obj 0; 191 | #X obj 23 69 -~; 192 | #X obj 23 94 clip~ -1e-37 0; 193 | #X obj 23 18 inlet~; 194 | #X obj 67 19 inlet~; 195 | #X obj 23 159 outlet~; 196 | #X obj 23 136 *~ 1e+37; 197 | #X obj 23 44 min~; 198 | #X obj 23 115 +~ 1e-37; 199 | #X connect 0 0 1 0; 200 | #X connect 1 0 7 0; 201 | #X connect 2 0 6 0; 202 | #X connect 3 0 6 1; 203 | #X connect 3 0 0 1; 204 | #X connect 5 0 4 0; 205 | #X connect 6 0 0 0; 206 | #X connect 7 0 5 0; 207 | #X restore 43 71 pd @hv_obj __gte~f; 208 | #X connect 0 0 5 1; 209 | #X connect 1 0 5 0; 210 | #X connect 3 0 2 0; 211 | #X connect 4 0 3 1; 212 | #X connect 5 0 3 0; 213 | #X restore 164 154 pd gte; 214 | #N canvas 0 22 281 183 lte 0; 215 | #X obj 150 34 inlet~; 216 | #X obj 45 34 inlet~; 217 | #X obj 45 129 outlet~; 218 | #N canvas 467 216 450 300 @hv_obj 0; 219 | #X obj 217 60 inlet~; 220 | #X obj 120 60 inlet~; 221 | #X obj 170 183 outlet~; 222 | #X connect 1 0 2 0; 223 | #X restore 45 105 pd @hv_obj __and~f; 224 | #X obj 150 83 sig~ 1; 225 | #N canvas 715 101 191 233 @hv_obj 0; 226 | #X obj 49 83 -~; 227 | #X obj 50 109 clip~ -1e-37 0; 228 | #X obj 49 32 inlet~; 229 | #X obj 93 33 inlet~; 230 | #X obj 50 174 outlet~; 231 | #X obj 50 151 *~ 1e+37; 232 | #X obj 49 58 min~; 233 | #X obj 50 130 +~ 1e-37; 234 | #X connect 0 0 1 0; 235 | #X connect 1 0 7 0; 236 | #X connect 2 0 6 0; 237 | #X connect 2 0 0 1; 238 | #X connect 3 0 6 1; 239 | #X connect 5 0 4 0; 240 | #X connect 6 0 0 0; 241 | #X connect 7 0 5 0; 242 | #X restore 45 57 pd @hv_obj __lte~f; 243 | #X connect 0 0 5 1; 244 | #X connect 1 0 5 0; 245 | #X connect 3 0 2 0; 246 | #X connect 4 0 3 1; 247 | #X connect 5 0 3 0; 248 | #X restore 229 154 pd lte; 249 | #X obj 65 257 +~; 250 | #X obj 264 101 sig~ 0; 251 | #X obj 256 206 *~; 252 | #X obj 338 206 *~; 253 | #X obj 244 290 -~; 254 | #X obj 340 289 *~ -1; 255 | #X connect 0 0 9 0; 256 | #X connect 0 0 13 0; 257 | #X connect 1 0 7 0; 258 | #X connect 1 0 8 0; 259 | #X connect 2 0 11 1; 260 | #X connect 2 0 12 1; 261 | #X connect 7 0 11 0; 262 | #X connect 8 0 12 0; 263 | #X connect 9 0 3 0; 264 | #X connect 10 0 7 1; 265 | #X connect 10 0 8 1; 266 | #X connect 11 0 9 1; 267 | #X connect 11 0 13 1; 268 | #X connect 12 0 4 0; 269 | #X connect 12 0 14 0; 270 | #X connect 13 0 5 0; 271 | #X connect 14 0 6 0; 272 | #X restore 85 309 pd location; 273 | #X obj 161 144 *~ 0.5; 274 | #X obj 248 141 *~; 275 | #X obj 248 174 +~; 276 | #X obj 298 136 *~ 4; 277 | #X obj 248 196 abs~; 278 | #X obj 248 240 *~ 0.5; 279 | #X obj 248 218 sqrt~; 280 | #X connect 0 0 1 0; 281 | #X connect 0 1 1 1; 282 | #X connect 1 0 2 0; 283 | #X connect 3 0 0 0; 284 | #X connect 4 0 0 1; 285 | #X connect 5 0 8 0; 286 | #X connect 5 0 9 0; 287 | #X connect 5 0 9 1; 288 | #X connect 6 0 11 0; 289 | #X connect 7 0 0 2; 290 | #X connect 7 1 0 3; 291 | #X connect 7 2 1 2; 292 | #X connect 7 3 1 3; 293 | #X connect 8 0 7 0; 294 | #X connect 9 0 10 0; 295 | #X connect 10 0 7 1; 296 | #X connect 10 0 12 0; 297 | #X connect 11 0 10 1; 298 | #X connect 12 0 14 0; 299 | #X connect 13 0 7 2; 300 | #X connect 14 0 13 0; 301 | #X restore 51 275 pd poles; 302 | #X obj 51 330 outlet~; 303 | #X obj 347 97 *~ -1; 304 | #X obj 417 97 *~ -1; 305 | #X connect 0 0 6 1; 306 | #X connect 0 0 7 1; 307 | #X connect 1 0 6 2; 308 | #X connect 2 0 6 3; 309 | #X connect 3 0 10 0; 310 | #X connect 4 0 11 0; 311 | #X connect 5 0 7 0; 312 | #X connect 6 0 8 0; 313 | #X connect 6 1 8 1; 314 | #X connect 7 0 6 0; 315 | #X connect 8 0 9 0; 316 | #X connect 10 0 8 2; 317 | #X connect 11 0 8 3; 318 | #X restore 35 183 pd @hv_obj biquad; 319 | #X obj 94 43 inlet freq; 320 | #X obj 223 44 inlet q; 321 | #N canvas 0 22 173 173 s 0; 322 | #X obj 37 46 inlet; 323 | #X obj 37 90 line~; 324 | #X obj 37 112 outlet~; 325 | #X msg 37 68 \$1 10; 326 | #X connect 0 0 3 0; 327 | #X connect 1 0 2 0; 328 | #X connect 3 0 1 0; 329 | #X restore 94 110 pd s; 330 | #N canvas 0 22 173 173 s 0; 331 | #X obj 37 46 inlet; 332 | #X obj 37 90 line~; 333 | #X obj 37 112 outlet~; 334 | #X msg 37 68 \$1 10; 335 | #X connect 0 0 3 0; 336 | #X connect 1 0 2 0; 337 | #X connect 3 0 1 0; 338 | #X restore 170 110 pd s; 339 | #N canvas 0 22 173 173 s 0; 340 | #X obj 37 46 inlet; 341 | #X obj 37 90 line~; 342 | #X obj 37 112 outlet~; 343 | #X msg 37 68 \$1 10; 344 | #X connect 0 0 3 0; 345 | #X connect 1 0 2 0; 346 | #X connect 3 0 1 0; 347 | #X restore 202 110 pd s; 348 | #N canvas 0 22 173 173 s 0; 349 | #X obj 37 46 inlet; 350 | #X obj 37 90 line~; 351 | #X obj 37 112 outlet~; 352 | #X msg 37 68 \$1 10; 353 | #X connect 0 0 3 0; 354 | #X connect 1 0 2 0; 355 | #X connect 3 0 1 0; 356 | #X restore 234 110 pd s; 357 | #X obj 94 83 bandpass1.coeffs \$1 \$2; 358 | #X obj 126 110 sig~ 0; 359 | #X connect 1 0 2 0; 360 | #X connect 2 0 0 0; 361 | #X connect 3 0 9 0; 362 | #X connect 4 0 9 1; 363 | #X connect 5 0 2 1; 364 | #X connect 6 0 2 3; 365 | #X connect 7 0 2 4; 366 | #X connect 8 0 2 5; 367 | #X connect 9 0 5 0; 368 | #X connect 9 2 6 0; 369 | #X connect 9 3 7 0; 370 | #X connect 9 4 8 0; 371 | #X connect 10 0 2 2; 372 | -------------------------------------------------------------------------------- /hv.filters/bandpass2.coeffs.pd: -------------------------------------------------------------------------------- 1 | #N canvas 1909 289 613 760 10; 2 | #N canvas 0 22 783 567 hz2rad 0; 3 | #X obj 194 113 samplerate~; 4 | #X obj 194 71 loadbang; 5 | #X obj 194 185 atan; 6 | #X msg 194 160 1; 7 | #X text 382 53 w = 2 * pi * f / SR; 8 | #X obj 194 207 * 8; 9 | #X obj 194 137 t b a; 10 | #X obj 194 230 / 44100; 11 | #X text 260 232 2 * pi / SR; 12 | #X obj 119 269 *; 13 | #X obj 119 35 inlet; 14 | #X obj 119 298 outlet; 15 | #X text 175 300 w(rad); 16 | #X text 167 35 freq(Hz); 17 | #X connect 0 0 6 0; 18 | #X connect 1 0 0 0; 19 | #X connect 2 0 5 0; 20 | #X connect 3 0 2 0; 21 | #X connect 5 0 7 0; 22 | #X connect 6 0 3 0; 23 | #X connect 6 1 7 1; 24 | #X connect 7 0 9 1; 25 | #X connect 9 0 11 0; 26 | #X connect 10 0 9 0; 27 | #X restore 41 346 pd hz2rad; 28 | #X obj 41 376 t f f; 29 | #X obj 109 406 sin; 30 | #X obj 41 406 cos; 31 | #X obj 109 446 s \$0-wsin; 32 | #X obj 41 446 s \$0-wcos; 33 | #X obj 41 286 clip 20 20000; 34 | #X obj 203 286 clip 0.1 100; 35 | #X obj 138 316 r \$0-wsin; 36 | #X obj 188 446 s \$0-alpha; 37 | #X msg 203 316 1 \$1; 38 | #X obj 203 346 /; 39 | #X obj 188 376 *; 40 | #X obj 188 406 * 0.5; 41 | #N canvas 12 285 450 300 b0 0; 42 | #X obj 124 65 r \$0-alpha; 43 | #X obj 124 109 outlet; 44 | #X connect 0 0 1 0; 45 | #X restore 118 606 pd b0; 46 | #N canvas 155 200 450 300 b2 0; 47 | #X obj 124 65 r \$0-alpha; 48 | #X obj 124 109 outlet; 49 | #X obj 124 87 * -1; 50 | #X connect 0 0 2 0; 51 | #X connect 2 0 1 0; 52 | #X restore 202 606 pd b2; 53 | #N canvas 0 22 450 300 a0 0; 54 | #X obj 194 65 r \$0-alpha; 55 | #X obj 194 200 outlet; 56 | #X obj 194 139 + 1; 57 | #X connect 0 0 2 0; 58 | #X connect 2 0 1 0; 59 | #X restore 37 486 pd a0; 60 | #N canvas 0 22 450 300 a1 0; 61 | #X obj 194 109 outlet; 62 | #X obj 194 65 r \$0-wcos; 63 | #X obj 194 87 * -2; 64 | #X connect 1 0 2 0; 65 | #X connect 2 0 0 0; 66 | #X restore 244 606 pd a1; 67 | #N canvas 0 22 450 300 a2 0; 68 | #X obj 196 65 r \$0-alpha; 69 | #X obj 196 187 outlet; 70 | #X msg 196 129 1 \$1; 71 | #X obj 196 151 -; 72 | #X connect 0 0 2 0; 73 | #X connect 2 0 3 0; 74 | #X connect 3 0 1 0; 75 | #X restore 286 606 pd a2; 76 | #X text 308 83 (b0/a0) + (b1/a0)*z^(-1) + (b2/a0)*z^(-2); 77 | #X obj 22 516 f; 78 | #X msg 22 546 1 \$1; 79 | #X obj 22 576 /; 80 | #X obj 22 666 *; 81 | #X obj 146 666 *; 82 | #X obj 208 667 *; 83 | #X obj 271 667 *; 84 | #X text 270 424 w0 = 2*pi*f0*Fs; 85 | #X text 270 444 alpha = sin(w0)/(2*Q); 86 | #X obj 197 81 t b f; 87 | #X obj 22 61 inlet freq; 88 | #X obj 197 61 inlet q; 89 | #X obj 103 61 loadbang; 90 | #X text 379 610 a0 = 1 + alpha; 91 | #X text 379 650 a2 = 1 - alpha; 92 | #X text 379 630 a1 = -2*cos(w0); 93 | #X text 311 120 1 + (a1/a0)*z^(-1) + (a2/a0)*z^(-2); 94 | #X text 267 59 Audio-Cookbook:; 95 | #X text 267 149 http://musicdsp.org/files/Audio-EQ-Cookbook.txt; 96 | #X text 269 101 H(z) = -----------------------------------------; 97 | #X obj 22 191 t b a b; 98 | #X obj 84 708 outlet b1; 99 | #X obj 146 708 outlet b2; 100 | #X obj 208 708 outlet a1; 101 | #X obj 271 708 outlet a2; 102 | #X text 19 10 Bandpass filter with Q - biquad filter coefficient generator 103 | ; 104 | #X text 379 690 b1 = 0; 105 | #X obj 22 606 t f f f f; 106 | #X text 379 670 b0 = alpha; 107 | #X text 368 590 BPF: (constant 0dB peak gain); 108 | #X text 379 710 b2 = -alpha; 109 | #X obj 22 708 outlet b0; 110 | #X text 19 30 constant 0 dB peak gain; 111 | #X obj 22 152 f \$1; 112 | #X obj 203 249 f \$2; 113 | #X connect 0 0 1 0; 114 | #X connect 1 0 3 0; 115 | #X connect 1 1 2 0; 116 | #X connect 2 0 4 0; 117 | #X connect 3 0 5 0; 118 | #X connect 6 0 0 0; 119 | #X connect 7 0 10 0; 120 | #X connect 8 0 12 0; 121 | #X connect 10 0 11 0; 122 | #X connect 11 0 12 1; 123 | #X connect 12 0 13 0; 124 | #X connect 13 0 9 0; 125 | #X connect 14 0 23 1; 126 | #X connect 15 0 24 1; 127 | #X connect 16 0 20 1; 128 | #X connect 17 0 25 1; 129 | #X connect 18 0 26 1; 130 | #X connect 20 0 21 0; 131 | #X connect 21 0 22 0; 132 | #X connect 22 0 47 0; 133 | #X connect 23 0 51 0; 134 | #X connect 24 0 42 0; 135 | #X connect 25 0 43 0; 136 | #X connect 26 0 44 0; 137 | #X connect 29 0 53 0; 138 | #X connect 29 1 54 1; 139 | #X connect 30 0 53 0; 140 | #X connect 31 0 29 0; 141 | #X connect 32 0 53 0; 142 | #X connect 40 0 20 0; 143 | #X connect 40 1 6 0; 144 | #X connect 40 2 54 0; 145 | #X connect 47 0 23 0; 146 | #X connect 47 1 24 0; 147 | #X connect 47 2 25 0; 148 | #X connect 47 3 26 0; 149 | #X connect 53 0 40 0; 150 | #X connect 54 0 7 0; 151 | -------------------------------------------------------------------------------- /hv.filters/bandpass2.pd: -------------------------------------------------------------------------------- 1 | #N canvas 774 305 333 256 10; 2 | #X obj 35 216 outlet~; 3 | #X obj 35 44 inlet~; 4 | #N canvas 140 389 549 400 @hv_obj 0; 5 | #X obj 133 65 inlet~ b0; 6 | #X obj 204 65 inlet~ b1; 7 | #X obj 276 65 inlet~ b2; 8 | #X obj 347 65 inlet~ a1; 9 | #X obj 417 65 inlet~ a2; 10 | #X obj 51 65 inlet~; 11 | #N canvas 457 278 463 637 zeros 0; 12 | #X obj 114 473 czero~; 13 | #X obj 114 523 czero~; 14 | #X obj 114 583 outlet~; 15 | #X obj 147 553 outlet~; 16 | #X obj 206 74 inlet~ b0; 17 | #X obj 277 74 inlet~ b1; 18 | #X obj 349 74 inlet~ b2; 19 | #X obj 114 74 inlet~; 20 | #X obj 206 242 *~ -1; 21 | #X obj 206 264 *~ 0.5; 22 | #X obj 299 227 *~; 23 | #X obj 302 293 -~; 24 | #X obj 326 248 *~ 4; 25 | #X obj 326 226 *~; 26 | #X obj 351 319 abs~; 27 | #X obj 351 363 *~ 0.5; 28 | #X obj 349 401 /~; 29 | #N canvas 490 269 488 402 location 0; 30 | #X obj 63 64 inlet~; 31 | #X obj 165 71 inlet~; 32 | #X obj 334 70 inlet~; 33 | #X obj 63 314 outlet~; 34 | #X obj 132 316 outlet~; 35 | #X obj 244 317 outlet~; 36 | #X obj 336 319 outlet~; 37 | #N canvas 0 22 450 300 gte 0; 38 | #X obj 148 48 inlet~; 39 | #X obj 43 48 inlet~; 40 | #X obj 43 143 outlet~; 41 | #N canvas 467 216 450 300 @hv_obj 0; 42 | #X obj 217 60 inlet~; 43 | #X obj 120 60 inlet~; 44 | #X obj 170 183 outlet~; 45 | #X connect 1 0 2 0; 46 | #X restore 43 119 pd @hv_obj __and~f; 47 | #X obj 148 97 sig~ 1; 48 | #N canvas 249 541 148 189 @hv_obj 0; 49 | #X obj 23 69 -~; 50 | #X obj 23 94 clip~ -1e-37 0; 51 | #X obj 23 18 inlet~; 52 | #X obj 67 19 inlet~; 53 | #X obj 23 159 outlet~; 54 | #X obj 23 136 *~ 1e+37; 55 | #X obj 23 44 min~; 56 | #X obj 23 115 +~ 1e-37; 57 | #X connect 0 0 1 0; 58 | #X connect 1 0 7 0; 59 | #X connect 2 0 6 0; 60 | #X connect 3 0 6 1; 61 | #X connect 3 0 0 1; 62 | #X connect 5 0 4 0; 63 | #X connect 6 0 0 0; 64 | #X connect 7 0 5 0; 65 | #X restore 43 71 pd @hv_obj __gte~f; 66 | #X connect 0 0 5 1; 67 | #X connect 1 0 5 0; 68 | #X connect 3 0 2 0; 69 | #X connect 4 0 3 1; 70 | #X connect 5 0 3 0; 71 | #X restore 164 154 pd gte; 72 | #N canvas 0 22 281 183 lte 0; 73 | #X obj 150 34 inlet~; 74 | #X obj 45 34 inlet~; 75 | #X obj 45 129 outlet~; 76 | #N canvas 467 216 450 300 @hv_obj 0; 77 | #X obj 217 60 inlet~; 78 | #X obj 120 60 inlet~; 79 | #X obj 170 183 outlet~; 80 | #X connect 1 0 2 0; 81 | #X restore 45 105 pd @hv_obj __and~f; 82 | #X obj 150 83 sig~ 1; 83 | #N canvas 715 101 191 233 @hv_obj 0; 84 | #X obj 49 83 -~; 85 | #X obj 50 109 clip~ -1e-37 0; 86 | #X obj 49 32 inlet~; 87 | #X obj 93 33 inlet~; 88 | #X obj 50 174 outlet~; 89 | #X obj 50 151 *~ 1e+37; 90 | #X obj 49 58 min~; 91 | #X obj 50 130 +~ 1e-37; 92 | #X connect 0 0 1 0; 93 | #X connect 1 0 7 0; 94 | #X connect 2 0 6 0; 95 | #X connect 2 0 0 1; 96 | #X connect 3 0 6 1; 97 | #X connect 5 0 4 0; 98 | #X connect 6 0 0 0; 99 | #X connect 7 0 5 0; 100 | #X restore 45 57 pd @hv_obj __lte~f; 101 | #X connect 0 0 5 1; 102 | #X connect 1 0 5 0; 103 | #X connect 3 0 2 0; 104 | #X connect 4 0 3 1; 105 | #X connect 5 0 3 0; 106 | #X restore 229 154 pd lte; 107 | #X obj 65 257 +~; 108 | #X obj 264 101 sig~ 0; 109 | #X obj 256 206 *~; 110 | #X obj 338 206 *~; 111 | #X obj 244 290 -~; 112 | #X obj 340 289 *~ -1; 113 | #X connect 0 0 9 0; 114 | #X connect 0 0 13 0; 115 | #X connect 1 0 7 0; 116 | #X connect 1 0 8 0; 117 | #X connect 2 0 11 1; 118 | #X connect 2 0 12 1; 119 | #X connect 7 0 11 0; 120 | #X connect 8 0 12 0; 121 | #X connect 9 0 3 0; 122 | #X connect 10 0 7 1; 123 | #X connect 10 0 8 1; 124 | #X connect 11 0 9 1; 125 | #X connect 11 0 13 1; 126 | #X connect 12 0 4 0; 127 | #X connect 12 0 14 0; 128 | #X connect 13 0 5 0; 129 | #X connect 14 0 6 0; 130 | #X restore 136 443 pd location; 131 | #X obj 351 341 sqrt~; 132 | #X obj 206 301 /~; 133 | #X connect 0 0 1 0; 134 | #X connect 0 1 1 1; 135 | #X connect 1 0 2 0; 136 | #X connect 1 1 3 0; 137 | #X connect 4 0 13 0; 138 | #X connect 4 0 16 1; 139 | #X connect 4 0 19 1; 140 | #X connect 5 0 8 0; 141 | #X connect 5 0 10 1; 142 | #X connect 5 0 10 0; 143 | #X connect 6 0 13 1; 144 | #X connect 7 0 0 0; 145 | #X connect 8 0 9 0; 146 | #X connect 9 0 19 0; 147 | #X connect 10 0 11 0; 148 | #X connect 11 0 14 0; 149 | #X connect 11 0 17 1; 150 | #X connect 12 0 11 1; 151 | #X connect 13 0 12 0; 152 | #X connect 14 0 18 0; 153 | #X connect 15 0 16 0; 154 | #X connect 16 0 17 2; 155 | #X connect 17 0 0 2; 156 | #X connect 17 1 0 3; 157 | #X connect 17 2 1 2; 158 | #X connect 17 3 1 3; 159 | #X connect 18 0 15 0; 160 | #X connect 19 0 17 0; 161 | #X restore 51 215 pd zeros; 162 | #X obj 51 155 *~; 163 | #N canvas 354 142 470 501 poles 0; 164 | #X obj 63 335 cpole~; 165 | #X obj 63 376 cpole~; 166 | #X obj 63 433 outlet~; 167 | #X obj 63 44 inlet~; 168 | #X obj 113 44 inlet~; 169 | #X obj 176 44 inlet~ a1; 170 | #X obj 324 39 inlet~ a2; 171 | #N canvas 490 269 488 402 location 0; 172 | #X obj 63 64 inlet~; 173 | #X obj 165 71 inlet~; 174 | #X obj 334 70 inlet~; 175 | #X obj 63 314 outlet~; 176 | #X obj 132 316 outlet~; 177 | #X obj 244 317 outlet~; 178 | #X obj 336 319 outlet~; 179 | #N canvas 0 22 450 300 gte 0; 180 | #X obj 148 48 inlet~; 181 | #X obj 43 48 inlet~; 182 | #X obj 43 143 outlet~; 183 | #N canvas 467 216 450 300 @hv_obj 0; 184 | #X obj 217 60 inlet~; 185 | #X obj 120 60 inlet~; 186 | #X obj 170 183 outlet~; 187 | #X connect 1 0 2 0; 188 | #X restore 43 119 pd @hv_obj __and~f; 189 | #X obj 148 97 sig~ 1; 190 | #N canvas 249 541 148 189 @hv_obj 0; 191 | #X obj 23 69 -~; 192 | #X obj 23 94 clip~ -1e-37 0; 193 | #X obj 23 18 inlet~; 194 | #X obj 67 19 inlet~; 195 | #X obj 23 159 outlet~; 196 | #X obj 23 136 *~ 1e+37; 197 | #X obj 23 44 min~; 198 | #X obj 23 115 +~ 1e-37; 199 | #X connect 0 0 1 0; 200 | #X connect 1 0 7 0; 201 | #X connect 2 0 6 0; 202 | #X connect 3 0 6 1; 203 | #X connect 3 0 0 1; 204 | #X connect 5 0 4 0; 205 | #X connect 6 0 0 0; 206 | #X connect 7 0 5 0; 207 | #X restore 43 71 pd @hv_obj __gte~f; 208 | #X connect 0 0 5 1; 209 | #X connect 1 0 5 0; 210 | #X connect 3 0 2 0; 211 | #X connect 4 0 3 1; 212 | #X connect 5 0 3 0; 213 | #X restore 164 154 pd gte; 214 | #N canvas 0 22 281 183 lte 0; 215 | #X obj 150 34 inlet~; 216 | #X obj 45 34 inlet~; 217 | #X obj 45 129 outlet~; 218 | #N canvas 467 216 450 300 @hv_obj 0; 219 | #X obj 217 60 inlet~; 220 | #X obj 120 60 inlet~; 221 | #X obj 170 183 outlet~; 222 | #X connect 1 0 2 0; 223 | #X restore 45 105 pd @hv_obj __and~f; 224 | #X obj 150 83 sig~ 1; 225 | #N canvas 715 101 191 233 @hv_obj 0; 226 | #X obj 49 83 -~; 227 | #X obj 50 109 clip~ -1e-37 0; 228 | #X obj 49 32 inlet~; 229 | #X obj 93 33 inlet~; 230 | #X obj 50 174 outlet~; 231 | #X obj 50 151 *~ 1e+37; 232 | #X obj 49 58 min~; 233 | #X obj 50 130 +~ 1e-37; 234 | #X connect 0 0 1 0; 235 | #X connect 1 0 7 0; 236 | #X connect 2 0 6 0; 237 | #X connect 2 0 0 1; 238 | #X connect 3 0 6 1; 239 | #X connect 5 0 4 0; 240 | #X connect 6 0 0 0; 241 | #X connect 7 0 5 0; 242 | #X restore 45 57 pd @hv_obj __lte~f; 243 | #X connect 0 0 5 1; 244 | #X connect 1 0 5 0; 245 | #X connect 3 0 2 0; 246 | #X connect 4 0 3 1; 247 | #X connect 5 0 3 0; 248 | #X restore 229 154 pd lte; 249 | #X obj 65 257 +~; 250 | #X obj 264 101 sig~ 0; 251 | #X obj 256 206 *~; 252 | #X obj 338 206 *~; 253 | #X obj 244 290 -~; 254 | #X obj 340 289 *~ -1; 255 | #X connect 0 0 9 0; 256 | #X connect 0 0 13 0; 257 | #X connect 1 0 7 0; 258 | #X connect 1 0 8 0; 259 | #X connect 2 0 11 1; 260 | #X connect 2 0 12 1; 261 | #X connect 7 0 11 0; 262 | #X connect 8 0 12 0; 263 | #X connect 9 0 3 0; 264 | #X connect 10 0 7 1; 265 | #X connect 10 0 8 1; 266 | #X connect 11 0 9 1; 267 | #X connect 11 0 13 1; 268 | #X connect 12 0 4 0; 269 | #X connect 12 0 14 0; 270 | #X connect 13 0 5 0; 271 | #X connect 14 0 6 0; 272 | #X restore 85 309 pd location; 273 | #X obj 161 144 *~ 0.5; 274 | #X obj 248 141 *~; 275 | #X obj 248 174 +~; 276 | #X obj 298 136 *~ 4; 277 | #X obj 248 196 abs~; 278 | #X obj 248 240 *~ 0.5; 279 | #X obj 248 218 sqrt~; 280 | #X connect 0 0 1 0; 281 | #X connect 0 1 1 1; 282 | #X connect 1 0 2 0; 283 | #X connect 3 0 0 0; 284 | #X connect 4 0 0 1; 285 | #X connect 5 0 8 0; 286 | #X connect 5 0 9 0; 287 | #X connect 5 0 9 1; 288 | #X connect 6 0 11 0; 289 | #X connect 7 0 0 2; 290 | #X connect 7 1 0 3; 291 | #X connect 7 2 1 2; 292 | #X connect 7 3 1 3; 293 | #X connect 8 0 7 0; 294 | #X connect 9 0 10 0; 295 | #X connect 10 0 7 1; 296 | #X connect 10 0 12 0; 297 | #X connect 11 0 10 1; 298 | #X connect 12 0 14 0; 299 | #X connect 13 0 7 2; 300 | #X connect 14 0 13 0; 301 | #X restore 51 275 pd poles; 302 | #X obj 51 330 outlet~; 303 | #X obj 347 97 *~ -1; 304 | #X obj 417 97 *~ -1; 305 | #X connect 0 0 6 1; 306 | #X connect 0 0 7 1; 307 | #X connect 1 0 6 2; 308 | #X connect 2 0 6 3; 309 | #X connect 3 0 10 0; 310 | #X connect 4 0 11 0; 311 | #X connect 5 0 7 0; 312 | #X connect 6 0 8 0; 313 | #X connect 6 1 8 1; 314 | #X connect 7 0 6 0; 315 | #X connect 8 0 9 0; 316 | #X connect 10 0 8 2; 317 | #X connect 11 0 8 3; 318 | #X restore 35 183 pd @hv_obj biquad; 319 | #X obj 94 43 inlet freq; 320 | #X obj 223 44 inlet q; 321 | #N canvas 0 22 173 173 s 0; 322 | #X obj 37 46 inlet; 323 | #X obj 37 90 line~; 324 | #X obj 37 112 outlet~; 325 | #X msg 37 68 \$1 10; 326 | #X connect 0 0 3 0; 327 | #X connect 1 0 2 0; 328 | #X connect 3 0 1 0; 329 | #X restore 94 110 pd s; 330 | #N canvas 0 22 173 173 s 0; 331 | #X obj 37 46 inlet; 332 | #X obj 37 90 line~; 333 | #X obj 37 112 outlet~; 334 | #X msg 37 68 \$1 10; 335 | #X connect 0 0 3 0; 336 | #X connect 1 0 2 0; 337 | #X connect 3 0 1 0; 338 | #X restore 170 110 pd s; 339 | #N canvas 0 22 173 173 s 0; 340 | #X obj 37 46 inlet; 341 | #X obj 37 90 line~; 342 | #X obj 37 112 outlet~; 343 | #X msg 37 68 \$1 10; 344 | #X connect 0 0 3 0; 345 | #X connect 1 0 2 0; 346 | #X connect 3 0 1 0; 347 | #X restore 202 110 pd s; 348 | #N canvas 0 22 173 173 s 0; 349 | #X obj 37 46 inlet; 350 | #X obj 37 90 line~; 351 | #X obj 37 112 outlet~; 352 | #X msg 37 68 \$1 10; 353 | #X connect 0 0 3 0; 354 | #X connect 1 0 2 0; 355 | #X connect 3 0 1 0; 356 | #X restore 234 110 pd s; 357 | #X obj 126 110 sig~ 0; 358 | #X obj 94 83 bandpass2.coeffs \$1 \$2; 359 | #X connect 1 0 2 0; 360 | #X connect 2 0 0 0; 361 | #X connect 3 0 10 0; 362 | #X connect 4 0 10 1; 363 | #X connect 5 0 2 1; 364 | #X connect 6 0 2 3; 365 | #X connect 7 0 2 4; 366 | #X connect 8 0 2 5; 367 | #X connect 9 0 2 2; 368 | #X connect 10 0 5 0; 369 | #X connect 10 2 6 0; 370 | #X connect 10 3 7 0; 371 | #X connect 10 4 8 0; 372 | -------------------------------------------------------------------------------- /hv.filters/highpass.coeffs.pd: -------------------------------------------------------------------------------- 1 | #N canvas 547 134 611 752 10; 2 | #N canvas 0 22 783 567 hz2rad 0; 3 | #X obj 194 113 samplerate~; 4 | #X obj 194 71 loadbang; 5 | #X obj 194 185 atan; 6 | #X msg 194 160 1; 7 | #X text 382 53 w = 2 * pi * f / SR; 8 | #X obj 194 207 * 8; 9 | #X obj 194 137 t b a; 10 | #X obj 194 230 / 44100; 11 | #X text 260 232 2 * pi / SR; 12 | #X obj 119 269 *; 13 | #X obj 119 35 inlet; 14 | #X obj 119 298 outlet; 15 | #X text 175 300 w(rad); 16 | #X text 167 35 freq(Hz); 17 | #X connect 0 0 6 0; 18 | #X connect 1 0 0 0; 19 | #X connect 2 0 5 0; 20 | #X connect 3 0 2 0; 21 | #X connect 5 0 7 0; 22 | #X connect 6 0 3 0; 23 | #X connect 6 1 7 1; 24 | #X connect 7 0 9 1; 25 | #X connect 9 0 11 0; 26 | #X connect 10 0 9 0; 27 | #X restore 54 339 pd hz2rad; 28 | #X obj 54 369 t f f; 29 | #X obj 122 399 sin; 30 | #X obj 54 399 cos; 31 | #X obj 122 439 s \$0-wsin; 32 | #X obj 54 439 s \$0-wcos; 33 | #X obj 54 279 clip 20 20000; 34 | #X obj 226 279 clip 0.1 100; 35 | #X obj 151 309 r \$0-wsin; 36 | #X obj 211 439 s \$0-alpha; 37 | #X msg 226 309 1 \$1; 38 | #X obj 226 339 /; 39 | #X obj 211 369 *; 40 | #X obj 211 399 * 0.5; 41 | #N canvas 0 22 450 300 a0 0; 42 | #X obj 54 65 r \$0-wcos; 43 | #X obj 124 65 r \$0-wsin; 44 | #X obj 194 65 r \$0-alpha; 45 | #X obj 194 200 outlet; 46 | #X obj 194 139 + 1; 47 | #X connect 2 0 4 0; 48 | #X connect 4 0 3 0; 49 | #X restore 50 479 pd a0; 50 | #X text 318 142 (b0/a0) + (b1/a0)*z^(-1) + (b2/a0)*z^(-2); 51 | #X obj 35 509 f; 52 | #X msg 35 539 1 \$1; 53 | #X obj 35 569 /; 54 | #X obj 35 659 *; 55 | #X obj 97 659 *; 56 | #X obj 159 659 *; 57 | #X obj 221 660 *; 58 | #X obj 284 660 *; 59 | #X text 293 417 w0 = 2*pi*f0*Fs; 60 | #X text 293 437 alpha = sin(w0)/(2*Q); 61 | #X obj 220 74 t b f; 62 | #X obj 35 54 inlet freq; 63 | #X obj 220 54 inlet q; 64 | #X obj 131 53 loadbang; 65 | #X text 321 179 1 + (a1/a0)*z^(-1) + (a2/a0)*z^(-2); 66 | #X text 277 118 Audio-Cookbook:; 67 | #X text 277 208 http://musicdsp.org/files/Audio-EQ-Cookbook.txt; 68 | #X text 279 160 H(z) = -----------------------------------------; 69 | #X obj 35 599 t f f f f f b; 70 | #X obj 35 184 t b a b; 71 | #X obj 35 701 outlet b0; 72 | #X obj 97 701 outlet b1; 73 | #X obj 159 701 outlet b2; 74 | #X obj 221 701 outlet a1; 75 | #X obj 284 701 outlet a2; 76 | #N canvas 1288 285 450 300 b0 0; 77 | #X obj 54 65 r \$0-wcos; 78 | #X obj 124 65 r \$0-wsin; 79 | #X obj 194 65 r \$0-alpha; 80 | #X obj 54 181 outlet; 81 | #X obj 54 136 * 0.5; 82 | #X obj 54 107 + 1; 83 | #X connect 0 0 5 0; 84 | #X connect 4 0 3 0; 85 | #X connect 5 0 4 0; 86 | #X restore 139 599 pd b0; 87 | #N canvas 1224 264 450 300 b1 0; 88 | #X obj 54 65 r \$0-wcos; 89 | #X obj 124 65 r \$0-wsin; 90 | #X obj 194 65 r \$0-alpha; 91 | #X obj 54 178 outlet; 92 | #X obj 54 107 + 1; 93 | #X obj 54 137 * -1; 94 | #X connect 0 0 4 0; 95 | #X connect 4 0 5 0; 96 | #X connect 5 0 3 0; 97 | #X restore 179 599 pd b1; 98 | #N canvas 1219 308 450 300 b2 0; 99 | #X obj 54 65 r \$0-wcos; 100 | #X obj 124 65 r \$0-wsin; 101 | #X obj 194 65 r \$0-alpha; 102 | #X obj 54 198 outlet; 103 | #X obj 54 136 * 0.5; 104 | #X obj 54 107 + 1; 105 | #X connect 0 0 5 0; 106 | #X connect 4 0 3 0; 107 | #X connect 5 0 4 0; 108 | #X restore 219 599 pd b2; 109 | #N canvas 0 22 450 300 a1 0; 110 | #X obj 54 65 r \$0-wcos; 111 | #X obj 124 65 r \$0-wsin; 112 | #X obj 194 65 r \$0-alpha; 113 | #X obj 54 198 outlet; 114 | #X obj 54 127 * -2; 115 | #X connect 0 0 4 0; 116 | #X connect 4 0 3 0; 117 | #X restore 259 599 pd a1; 118 | #N canvas 0 22 450 300 a2 0; 119 | #X obj 54 65 r \$0-wcos; 120 | #X obj 124 65 r \$0-wsin; 121 | #X obj 196 65 r \$0-alpha; 122 | #X obj 196 187 outlet; 123 | #X msg 196 129 1 \$1; 124 | #X obj 196 151 -; 125 | #X connect 2 0 4 0; 126 | #X connect 4 0 5 0; 127 | #X connect 5 0 3 0; 128 | #X restore 299 599 pd a2; 129 | #X text 399 602 a0 = 1 + alpha; 130 | #X text 399 642 a2 = 1 - alpha; 131 | #X text 399 622 a1 = -2*cos(w0); 132 | #X text 399 682 b1 = -(1 + cos(w0)); 133 | #X text 399 702 b2 = (1 + cos(w0))/2; 134 | #X text 399 662 b0 = (1 + cos(w0))/2; 135 | #X text 391 583 HPF:; 136 | #X text 32 23 Highpass filter with Q - biquad filter coefficient generator 137 | ; 138 | #X obj 35 145 f \$1; 139 | #X obj 226 242 f \$2; 140 | #X connect 0 0 1 0; 141 | #X connect 1 0 3 0; 142 | #X connect 1 1 2 0; 143 | #X connect 2 0 4 0; 144 | #X connect 3 0 5 0; 145 | #X connect 6 0 0 0; 146 | #X connect 7 0 10 0; 147 | #X connect 8 0 12 0; 148 | #X connect 10 0 11 0; 149 | #X connect 11 0 12 1; 150 | #X connect 12 0 13 0; 151 | #X connect 13 0 9 0; 152 | #X connect 14 0 16 1; 153 | #X connect 16 0 17 0; 154 | #X connect 17 0 18 0; 155 | #X connect 18 0 34 0; 156 | #X connect 19 0 36 0; 157 | #X connect 20 0 37 0; 158 | #X connect 21 0 38 0; 159 | #X connect 22 0 39 0; 160 | #X connect 23 0 40 0; 161 | #X connect 26 0 54 0; 162 | #X connect 26 1 55 1; 163 | #X connect 27 0 54 0; 164 | #X connect 28 0 26 0; 165 | #X connect 29 0 54 0; 166 | #X connect 34 0 19 0; 167 | #X connect 34 1 20 0; 168 | #X connect 34 2 21 0; 169 | #X connect 34 3 22 0; 170 | #X connect 34 4 23 0; 171 | #X connect 35 0 16 0; 172 | #X connect 35 1 6 0; 173 | #X connect 35 2 55 0; 174 | #X connect 41 0 19 1; 175 | #X connect 42 0 20 1; 176 | #X connect 43 0 21 1; 177 | #X connect 44 0 22 1; 178 | #X connect 45 0 23 1; 179 | #X connect 54 0 35 0; 180 | #X connect 55 0 7 0; 181 | -------------------------------------------------------------------------------- /hv.filters/highpass.pd: -------------------------------------------------------------------------------- 1 | #N canvas 500 113 333 258 10; 2 | #X obj 35 206 outlet~; 3 | #X obj 35 44 inlet~; 4 | #N canvas 140 389 549 400 @hv_obj 0; 5 | #X obj 133 65 inlet~ b0; 6 | #X obj 204 65 inlet~ b1; 7 | #X obj 276 65 inlet~ b2; 8 | #X obj 347 65 inlet~ a1; 9 | #X obj 417 65 inlet~ a2; 10 | #X obj 51 65 inlet~; 11 | #N canvas 457 278 463 637 zeros 0; 12 | #X obj 114 473 czero~; 13 | #X obj 114 523 czero~; 14 | #X obj 114 583 outlet~; 15 | #X obj 147 553 outlet~; 16 | #X obj 206 74 inlet~ b0; 17 | #X obj 277 74 inlet~ b1; 18 | #X obj 349 74 inlet~ b2; 19 | #X obj 114 74 inlet~; 20 | #X obj 206 242 *~ -1; 21 | #X obj 206 264 *~ 0.5; 22 | #X obj 299 227 *~; 23 | #X obj 302 293 -~; 24 | #X obj 326 248 *~ 4; 25 | #X obj 326 226 *~; 26 | #X obj 351 319 abs~; 27 | #X obj 351 363 *~ 0.5; 28 | #X obj 349 401 /~; 29 | #N canvas 490 269 488 402 location 0; 30 | #X obj 63 64 inlet~; 31 | #X obj 165 71 inlet~; 32 | #X obj 334 70 inlet~; 33 | #X obj 63 314 outlet~; 34 | #X obj 132 316 outlet~; 35 | #X obj 244 317 outlet~; 36 | #X obj 336 319 outlet~; 37 | #N canvas 0 22 450 300 gte 0; 38 | #X obj 148 48 inlet~; 39 | #X obj 43 48 inlet~; 40 | #X obj 43 143 outlet~; 41 | #N canvas 467 216 450 300 @hv_obj 0; 42 | #X obj 217 60 inlet~; 43 | #X obj 120 60 inlet~; 44 | #X obj 170 183 outlet~; 45 | #X connect 1 0 2 0; 46 | #X restore 43 119 pd @hv_obj __and~f; 47 | #X obj 148 97 sig~ 1; 48 | #N canvas 249 541 148 189 @hv_obj 0; 49 | #X obj 23 69 -~; 50 | #X obj 23 94 clip~ -1e-37 0; 51 | #X obj 23 18 inlet~; 52 | #X obj 67 19 inlet~; 53 | #X obj 23 159 outlet~; 54 | #X obj 23 136 *~ 1e+37; 55 | #X obj 23 44 min~; 56 | #X obj 23 115 +~ 1e-37; 57 | #X connect 0 0 1 0; 58 | #X connect 1 0 7 0; 59 | #X connect 2 0 6 0; 60 | #X connect 3 0 6 1; 61 | #X connect 3 0 0 1; 62 | #X connect 5 0 4 0; 63 | #X connect 6 0 0 0; 64 | #X connect 7 0 5 0; 65 | #X restore 43 71 pd @hv_obj __gte~f; 66 | #X connect 0 0 5 1; 67 | #X connect 1 0 5 0; 68 | #X connect 3 0 2 0; 69 | #X connect 4 0 3 1; 70 | #X connect 5 0 3 0; 71 | #X restore 164 154 pd gte; 72 | #N canvas 0 22 281 183 lte 0; 73 | #X obj 150 34 inlet~; 74 | #X obj 45 34 inlet~; 75 | #X obj 45 129 outlet~; 76 | #N canvas 467 216 450 300 @hv_obj 0; 77 | #X obj 217 60 inlet~; 78 | #X obj 120 60 inlet~; 79 | #X obj 170 183 outlet~; 80 | #X connect 1 0 2 0; 81 | #X restore 45 105 pd @hv_obj __and~f; 82 | #X obj 150 83 sig~ 1; 83 | #N canvas 715 101 191 233 @hv_obj 0; 84 | #X obj 49 83 -~; 85 | #X obj 50 109 clip~ -1e-37 0; 86 | #X obj 49 32 inlet~; 87 | #X obj 93 33 inlet~; 88 | #X obj 50 174 outlet~; 89 | #X obj 50 151 *~ 1e+37; 90 | #X obj 49 58 min~; 91 | #X obj 50 130 +~ 1e-37; 92 | #X connect 0 0 1 0; 93 | #X connect 1 0 7 0; 94 | #X connect 2 0 6 0; 95 | #X connect 2 0 0 1; 96 | #X connect 3 0 6 1; 97 | #X connect 5 0 4 0; 98 | #X connect 6 0 0 0; 99 | #X connect 7 0 5 0; 100 | #X restore 45 57 pd @hv_obj __lte~f; 101 | #X connect 0 0 5 1; 102 | #X connect 1 0 5 0; 103 | #X connect 3 0 2 0; 104 | #X connect 4 0 3 1; 105 | #X connect 5 0 3 0; 106 | #X restore 229 154 pd lte; 107 | #X obj 65 257 +~; 108 | #X obj 264 101 sig~ 0; 109 | #X obj 256 206 *~; 110 | #X obj 338 206 *~; 111 | #X obj 244 290 -~; 112 | #X obj 340 289 *~ -1; 113 | #X connect 0 0 9 0; 114 | #X connect 0 0 13 0; 115 | #X connect 1 0 7 0; 116 | #X connect 1 0 8 0; 117 | #X connect 2 0 11 1; 118 | #X connect 2 0 12 1; 119 | #X connect 7 0 11 0; 120 | #X connect 8 0 12 0; 121 | #X connect 9 0 3 0; 122 | #X connect 10 0 7 1; 123 | #X connect 10 0 8 1; 124 | #X connect 11 0 9 1; 125 | #X connect 11 0 13 1; 126 | #X connect 12 0 4 0; 127 | #X connect 12 0 14 0; 128 | #X connect 13 0 5 0; 129 | #X connect 14 0 6 0; 130 | #X restore 136 443 pd location; 131 | #X obj 351 341 sqrt~; 132 | #X obj 206 301 /~; 133 | #X connect 0 0 1 0; 134 | #X connect 0 1 1 1; 135 | #X connect 1 0 2 0; 136 | #X connect 1 1 3 0; 137 | #X connect 4 0 13 0; 138 | #X connect 4 0 16 1; 139 | #X connect 4 0 19 1; 140 | #X connect 5 0 8 0; 141 | #X connect 5 0 10 1; 142 | #X connect 5 0 10 0; 143 | #X connect 6 0 13 1; 144 | #X connect 7 0 0 0; 145 | #X connect 8 0 9 0; 146 | #X connect 9 0 19 0; 147 | #X connect 10 0 11 0; 148 | #X connect 11 0 14 0; 149 | #X connect 11 0 17 1; 150 | #X connect 12 0 11 1; 151 | #X connect 13 0 12 0; 152 | #X connect 14 0 18 0; 153 | #X connect 15 0 16 0; 154 | #X connect 16 0 17 2; 155 | #X connect 17 0 0 2; 156 | #X connect 17 1 0 3; 157 | #X connect 17 2 1 2; 158 | #X connect 17 3 1 3; 159 | #X connect 18 0 15 0; 160 | #X connect 19 0 17 0; 161 | #X restore 51 215 pd zeros; 162 | #X obj 51 155 *~; 163 | #N canvas 354 142 470 501 poles 0; 164 | #X obj 63 335 cpole~; 165 | #X obj 63 376 cpole~; 166 | #X obj 63 433 outlet~; 167 | #X obj 63 44 inlet~; 168 | #X obj 113 44 inlet~; 169 | #X obj 176 44 inlet~ a1; 170 | #X obj 324 39 inlet~ a2; 171 | #N canvas 490 269 488 402 location 0; 172 | #X obj 63 64 inlet~; 173 | #X obj 165 71 inlet~; 174 | #X obj 334 70 inlet~; 175 | #X obj 63 314 outlet~; 176 | #X obj 132 316 outlet~; 177 | #X obj 244 317 outlet~; 178 | #X obj 336 319 outlet~; 179 | #N canvas 0 22 450 300 gte 0; 180 | #X obj 148 48 inlet~; 181 | #X obj 43 48 inlet~; 182 | #X obj 43 143 outlet~; 183 | #N canvas 467 216 450 300 @hv_obj 0; 184 | #X obj 217 60 inlet~; 185 | #X obj 120 60 inlet~; 186 | #X obj 170 183 outlet~; 187 | #X connect 1 0 2 0; 188 | #X restore 43 119 pd @hv_obj __and~f; 189 | #X obj 148 97 sig~ 1; 190 | #N canvas 249 541 148 189 @hv_obj 0; 191 | #X obj 23 69 -~; 192 | #X obj 23 94 clip~ -1e-37 0; 193 | #X obj 23 18 inlet~; 194 | #X obj 67 19 inlet~; 195 | #X obj 23 159 outlet~; 196 | #X obj 23 136 *~ 1e+37; 197 | #X obj 23 44 min~; 198 | #X obj 23 115 +~ 1e-37; 199 | #X connect 0 0 1 0; 200 | #X connect 1 0 7 0; 201 | #X connect 2 0 6 0; 202 | #X connect 3 0 6 1; 203 | #X connect 3 0 0 1; 204 | #X connect 5 0 4 0; 205 | #X connect 6 0 0 0; 206 | #X connect 7 0 5 0; 207 | #X restore 43 71 pd @hv_obj __gte~f; 208 | #X connect 0 0 5 1; 209 | #X connect 1 0 5 0; 210 | #X connect 3 0 2 0; 211 | #X connect 4 0 3 1; 212 | #X connect 5 0 3 0; 213 | #X restore 164 154 pd gte; 214 | #N canvas 0 22 281 183 lte 0; 215 | #X obj 150 34 inlet~; 216 | #X obj 45 34 inlet~; 217 | #X obj 45 129 outlet~; 218 | #N canvas 467 216 450 300 @hv_obj 0; 219 | #X obj 217 60 inlet~; 220 | #X obj 120 60 inlet~; 221 | #X obj 170 183 outlet~; 222 | #X connect 1 0 2 0; 223 | #X restore 45 105 pd @hv_obj __and~f; 224 | #X obj 150 83 sig~ 1; 225 | #N canvas 715 101 191 233 @hv_obj 0; 226 | #X obj 49 83 -~; 227 | #X obj 50 109 clip~ -1e-37 0; 228 | #X obj 49 32 inlet~; 229 | #X obj 93 33 inlet~; 230 | #X obj 50 174 outlet~; 231 | #X obj 50 151 *~ 1e+37; 232 | #X obj 49 58 min~; 233 | #X obj 50 130 +~ 1e-37; 234 | #X connect 0 0 1 0; 235 | #X connect 1 0 7 0; 236 | #X connect 2 0 6 0; 237 | #X connect 2 0 0 1; 238 | #X connect 3 0 6 1; 239 | #X connect 5 0 4 0; 240 | #X connect 6 0 0 0; 241 | #X connect 7 0 5 0; 242 | #X restore 45 57 pd @hv_obj __lte~f; 243 | #X connect 0 0 5 1; 244 | #X connect 1 0 5 0; 245 | #X connect 3 0 2 0; 246 | #X connect 4 0 3 1; 247 | #X connect 5 0 3 0; 248 | #X restore 229 154 pd lte; 249 | #X obj 65 257 +~; 250 | #X obj 264 101 sig~ 0; 251 | #X obj 256 206 *~; 252 | #X obj 338 206 *~; 253 | #X obj 244 290 -~; 254 | #X obj 340 289 *~ -1; 255 | #X connect 0 0 9 0; 256 | #X connect 0 0 13 0; 257 | #X connect 1 0 7 0; 258 | #X connect 1 0 8 0; 259 | #X connect 2 0 11 1; 260 | #X connect 2 0 12 1; 261 | #X connect 7 0 11 0; 262 | #X connect 8 0 12 0; 263 | #X connect 9 0 3 0; 264 | #X connect 10 0 7 1; 265 | #X connect 10 0 8 1; 266 | #X connect 11 0 9 1; 267 | #X connect 11 0 13 1; 268 | #X connect 12 0 4 0; 269 | #X connect 12 0 14 0; 270 | #X connect 13 0 5 0; 271 | #X connect 14 0 6 0; 272 | #X restore 85 309 pd location; 273 | #X obj 161 144 *~ 0.5; 274 | #X obj 248 141 *~; 275 | #X obj 248 174 +~; 276 | #X obj 298 136 *~ 4; 277 | #X obj 248 196 abs~; 278 | #X obj 248 240 *~ 0.5; 279 | #X obj 248 218 sqrt~; 280 | #X connect 0 0 1 0; 281 | #X connect 0 1 1 1; 282 | #X connect 1 0 2 0; 283 | #X connect 3 0 0 0; 284 | #X connect 4 0 0 1; 285 | #X connect 5 0 8 0; 286 | #X connect 5 0 9 0; 287 | #X connect 5 0 9 1; 288 | #X connect 6 0 11 0; 289 | #X connect 7 0 0 2; 290 | #X connect 7 1 0 3; 291 | #X connect 7 2 1 2; 292 | #X connect 7 3 1 3; 293 | #X connect 8 0 7 0; 294 | #X connect 9 0 10 0; 295 | #X connect 10 0 7 1; 296 | #X connect 10 0 12 0; 297 | #X connect 11 0 10 1; 298 | #X connect 12 0 14 0; 299 | #X connect 13 0 7 2; 300 | #X connect 14 0 13 0; 301 | #X restore 51 275 pd poles; 302 | #X obj 51 330 outlet~; 303 | #X obj 347 97 *~ -1; 304 | #X obj 417 97 *~ -1; 305 | #X connect 0 0 6 1; 306 | #X connect 0 0 7 1; 307 | #X connect 1 0 6 2; 308 | #X connect 2 0 6 3; 309 | #X connect 3 0 10 0; 310 | #X connect 4 0 11 0; 311 | #X connect 5 0 7 0; 312 | #X connect 6 0 8 0; 313 | #X connect 6 1 8 1; 314 | #X connect 7 0 6 0; 315 | #X connect 8 0 9 0; 316 | #X connect 10 0 8 2; 317 | #X connect 11 0 8 3; 318 | #X restore 35 153 pd @hv_obj biquad; 319 | #X obj 94 43 inlet freq; 320 | #X obj 223 44 inlet q; 321 | #N canvas 0 22 173 173 s 0; 322 | #X obj 37 46 inlet; 323 | #X obj 37 90 line~; 324 | #X obj 37 112 outlet~; 325 | #X msg 37 68 \$1 10; 326 | #X connect 0 0 3 0; 327 | #X connect 1 0 2 0; 328 | #X connect 3 0 1 0; 329 | #X restore 94 110 pd s; 330 | #N canvas 0 22 173 173 s 0; 331 | #X obj 37 46 inlet; 332 | #X obj 37 90 line~; 333 | #X obj 37 112 outlet~; 334 | #X msg 37 68 \$1 10; 335 | #X connect 0 0 3 0; 336 | #X connect 1 0 2 0; 337 | #X connect 3 0 1 0; 338 | #X restore 126 110 pd s; 339 | #N canvas 0 22 173 173 s 0; 340 | #X obj 37 46 inlet; 341 | #X obj 37 90 line~; 342 | #X obj 37 112 outlet~; 343 | #X msg 37 68 \$1 10; 344 | #X connect 0 0 3 0; 345 | #X connect 1 0 2 0; 346 | #X connect 3 0 1 0; 347 | #X restore 158 110 pd s; 348 | #N canvas 0 22 173 173 s 0; 349 | #X obj 37 46 inlet; 350 | #X obj 37 90 line~; 351 | #X obj 37 112 outlet~; 352 | #X msg 37 68 \$1 10; 353 | #X connect 0 0 3 0; 354 | #X connect 1 0 2 0; 355 | #X connect 3 0 1 0; 356 | #X restore 190 110 pd s; 357 | #N canvas 0 22 173 173 s 0; 358 | #X obj 37 46 inlet; 359 | #X obj 37 90 line~; 360 | #X obj 37 112 outlet~; 361 | #X msg 37 68 \$1 10; 362 | #X connect 0 0 3 0; 363 | #X connect 1 0 2 0; 364 | #X connect 3 0 1 0; 365 | #X restore 223 110 pd s; 366 | #X obj 94 83 highpass.coeffs \$1 \$2; 367 | #X connect 1 0 2 0; 368 | #X connect 2 0 0 0; 369 | #X connect 3 0 10 0; 370 | #X connect 4 0 10 1; 371 | #X connect 5 0 2 1; 372 | #X connect 6 0 2 2; 373 | #X connect 7 0 2 3; 374 | #X connect 8 0 2 4; 375 | #X connect 9 0 2 5; 376 | #X connect 10 0 5 0; 377 | #X connect 10 1 6 0; 378 | #X connect 10 2 7 0; 379 | #X connect 10 3 8 0; 380 | #X connect 10 4 9 0; 381 | -------------------------------------------------------------------------------- /hv.filters/highshelf.coeffs.pd: -------------------------------------------------------------------------------- 1 | #N canvas 233 23 883 755 10; 2 | #N canvas 0 22 783 567 hz2rad 0; 3 | #X obj 194 113 samplerate~; 4 | #X obj 194 71 loadbang; 5 | #X obj 194 185 atan; 6 | #X msg 194 160 1; 7 | #X text 382 53 w = 2 * pi * f / SR; 8 | #X obj 194 207 * 8; 9 | #X obj 194 137 t b a; 10 | #X obj 194 230 / 44100; 11 | #X text 260 232 2 * pi / SR; 12 | #X obj 119 269 *; 13 | #X obj 119 35 inlet; 14 | #X obj 119 298 outlet; 15 | #X text 175 300 w(rad); 16 | #X text 167 35 freq(Hz); 17 | #X connect 0 0 6 0; 18 | #X connect 1 0 0 0; 19 | #X connect 2 0 5 0; 20 | #X connect 3 0 2 0; 21 | #X connect 5 0 7 0; 22 | #X connect 6 0 3 0; 23 | #X connect 6 1 7 1; 24 | #X connect 7 0 9 1; 25 | #X connect 9 0 11 0; 26 | #X connect 10 0 9 0; 27 | #X restore 45 337 pd hz2rad; 28 | #X obj 45 367 t f f; 29 | #X obj 113 397 sin; 30 | #X obj 45 397 cos; 31 | #X obj 113 437 s \$0-wsin; 32 | #X obj 45 437 s \$0-wcos; 33 | #X obj 45 277 clip 20 20000; 34 | #X obj 217 277 clip 0.1 100; 35 | #X obj 142 307 r \$0-wsin; 36 | #X obj 229 441 s \$0-alpha; 37 | #X msg 217 307 1 \$1; 38 | #X obj 217 337 /; 39 | #X obj 202 367 *; 40 | #X obj 202 397 * 0.5; 41 | #X text 394 132 (b0/a0) + (b1/a0)*z^(-1) + (b2/a0)*z^(-2); 42 | #X obj 26 507 f; 43 | #X msg 26 537 1 \$1; 44 | #X obj 26 567 /; 45 | #X obj 26 657 *; 46 | #X obj 88 657 *; 47 | #X obj 150 657 *; 48 | #X obj 212 658 *; 49 | #X obj 275 658 *; 50 | #X obj 211 72 t b f; 51 | #X obj 26 52 inlet freq; 52 | #X obj 211 52 inlet q; 53 | #X obj 116 53 loadbang; 54 | #X text 397 169 1 + (a1/a0)*z^(-1) + (a2/a0)*z^(-2); 55 | #X text 353 108 Audio-Cookbook:; 56 | #X text 353 198 http://musicdsp.org/files/Audio-EQ-Cookbook.txt; 57 | #X text 355 150 H(z) = -----------------------------------------; 58 | #X obj 26 182 t b a b; 59 | #X obj 26 699 outlet b0; 60 | #X obj 88 699 outlet b1; 61 | #X obj 150 699 outlet b2; 62 | #X obj 212 699 outlet a1; 63 | #X obj 275 699 outlet a2; 64 | #N canvas 601 52 421 370 b0 0; 65 | #X obj 38 41 r \$0-wcos; 66 | #X obj 38 309 outlet; 67 | #X obj 53 110 - 1; 68 | #X obj 38 163 *; 69 | #X obj 83 157 + 1; 70 | #X obj 112 41 r \$0-A; 71 | #X obj 112 73 t f f f; 72 | #X obj 38 279 *; 73 | #X obj 38 191 +; 74 | #X obj 38 247 +; 75 | #X obj 53 222 r \$0-sqrtA-alpha-2; 76 | #X connect 0 0 3 0; 77 | #X connect 2 0 3 1; 78 | #X connect 3 0 8 0; 79 | #X connect 4 0 8 1; 80 | #X connect 5 0 6 0; 81 | #X connect 6 0 2 0; 82 | #X connect 6 1 4 0; 83 | #X connect 6 2 7 1; 84 | #X connect 7 0 1 0; 85 | #X connect 8 0 9 0; 86 | #X connect 9 0 7 0; 87 | #X connect 10 0 9 1; 88 | #X restore 120 597 pd b0; 89 | #N canvas 0 22 383 345 b1 0; 90 | #X obj 55 287 outlet; 91 | #X obj 55 45 r \$0-wcos; 92 | #X obj 128 46 r \$0-A; 93 | #X obj 87 177 - 1; 94 | #X obj 70 125 + 1; 95 | #X obj 55 175 *; 96 | #X obj 128 78 t f f f; 97 | #X obj 55 243 *; 98 | #X obj 55 211 +; 99 | #X obj 167 164 * -2; 100 | #X connect 1 0 5 0; 101 | #X connect 2 0 6 0; 102 | #X connect 3 0 8 1; 103 | #X connect 4 0 5 1; 104 | #X connect 5 0 8 0; 105 | #X connect 6 0 4 0; 106 | #X connect 6 1 3 0; 107 | #X connect 6 2 9 0; 108 | #X connect 7 0 0 0; 109 | #X connect 8 0 7 0; 110 | #X connect 9 0 7 1; 111 | #X restore 164 597 pd b1; 112 | #N canvas 0 22 238 367 b2 0; 113 | #X obj 38 41 r \$0-wcos; 114 | #X obj 38 309 outlet; 115 | #X obj 53 113 - 1; 116 | #X obj 38 163 *; 117 | #X obj 38 191 +; 118 | #X obj 80 163 + 1; 119 | #X obj 112 41 r \$0-A; 120 | #X obj 38 247 -; 121 | #X obj 112 73 t f f f; 122 | #X obj 38 279 *; 123 | #X obj 53 222 r \$0-sqrtA-alpha-2; 124 | #X connect 0 0 3 0; 125 | #X connect 2 0 3 1; 126 | #X connect 3 0 4 0; 127 | #X connect 4 0 7 0; 128 | #X connect 5 0 4 1; 129 | #X connect 6 0 8 0; 130 | #X connect 7 0 9 0; 131 | #X connect 8 0 2 0; 132 | #X connect 8 1 5 0; 133 | #X connect 8 2 9 1; 134 | #X connect 9 0 1 0; 135 | #X connect 10 0 7 1; 136 | #X restore 208 597 pd b2; 137 | #N canvas 0 22 368 357 a1 0; 138 | #X obj 55 287 outlet; 139 | #X obj 55 45 r \$0-wcos; 140 | #X obj 128 46 r \$0-A; 141 | #X obj 155 104 - 1; 142 | #X obj 55 221 +; 143 | #X obj 70 121 + 1; 144 | #X obj 55 175 *; 145 | #X obj 128 78 t f f; 146 | #X obj 55 253 * 2; 147 | #X obj 70 143 * -1; 148 | #X connect 1 0 6 0; 149 | #X connect 2 0 7 0; 150 | #X connect 3 0 4 1; 151 | #X connect 4 0 8 0; 152 | #X connect 5 0 9 0; 153 | #X connect 6 0 4 0; 154 | #X connect 7 0 5 0; 155 | #X connect 7 1 3 0; 156 | #X connect 8 0 0 0; 157 | #X connect 9 0 6 1; 158 | #X restore 250 597 pd a1; 159 | #N canvas 275 137 208 373 a2 0; 160 | #X obj 38 41 r \$0-wcos; 161 | #X obj 38 319 outlet; 162 | #X obj 53 133 - 1; 163 | #X obj 38 183 *; 164 | #X obj 38 221 +; 165 | #X obj 80 197 + 1; 166 | #X obj 53 87 r \$0-A; 167 | #X obj 53 109 t f f; 168 | #X obj 38 287 -; 169 | #X obj 53 155 * -1; 170 | #X obj 53 253 r \$0-sqrtA-alpha-2; 171 | #X connect 0 0 3 0; 172 | #X connect 2 0 9 0; 173 | #X connect 3 0 4 0; 174 | #X connect 4 0 8 0; 175 | #X connect 5 0 4 1; 176 | #X connect 6 0 7 0; 177 | #X connect 7 0 2 0; 178 | #X connect 7 1 5 0; 179 | #X connect 8 0 1 0; 180 | #X connect 9 0 3 1; 181 | #X connect 10 0 8 1; 182 | #X restore 290 597 pd a2; 183 | #X obj 315 277 clip -24 24; 184 | #X obj 342 450 s \$0-A; 185 | #X obj 315 307 / 40; 186 | #X obj 315 337 t b f; 187 | #X msg 315 367 10; 188 | #X obj 315 397 pow 0; 189 | #X obj 288 50 inlet dBGain; 190 | #X obj 288 70 t b f; 191 | #X text 407 395 w0 = 2*pi*f0*Fs; 192 | #X text 407 435 A = 10^(dbGain/40); 193 | #X text 407 415 alpha = sin(w0)/(2*Q); 194 | #N canvas 44 48 285 374 a0 0; 195 | #X obj 38 41 r \$0-wcos; 196 | #X obj 38 319 outlet; 197 | #X obj 53 133 - 1; 198 | #X obj 38 193 *; 199 | #X obj 38 221 +; 200 | #X obj 80 197 + 1; 201 | #X obj 53 87 r \$0-A; 202 | #X obj 53 109 t f f; 203 | #X obj 38 287 +; 204 | #X obj 53 157 * -1; 205 | #X obj 53 253 r \$0-sqrtA-alpha-2; 206 | #X connect 0 0 3 0; 207 | #X connect 2 0 9 0; 208 | #X connect 3 0 4 0; 209 | #X connect 4 0 8 0; 210 | #X connect 5 0 4 1; 211 | #X connect 6 0 7 0; 212 | #X connect 7 0 2 0; 213 | #X connect 7 1 5 0; 214 | #X connect 8 0 1 0; 215 | #X connect 9 0 3 1; 216 | #X connect 10 0 8 1; 217 | #X restore 41 480 pd a0; 218 | #X obj 26 143 f \$1; 219 | #X obj 217 240 f \$2; 220 | #X obj 315 241 f \$3; 221 | #X obj 116 75 t b b; 222 | #X obj 217 477 sqrt; 223 | #X obj 217 499 * 2; 224 | #X obj 202 521 *; 225 | #X obj 202 419 t f f; 226 | #X obj 26 597 t f f f f f; 227 | #X obj 315 419 t f f; 228 | #X text 23 21 High shelving filter with Q and gain - biquad filter 229 | coefficient generator; 230 | #X text 357 581 High Shelf:; 231 | #X text 371 662 b0 = A*( (A+1) + (A-1)*cos(wc) + 2*sqrt(A)*alpha); 232 | #X text 371 682 b1 = -2*A*( (A-1) + (A+1)*cos(wc)); 233 | #X text 371 702 b2 = A*((A+1) + (A-1)*cos(wc) - 2*sqrt(A)*alpha); 234 | #X text 371 602 a0 = (A+1) - (A-1)*cos(wc) + 2*sqrt(A)*alpha; 235 | #X text 371 622 a1 = 2*((A-1) - (A+1)*cos(wc)); 236 | #X text 371 642 a2 = (A+1) - (A-1)*cos(wc) - 2*sqrt(A)*alpha; 237 | #X obj 202 543 s \$0-sqrtA-alpha-2; 238 | #X connect 0 0 1 0; 239 | #X connect 1 0 3 0; 240 | #X connect 1 1 2 0; 241 | #X connect 2 0 4 0; 242 | #X connect 3 0 5 0; 243 | #X connect 6 0 0 0; 244 | #X connect 7 0 10 0; 245 | #X connect 8 0 12 0; 246 | #X connect 10 0 11 0; 247 | #X connect 11 0 12 1; 248 | #X connect 12 0 13 0; 249 | #X connect 13 0 61 0; 250 | #X connect 15 0 16 0; 251 | #X connect 16 0 17 0; 252 | #X connect 17 0 62 0; 253 | #X connect 18 0 32 0; 254 | #X connect 19 0 33 0; 255 | #X connect 20 0 34 0; 256 | #X connect 21 0 35 0; 257 | #X connect 22 0 36 0; 258 | #X connect 23 0 54 0; 259 | #X connect 23 1 55 1; 260 | #X connect 24 0 54 0; 261 | #X connect 25 0 23 0; 262 | #X connect 26 0 57 0; 263 | #X connect 31 0 15 0; 264 | #X connect 31 1 6 0; 265 | #X connect 31 2 55 0; 266 | #X connect 37 0 18 1; 267 | #X connect 38 0 19 1; 268 | #X connect 39 0 20 1; 269 | #X connect 40 0 21 1; 270 | #X connect 41 0 22 1; 271 | #X connect 42 0 44 0; 272 | #X connect 44 0 45 0; 273 | #X connect 45 0 46 0; 274 | #X connect 45 1 47 1; 275 | #X connect 46 0 47 0; 276 | #X connect 47 0 63 0; 277 | #X connect 48 0 49 0; 278 | #X connect 49 0 54 0; 279 | #X connect 49 1 56 0; 280 | #X connect 53 0 15 1; 281 | #X connect 54 0 31 0; 282 | #X connect 55 0 7 0; 283 | #X connect 56 0 42 0; 284 | #X connect 57 0 54 0; 285 | #X connect 57 1 56 0; 286 | #X connect 58 0 59 0; 287 | #X connect 59 0 60 1; 288 | #X connect 60 0 72 0; 289 | #X connect 61 0 60 0; 290 | #X connect 61 1 9 0; 291 | #X connect 62 0 18 0; 292 | #X connect 62 1 19 0; 293 | #X connect 62 2 20 0; 294 | #X connect 62 3 21 0; 295 | #X connect 62 4 22 0; 296 | #X connect 63 0 58 0; 297 | #X connect 63 1 43 0; 298 | -------------------------------------------------------------------------------- /hv.filters/lowpass.coeffs.pd: -------------------------------------------------------------------------------- 1 | #N canvas 1309 219 590 745 10; 2 | #N canvas 0 22 783 567 hz2rad 0; 3 | #X obj 194 113 samplerate~; 4 | #X obj 194 71 loadbang; 5 | #X obj 194 185 atan; 6 | #X msg 194 160 1; 7 | #X text 382 53 w = 2 * pi * f / SR; 8 | #X obj 194 207 * 8; 9 | #X obj 194 137 t b a; 10 | #X obj 194 230 / 44100; 11 | #X text 260 232 2 * pi / SR; 12 | #X obj 119 269 *; 13 | #X obj 119 35 inlet; 14 | #X obj 119 298 outlet; 15 | #X text 175 300 w(rad); 16 | #X text 167 35 freq(Hz); 17 | #X connect 0 0 6 0; 18 | #X connect 1 0 0 0; 19 | #X connect 2 0 5 0; 20 | #X connect 3 0 2 0; 21 | #X connect 5 0 7 0; 22 | #X connect 6 0 3 0; 23 | #X connect 6 1 7 1; 24 | #X connect 7 0 9 1; 25 | #X connect 9 0 11 0; 26 | #X connect 10 0 9 0; 27 | #X restore 41 336 pd hz2rad; 28 | #X obj 41 366 t f f; 29 | #X obj 109 396 sin; 30 | #X obj 41 396 cos; 31 | #X obj 109 436 s \$0-wsin; 32 | #X obj 41 436 s \$0-wcos; 33 | #X obj 41 276 clip 20 20000; 34 | #X obj 213 276 clip 0.1 100; 35 | #X obj 138 306 r \$0-wsin; 36 | #X obj 198 436 s \$0-alpha; 37 | #X msg 213 306 1 \$1; 38 | #X obj 213 336 /; 39 | #X obj 198 366 *; 40 | #X obj 198 396 * 0.5; 41 | #N canvas 1288 285 450 300 b0 0; 42 | #X obj 54 65 r \$0-wcos; 43 | #X obj 124 65 r \$0-wsin; 44 | #X obj 194 65 r \$0-alpha; 45 | #X obj 54 181 outlet; 46 | #X obj 54 146 * 0.5; 47 | #X msg 54 101 1 \$1; 48 | #X obj 54 123 -; 49 | #X connect 0 0 5 0; 50 | #X connect 4 0 3 0; 51 | #X connect 5 0 6 0; 52 | #X connect 6 0 4 0; 53 | #X restore 118 596 pd b0; 54 | #N canvas 1224 264 450 300 b1 0; 55 | #X obj 54 65 r \$0-wcos; 56 | #X obj 124 65 r \$0-wsin; 57 | #X obj 194 65 r \$0-alpha; 58 | #X obj 54 178 outlet; 59 | #X msg 54 116 1 \$1; 60 | #X obj 54 138 -; 61 | #X connect 0 0 4 0; 62 | #X connect 4 0 5 0; 63 | #X connect 5 0 3 0; 64 | #X restore 160 596 pd b1; 65 | #N canvas 1219 308 450 300 b2 0; 66 | #X obj 54 65 r \$0-wcos; 67 | #X obj 124 65 r \$0-wsin; 68 | #X obj 194 65 r \$0-alpha; 69 | #X obj 54 198 outlet; 70 | #X obj 54 146 * 0.5; 71 | #X msg 54 101 1 \$1; 72 | #X obj 54 123 -; 73 | #X connect 0 0 5 0; 74 | #X connect 4 0 3 0; 75 | #X connect 5 0 6 0; 76 | #X connect 6 0 4 0; 77 | #X restore 202 596 pd b2; 78 | #N canvas 0 22 450 300 a0 0; 79 | #X obj 54 65 r \$0-wcos; 80 | #X obj 124 65 r \$0-wsin; 81 | #X obj 194 65 r \$0-alpha; 82 | #X obj 194 200 outlet; 83 | #X obj 194 139 + 1; 84 | #X connect 2 0 4 0; 85 | #X connect 4 0 3 0; 86 | #X restore 37 476 pd a0; 87 | #N canvas 0 22 450 300 a1 0; 88 | #X obj 54 65 r \$0-wcos; 89 | #X obj 124 65 r \$0-wsin; 90 | #X obj 194 65 r \$0-alpha; 91 | #X obj 54 198 outlet; 92 | #X obj 54 127 * -2; 93 | #X connect 0 0 4 0; 94 | #X connect 4 0 3 0; 95 | #X restore 244 596 pd a1; 96 | #N canvas 0 22 450 300 a2 0; 97 | #X obj 54 65 r \$0-wcos; 98 | #X obj 124 65 r \$0-wsin; 99 | #X obj 196 65 r \$0-alpha; 100 | #X obj 196 187 outlet; 101 | #X msg 196 129 1 \$1; 102 | #X obj 196 151 -; 103 | #X connect 2 0 4 0; 104 | #X connect 4 0 5 0; 105 | #X connect 5 0 3 0; 106 | #X restore 286 596 pd a2; 107 | #X text 305 139 (b0/a0) + (b1/a0)*z^(-1) + (b2/a0)*z^(-2); 108 | #X obj 22 506 f; 109 | #X msg 22 536 1 \$1; 110 | #X obj 22 566 /; 111 | #X obj 22 656 *; 112 | #X obj 84 656 *; 113 | #X obj 146 656 *; 114 | #X obj 208 657 *; 115 | #X obj 271 657 *; 116 | #X text 280 414 w0 = 2*pi*f0*Fs; 117 | #X text 280 434 alpha = sin(w0)/(2*Q); 118 | #X obj 207 71 t b f; 119 | #X obj 22 51 inlet freq; 120 | #X obj 207 51 inlet q; 121 | #X text 379 600 a0 = 1 + alpha; 122 | #X text 379 640 a2 = 1 - alpha; 123 | #X text 379 620 a1 = -2*cos(w0); 124 | #X text 379 660 b0 = (1 - cos(w0))/2; 125 | #X text 379 700 b2 = (1 - cos(w0))/2; 126 | #X text 379 680 b1 = (1 - cos(w0)); 127 | #X text 308 176 1 + (a1/a0)*z^(-1) + (a2/a0)*z^(-2); 128 | #X text 264 115 Audio-Cookbook:; 129 | #X text 264 205 http://musicdsp.org/files/Audio-EQ-Cookbook.txt; 130 | #X text 266 157 H(z) = -----------------------------------------; 131 | #X text 378 580 LPF:; 132 | #X text 19 20 Lowpass filter with Q - biquad filter coefficient generator 133 | ; 134 | #X obj 22 596 t f f f f f b; 135 | #X obj 22 181 t b a b; 136 | #X obj 22 698 outlet b0; 137 | #X obj 84 698 outlet b1; 138 | #X obj 146 698 outlet b2; 139 | #X obj 208 698 outlet a1; 140 | #X obj 271 698 outlet a2; 141 | #X obj 113 51 loadbang; 142 | #X obj 22 142 f \$1; 143 | #X obj 213 239 f \$2; 144 | #X connect 0 0 1 0; 145 | #X connect 1 0 3 0; 146 | #X connect 1 1 2 0; 147 | #X connect 2 0 4 0; 148 | #X connect 3 0 5 0; 149 | #X connect 6 0 0 0; 150 | #X connect 7 0 10 0; 151 | #X connect 8 0 12 0; 152 | #X connect 10 0 11 0; 153 | #X connect 11 0 12 1; 154 | #X connect 12 0 13 0; 155 | #X connect 13 0 9 0; 156 | #X connect 14 0 24 1; 157 | #X connect 15 0 25 1; 158 | #X connect 16 0 26 1; 159 | #X connect 17 0 21 1; 160 | #X connect 18 0 27 1; 161 | #X connect 19 0 28 1; 162 | #X connect 21 0 22 0; 163 | #X connect 22 0 23 0; 164 | #X connect 23 0 46 0; 165 | #X connect 24 0 48 0; 166 | #X connect 25 0 49 0; 167 | #X connect 26 0 50 0; 168 | #X connect 27 0 51 0; 169 | #X connect 28 0 52 0; 170 | #X connect 31 0 54 0; 171 | #X connect 31 1 55 1; 172 | #X connect 32 0 54 0; 173 | #X connect 33 0 31 0; 174 | #X connect 46 0 24 0; 175 | #X connect 46 1 25 0; 176 | #X connect 46 2 26 0; 177 | #X connect 46 3 27 0; 178 | #X connect 46 4 28 0; 179 | #X connect 47 0 21 0; 180 | #X connect 47 1 6 0; 181 | #X connect 47 2 55 0; 182 | #X connect 53 0 54 0; 183 | #X connect 54 0 47 0; 184 | #X connect 55 0 7 0; 185 | -------------------------------------------------------------------------------- /hv.filters/lowshelf.coeffs.pd: -------------------------------------------------------------------------------- 1 | #N canvas 233 23 755 746 10; 2 | #N canvas 0 22 783 567 hz2rad 0; 3 | #X obj 194 113 samplerate~; 4 | #X obj 194 71 loadbang; 5 | #X obj 194 185 atan; 6 | #X msg 194 160 1; 7 | #X text 382 53 w = 2 * pi * f / SR; 8 | #X obj 194 207 * 8; 9 | #X obj 194 137 t b a; 10 | #X obj 194 230 / 44100; 11 | #X text 260 232 2 * pi / SR; 12 | #X obj 119 269 *; 13 | #X obj 119 35 inlet; 14 | #X obj 119 298 outlet; 15 | #X text 175 300 w(rad); 16 | #X text 167 35 freq(Hz); 17 | #X connect 0 0 6 0; 18 | #X connect 1 0 0 0; 19 | #X connect 2 0 5 0; 20 | #X connect 3 0 2 0; 21 | #X connect 5 0 7 0; 22 | #X connect 6 0 3 0; 23 | #X connect 6 1 7 1; 24 | #X connect 7 0 9 1; 25 | #X connect 9 0 11 0; 26 | #X connect 10 0 9 0; 27 | #X restore 45 337 pd hz2rad; 28 | #X obj 45 367 t f f; 29 | #X obj 113 397 sin; 30 | #X obj 45 397 cos; 31 | #X obj 113 437 s \$0-wsin; 32 | #X obj 45 437 s \$0-wcos; 33 | #X obj 45 277 clip 20 20000; 34 | #X obj 217 277 clip 0.1 100; 35 | #X obj 142 307 r \$0-wsin; 36 | #X obj 229 441 s \$0-alpha; 37 | #X msg 217 307 1 \$1; 38 | #X obj 217 337 /; 39 | #X obj 202 367 *; 40 | #X obj 202 397 * 0.5; 41 | #X text 394 132 (b0/a0) + (b1/a0)*z^(-1) + (b2/a0)*z^(-2); 42 | #X obj 26 507 f; 43 | #X msg 26 537 1 \$1; 44 | #X obj 26 567 /; 45 | #X obj 26 657 *; 46 | #X obj 88 657 *; 47 | #X obj 150 657 *; 48 | #X obj 212 658 *; 49 | #X obj 275 658 *; 50 | #X obj 211 72 t b f; 51 | #X obj 26 52 inlet freq; 52 | #X obj 211 52 inlet q; 53 | #X obj 116 53 loadbang; 54 | #X text 397 169 1 + (a1/a0)*z^(-1) + (a2/a0)*z^(-2); 55 | #X text 353 108 Audio-Cookbook:; 56 | #X text 353 198 http://musicdsp.org/files/Audio-EQ-Cookbook.txt; 57 | #X text 355 150 H(z) = -----------------------------------------; 58 | #X obj 26 182 t b a b; 59 | #X obj 26 699 outlet b0; 60 | #X obj 88 699 outlet b1; 61 | #X obj 150 699 outlet b2; 62 | #X obj 212 699 outlet a1; 63 | #X obj 275 699 outlet a2; 64 | #N canvas 601 52 421 370 b0 0; 65 | #X obj 38 41 r \$0-wcos; 66 | #X obj 38 309 outlet; 67 | #X obj 53 110 - 1; 68 | #X obj 38 163 *; 69 | #X obj 83 157 + 1; 70 | #X obj 112 41 r \$0-A; 71 | #X obj 112 73 t f f f; 72 | #X obj 38 279 *; 73 | #X obj 38 191 +; 74 | #X obj 53 132 * -1; 75 | #X obj 38 247 +; 76 | #X obj 53 222 r \$0-sqrtA-alpha-2; 77 | #X connect 0 0 3 0; 78 | #X connect 2 0 9 0; 79 | #X connect 3 0 8 0; 80 | #X connect 4 0 8 1; 81 | #X connect 5 0 6 0; 82 | #X connect 6 0 2 0; 83 | #X connect 6 1 4 0; 84 | #X connect 6 2 7 1; 85 | #X connect 7 0 1 0; 86 | #X connect 8 0 10 0; 87 | #X connect 9 0 3 1; 88 | #X connect 10 0 7 0; 89 | #X connect 11 0 10 1; 90 | #X restore 120 597 pd b0; 91 | #N canvas 0 22 383 345 b1 0; 92 | #X obj 55 287 outlet; 93 | #X obj 55 45 r \$0-wcos; 94 | #X obj 128 46 r \$0-A; 95 | #X obj 87 177 - 1; 96 | #X obj 70 125 + 1; 97 | #X obj 55 175 *; 98 | #X obj 128 78 t f f f; 99 | #X obj 167 164 * 2; 100 | #X obj 55 243 *; 101 | #X obj 55 211 +; 102 | #X obj 70 147 * -1; 103 | #X connect 1 0 5 0; 104 | #X connect 2 0 6 0; 105 | #X connect 3 0 9 1; 106 | #X connect 4 0 10 0; 107 | #X connect 5 0 9 0; 108 | #X connect 6 0 4 0; 109 | #X connect 6 1 3 0; 110 | #X connect 6 2 7 0; 111 | #X connect 7 0 8 1; 112 | #X connect 8 0 0 0; 113 | #X connect 9 0 8 0; 114 | #X connect 10 0 5 1; 115 | #X restore 164 597 pd b1; 116 | #N canvas 0 22 238 367 b2 0; 117 | #X obj 38 41 r \$0-wcos; 118 | #X obj 38 309 outlet; 119 | #X obj 53 113 - 1; 120 | #X obj 38 163 *; 121 | #X obj 38 191 +; 122 | #X obj 80 163 + 1; 123 | #X obj 112 41 r \$0-A; 124 | #X obj 38 247 -; 125 | #X obj 112 73 t f f f; 126 | #X obj 38 279 *; 127 | #X obj 53 135 * -1; 128 | #X obj 53 222 r \$0-sqrtA-alpha-2; 129 | #X connect 0 0 3 0; 130 | #X connect 2 0 10 0; 131 | #X connect 3 0 4 0; 132 | #X connect 4 0 7 0; 133 | #X connect 5 0 4 1; 134 | #X connect 6 0 8 0; 135 | #X connect 7 0 9 0; 136 | #X connect 8 0 2 0; 137 | #X connect 8 1 5 0; 138 | #X connect 8 2 9 1; 139 | #X connect 9 0 1 0; 140 | #X connect 10 0 3 1; 141 | #X connect 11 0 7 1; 142 | #X restore 208 597 pd b2; 143 | #N canvas 0 22 368 357 a1 0; 144 | #X obj 55 287 outlet; 145 | #X obj 55 45 r \$0-wcos; 146 | #X obj 128 46 r \$0-A; 147 | #X obj 155 104 - 1; 148 | #X obj 55 221 +; 149 | #X obj 70 151 + 1; 150 | #X obj 55 175 *; 151 | #X obj 128 78 t f f; 152 | #X obj 55 253 * -2; 153 | #X connect 1 0 6 0; 154 | #X connect 2 0 7 0; 155 | #X connect 3 0 4 1; 156 | #X connect 4 0 8 0; 157 | #X connect 5 0 6 1; 158 | #X connect 6 0 4 0; 159 | #X connect 7 0 5 0; 160 | #X connect 7 1 3 0; 161 | #X connect 8 0 0 0; 162 | #X restore 250 597 pd a1; 163 | #N canvas 275 137 208 373 a2 0; 164 | #X obj 38 41 r \$0-wcos; 165 | #X obj 38 319 outlet; 166 | #X obj 53 133 - 1; 167 | #X obj 38 163 *; 168 | #X obj 38 221 +; 169 | #X obj 80 197 + 1; 170 | #X obj 53 87 r \$0-A; 171 | #X obj 53 109 t f f; 172 | #X obj 38 287 -; 173 | #X obj 53 253 r \$0-sqrtA-alpha-2; 174 | #X connect 0 0 3 0; 175 | #X connect 2 0 3 1; 176 | #X connect 3 0 4 0; 177 | #X connect 4 0 8 0; 178 | #X connect 5 0 4 1; 179 | #X connect 6 0 7 0; 180 | #X connect 7 0 2 0; 181 | #X connect 7 1 5 0; 182 | #X connect 8 0 1 0; 183 | #X connect 9 0 8 1; 184 | #X restore 290 597 pd a2; 185 | #X obj 315 277 clip -24 24; 186 | #X obj 342 450 s \$0-A; 187 | #X obj 315 307 / 40; 188 | #X obj 315 337 t b f; 189 | #X msg 315 367 10; 190 | #X obj 315 397 pow 0; 191 | #X obj 288 50 inlet dBGain; 192 | #X obj 288 70 t b f; 193 | #X text 407 395 w0 = 2*pi*f0*Fs; 194 | #X text 407 435 A = 10^(dbGain/40); 195 | #X text 407 415 alpha = sin(w0)/(2*Q); 196 | #N canvas 44 48 285 374 a0 0; 197 | #X obj 38 41 r \$0-wcos; 198 | #X obj 38 319 outlet; 199 | #X obj 53 133 - 1; 200 | #X obj 38 163 *; 201 | #X obj 38 221 +; 202 | #X obj 80 197 + 1; 203 | #X obj 53 87 r \$0-A; 204 | #X obj 53 109 t f f; 205 | #X obj 38 287 +; 206 | #X obj 53 253 r \$0-sqrtA-alpha-2; 207 | #X connect 0 0 3 0; 208 | #X connect 2 0 3 1; 209 | #X connect 3 0 4 0; 210 | #X connect 4 0 8 0; 211 | #X connect 5 0 4 1; 212 | #X connect 6 0 7 0; 213 | #X connect 7 0 2 0; 214 | #X connect 7 1 5 0; 215 | #X connect 8 0 1 0; 216 | #X connect 9 0 8 1; 217 | #X restore 41 480 pd a0; 218 | #X obj 26 143 f \$1; 219 | #X obj 217 240 f \$2; 220 | #X obj 315 241 f \$3; 221 | #X obj 116 75 t b b; 222 | #X text 371 662 b0 = A*((A+1) - (A-1)*cos(w0) + 2*sqrt(A)*alpha); 223 | #X text 371 682 b1 = 2*A*((A-1) - (A+1)*cos(w0)); 224 | #X text 371 702 b2 = A*((A+1) - (A-1)*cos(w0) - 2*sqrt(A)*alpha); 225 | #X text 371 602 a0 = (A+1) + (A-1)*cos(w0) + 2*sqrt(A)*alpha; 226 | #X text 371 622 a1 = -2*((A-1) + (A+1)*cos(w0)); 227 | #X text 371 642 a2 = (A+1) + (A-1)*cos(w0) - 2*sqrt(A)*alpha; 228 | #X obj 217 477 sqrt; 229 | #X obj 217 499 * 2; 230 | #X obj 202 521 *; 231 | #X obj 202 419 t f f; 232 | #X obj 26 597 t f f f f f; 233 | #X obj 315 419 t f f; 234 | #X text 23 9 Low Shelving filter with Q and gain - biquad filter coefficient 235 | generator; 236 | #X text 357 581 LowShelf:; 237 | #X obj 202 543 s \$0-sqrtA-alpha-2; 238 | #X connect 0 0 1 0; 239 | #X connect 1 0 3 0; 240 | #X connect 1 1 2 0; 241 | #X connect 2 0 4 0; 242 | #X connect 3 0 5 0; 243 | #X connect 6 0 0 0; 244 | #X connect 7 0 10 0; 245 | #X connect 8 0 12 0; 246 | #X connect 10 0 11 0; 247 | #X connect 11 0 12 1; 248 | #X connect 12 0 13 0; 249 | #X connect 13 0 67 0; 250 | #X connect 15 0 16 0; 251 | #X connect 16 0 17 0; 252 | #X connect 17 0 68 0; 253 | #X connect 18 0 32 0; 254 | #X connect 19 0 33 0; 255 | #X connect 20 0 34 0; 256 | #X connect 21 0 35 0; 257 | #X connect 22 0 36 0; 258 | #X connect 23 0 54 0; 259 | #X connect 23 1 55 1; 260 | #X connect 24 0 54 0; 261 | #X connect 25 0 23 0; 262 | #X connect 26 0 57 0; 263 | #X connect 31 0 15 0; 264 | #X connect 31 1 6 0; 265 | #X connect 31 2 55 0; 266 | #X connect 37 0 18 1; 267 | #X connect 38 0 19 1; 268 | #X connect 39 0 20 1; 269 | #X connect 40 0 21 1; 270 | #X connect 41 0 22 1; 271 | #X connect 42 0 44 0; 272 | #X connect 44 0 45 0; 273 | #X connect 45 0 46 0; 274 | #X connect 45 1 47 1; 275 | #X connect 46 0 47 0; 276 | #X connect 47 0 69 0; 277 | #X connect 48 0 49 0; 278 | #X connect 49 0 54 0; 279 | #X connect 49 1 56 0; 280 | #X connect 53 0 15 1; 281 | #X connect 54 0 31 0; 282 | #X connect 55 0 7 0; 283 | #X connect 56 0 42 0; 284 | #X connect 57 0 54 0; 285 | #X connect 57 1 56 0; 286 | #X connect 64 0 65 0; 287 | #X connect 65 0 66 1; 288 | #X connect 66 0 72 0; 289 | #X connect 67 0 66 0; 290 | #X connect 67 1 9 0; 291 | #X connect 68 0 18 0; 292 | #X connect 68 1 19 0; 293 | #X connect 68 2 20 0; 294 | #X connect 68 3 21 0; 295 | #X connect 68 4 22 0; 296 | #X connect 69 0 64 0; 297 | #X connect 69 1 43 0; 298 | -------------------------------------------------------------------------------- /hv.filters/notch.coeffs.pd: -------------------------------------------------------------------------------- 1 | #N canvas 633 22 613 742 10; 2 | #N canvas 0 22 783 567 hz2rad 0; 3 | #X obj 194 113 samplerate~; 4 | #X obj 194 71 loadbang; 5 | #X obj 194 185 atan; 6 | #X msg 194 160 1; 7 | #X text 382 53 w = 2 * pi * f / SR; 8 | #X obj 194 207 * 8; 9 | #X obj 194 137 t b a; 10 | #X obj 194 230 / 44100; 11 | #X text 260 232 2 * pi / SR; 12 | #X obj 119 269 *; 13 | #X obj 119 35 inlet; 14 | #X obj 119 298 outlet; 15 | #X text 175 300 w(rad); 16 | #X text 167 35 freq(Hz); 17 | #X connect 0 0 6 0; 18 | #X connect 1 0 0 0; 19 | #X connect 2 0 5 0; 20 | #X connect 3 0 2 0; 21 | #X connect 5 0 7 0; 22 | #X connect 6 0 3 0; 23 | #X connect 6 1 7 1; 24 | #X connect 7 0 9 1; 25 | #X connect 9 0 11 0; 26 | #X connect 10 0 9 0; 27 | #X restore 41 346 pd hz2rad; 28 | #X obj 41 376 t f f; 29 | #X obj 109 406 sin; 30 | #X obj 41 406 cos; 31 | #X obj 109 446 s \$0-wsin; 32 | #X obj 41 446 s \$0-wcos; 33 | #X obj 41 286 clip 20 20000; 34 | #X obj 203 286 clip 0.1 100; 35 | #X obj 138 316 r \$0-wsin; 36 | #X obj 188 446 s \$0-alpha; 37 | #X msg 203 316 1 \$1; 38 | #X obj 203 346 /; 39 | #X obj 188 376 *; 40 | #X obj 188 406 * 0.5; 41 | #N canvas 0 22 450 300 a0 0; 42 | #X obj 194 65 r \$0-alpha; 43 | #X obj 194 200 outlet; 44 | #X obj 194 139 + 1; 45 | #X connect 0 0 2 0; 46 | #X connect 2 0 1 0; 47 | #X restore 37 486 pd a0; 48 | #N canvas 0 22 450 300 a1 0; 49 | #X obj 194 109 outlet; 50 | #X obj 194 65 r \$0-wcos; 51 | #X obj 194 87 * -2; 52 | #X connect 1 0 2 0; 53 | #X connect 2 0 0 0; 54 | #X restore 244 606 pd a1; 55 | #N canvas 0 22 450 300 a2 0; 56 | #X obj 196 65 r \$0-alpha; 57 | #X obj 196 187 outlet; 58 | #X msg 196 129 1 \$1; 59 | #X obj 196 151 -; 60 | #X connect 0 0 2 0; 61 | #X connect 2 0 3 0; 62 | #X connect 3 0 1 0; 63 | #X restore 286 606 pd a2; 64 | #X text 308 83 (b0/a0) + (b1/a0)*z^(-1) + (b2/a0)*z^(-2); 65 | #X obj 22 516 f; 66 | #X msg 22 546 1 \$1; 67 | #X obj 22 576 /; 68 | #X obj 208 667 *; 69 | #X obj 271 667 *; 70 | #X text 270 424 w0 = 2*pi*f0*Fs; 71 | #X text 270 444 alpha = sin(w0)/(2*Q); 72 | #X obj 197 81 t b f; 73 | #X obj 22 61 inlet freq; 74 | #X obj 197 61 inlet q; 75 | #X obj 103 61 loadbang; 76 | #X text 379 610 a0 = 1 + alpha; 77 | #X text 379 650 a2 = 1 - alpha; 78 | #X text 379 630 a1 = -2*cos(w0); 79 | #X text 311 120 1 + (a1/a0)*z^(-1) + (a2/a0)*z^(-2); 80 | #X text 267 59 Audio-Cookbook:; 81 | #X text 267 149 http://musicdsp.org/files/Audio-EQ-Cookbook.txt; 82 | #X text 269 101 H(z) = -----------------------------------------; 83 | #X obj 22 191 t b a b; 84 | #X obj 84 708 outlet b1; 85 | #X obj 146 708 outlet b2; 86 | #X obj 208 708 outlet a1; 87 | #X obj 271 708 outlet a2; 88 | #X text 379 690 b1 = 0; 89 | #X text 379 670 b0 = alpha; 90 | #X text 368 590 BPF: (constant 0dB peak gain); 91 | #X text 379 710 b2 = -alpha; 92 | #X obj 22 708 outlet b0; 93 | #X obj 22 152 f \$1; 94 | #X obj 203 249 f \$2; 95 | #X text 19 10 Notch filter with Q - biquad filter coefficient generator 96 | ; 97 | #X obj 84 666 *; 98 | #N canvas 155 200 450 300 b1 0; 99 | #X obj 124 109 outlet; 100 | #X obj 124 65 r \$0-wcos; 101 | #X obj 124 87 * -2; 102 | #X connect 1 0 2 0; 103 | #X connect 2 0 0 0; 104 | #X restore 122 606 pd b1; 105 | #X obj 22 606 t f f f f f; 106 | #X connect 0 0 1 0; 107 | #X connect 1 0 3 0; 108 | #X connect 1 1 2 0; 109 | #X connect 2 0 4 0; 110 | #X connect 3 0 5 0; 111 | #X connect 6 0 0 0; 112 | #X connect 7 0 10 0; 113 | #X connect 8 0 12 0; 114 | #X connect 10 0 11 0; 115 | #X connect 11 0 12 1; 116 | #X connect 12 0 13 0; 117 | #X connect 13 0 9 0; 118 | #X connect 14 0 18 1; 119 | #X connect 15 0 21 1; 120 | #X connect 16 0 22 1; 121 | #X connect 18 0 19 0; 122 | #X connect 19 0 20 0; 123 | #X connect 20 0 51 0; 124 | #X connect 21 0 39 0; 125 | #X connect 22 0 40 0; 126 | #X connect 25 0 46 0; 127 | #X connect 25 1 47 1; 128 | #X connect 26 0 46 0; 129 | #X connect 27 0 25 0; 130 | #X connect 28 0 46 0; 131 | #X connect 36 0 18 0; 132 | #X connect 36 1 6 0; 133 | #X connect 36 2 47 0; 134 | #X connect 46 0 36 0; 135 | #X connect 47 0 7 0; 136 | #X connect 49 0 37 0; 137 | #X connect 50 0 49 1; 138 | #X connect 51 0 45 0; 139 | #X connect 51 1 49 0; 140 | #X connect 51 2 38 0; 141 | #X connect 51 3 21 0; 142 | #X connect 51 4 22 0; 143 | -------------------------------------------------------------------------------- /hv.filters/notch.pd: -------------------------------------------------------------------------------- 1 | #N canvas 539 251 348 289 10; 2 | #X obj 35 206 outlet~; 3 | #X obj 35 44 inlet~; 4 | #N canvas 140 389 549 400 @hv_obj 0; 5 | #X obj 133 65 inlet~ b0; 6 | #X obj 204 65 inlet~ b1; 7 | #X obj 276 65 inlet~ b2; 8 | #X obj 347 65 inlet~ a1; 9 | #X obj 417 65 inlet~ a2; 10 | #X obj 51 65 inlet~; 11 | #N canvas 457 278 463 637 zeros 0; 12 | #X obj 114 473 czero~; 13 | #X obj 114 523 czero~; 14 | #X obj 114 583 outlet~; 15 | #X obj 147 553 outlet~; 16 | #X obj 206 74 inlet~ b0; 17 | #X obj 277 74 inlet~ b1; 18 | #X obj 349 74 inlet~ b2; 19 | #X obj 114 74 inlet~; 20 | #X obj 206 242 *~ -1; 21 | #X obj 206 264 *~ 0.5; 22 | #X obj 299 227 *~; 23 | #X obj 302 293 -~; 24 | #X obj 326 248 *~ 4; 25 | #X obj 326 226 *~; 26 | #X obj 351 319 abs~; 27 | #X obj 351 363 *~ 0.5; 28 | #X obj 349 401 /~; 29 | #N canvas 490 269 488 402 location 0; 30 | #X obj 63 64 inlet~; 31 | #X obj 165 71 inlet~; 32 | #X obj 334 70 inlet~; 33 | #X obj 63 314 outlet~; 34 | #X obj 132 316 outlet~; 35 | #X obj 244 317 outlet~; 36 | #X obj 336 319 outlet~; 37 | #N canvas 0 22 450 300 gte 0; 38 | #X obj 148 48 inlet~; 39 | #X obj 43 48 inlet~; 40 | #X obj 43 143 outlet~; 41 | #N canvas 467 216 450 300 @hv_obj 0; 42 | #X obj 217 60 inlet~; 43 | #X obj 120 60 inlet~; 44 | #X obj 170 183 outlet~; 45 | #X connect 1 0 2 0; 46 | #X restore 43 119 pd @hv_obj __and~f; 47 | #X obj 148 97 sig~ 1; 48 | #N canvas 249 541 148 189 @hv_obj 0; 49 | #X obj 23 69 -~; 50 | #X obj 23 94 clip~ -1e-37 0; 51 | #X obj 23 18 inlet~; 52 | #X obj 67 19 inlet~; 53 | #X obj 23 159 outlet~; 54 | #X obj 23 136 *~ 1e+37; 55 | #X obj 23 44 min~; 56 | #X obj 23 115 +~ 1e-37; 57 | #X connect 0 0 1 0; 58 | #X connect 1 0 7 0; 59 | #X connect 2 0 6 0; 60 | #X connect 3 0 6 1; 61 | #X connect 3 0 0 1; 62 | #X connect 5 0 4 0; 63 | #X connect 6 0 0 0; 64 | #X connect 7 0 5 0; 65 | #X restore 43 71 pd @hv_obj __gte~f; 66 | #X connect 0 0 5 1; 67 | #X connect 1 0 5 0; 68 | #X connect 3 0 2 0; 69 | #X connect 4 0 3 1; 70 | #X connect 5 0 3 0; 71 | #X restore 164 154 pd gte; 72 | #N canvas 0 22 281 183 lte 0; 73 | #X obj 150 34 inlet~; 74 | #X obj 45 34 inlet~; 75 | #X obj 45 129 outlet~; 76 | #N canvas 467 216 450 300 @hv_obj 0; 77 | #X obj 217 60 inlet~; 78 | #X obj 120 60 inlet~; 79 | #X obj 170 183 outlet~; 80 | #X connect 1 0 2 0; 81 | #X restore 45 105 pd @hv_obj __and~f; 82 | #X obj 150 83 sig~ 1; 83 | #N canvas 715 101 191 233 @hv_obj 0; 84 | #X obj 49 83 -~; 85 | #X obj 50 109 clip~ -1e-37 0; 86 | #X obj 49 32 inlet~; 87 | #X obj 93 33 inlet~; 88 | #X obj 50 174 outlet~; 89 | #X obj 50 151 *~ 1e+37; 90 | #X obj 49 58 min~; 91 | #X obj 50 130 +~ 1e-37; 92 | #X connect 0 0 1 0; 93 | #X connect 1 0 7 0; 94 | #X connect 2 0 6 0; 95 | #X connect 2 0 0 1; 96 | #X connect 3 0 6 1; 97 | #X connect 5 0 4 0; 98 | #X connect 6 0 0 0; 99 | #X connect 7 0 5 0; 100 | #X restore 45 57 pd @hv_obj __lte~f; 101 | #X connect 0 0 5 1; 102 | #X connect 1 0 5 0; 103 | #X connect 3 0 2 0; 104 | #X connect 4 0 3 1; 105 | #X connect 5 0 3 0; 106 | #X restore 229 154 pd lte; 107 | #X obj 65 257 +~; 108 | #X obj 264 101 sig~ 0; 109 | #X obj 256 206 *~; 110 | #X obj 338 206 *~; 111 | #X obj 244 290 -~; 112 | #X obj 340 289 *~ -1; 113 | #X connect 0 0 9 0; 114 | #X connect 0 0 13 0; 115 | #X connect 1 0 7 0; 116 | #X connect 1 0 8 0; 117 | #X connect 2 0 11 1; 118 | #X connect 2 0 12 1; 119 | #X connect 7 0 11 0; 120 | #X connect 8 0 12 0; 121 | #X connect 9 0 3 0; 122 | #X connect 10 0 7 1; 123 | #X connect 10 0 8 1; 124 | #X connect 11 0 9 1; 125 | #X connect 11 0 13 1; 126 | #X connect 12 0 4 0; 127 | #X connect 12 0 14 0; 128 | #X connect 13 0 5 0; 129 | #X connect 14 0 6 0; 130 | #X restore 136 443 pd location; 131 | #X obj 351 341 sqrt~; 132 | #X obj 206 301 /~; 133 | #X connect 0 0 1 0; 134 | #X connect 0 1 1 1; 135 | #X connect 1 0 2 0; 136 | #X connect 1 1 3 0; 137 | #X connect 4 0 13 0; 138 | #X connect 4 0 16 1; 139 | #X connect 4 0 19 1; 140 | #X connect 5 0 8 0; 141 | #X connect 5 0 10 1; 142 | #X connect 5 0 10 0; 143 | #X connect 6 0 13 1; 144 | #X connect 7 0 0 0; 145 | #X connect 8 0 9 0; 146 | #X connect 9 0 19 0; 147 | #X connect 10 0 11 0; 148 | #X connect 11 0 14 0; 149 | #X connect 11 0 17 1; 150 | #X connect 12 0 11 1; 151 | #X connect 13 0 12 0; 152 | #X connect 14 0 18 0; 153 | #X connect 15 0 16 0; 154 | #X connect 16 0 17 2; 155 | #X connect 17 0 0 2; 156 | #X connect 17 1 0 3; 157 | #X connect 17 2 1 2; 158 | #X connect 17 3 1 3; 159 | #X connect 18 0 15 0; 160 | #X connect 19 0 17 0; 161 | #X restore 51 215 pd zeros; 162 | #X obj 51 155 *~; 163 | #N canvas 354 142 470 501 poles 0; 164 | #X obj 63 335 cpole~; 165 | #X obj 63 376 cpole~; 166 | #X obj 63 433 outlet~; 167 | #X obj 63 44 inlet~; 168 | #X obj 113 44 inlet~; 169 | #X obj 176 44 inlet~ a1; 170 | #X obj 324 39 inlet~ a2; 171 | #N canvas 490 269 488 402 location 0; 172 | #X obj 63 64 inlet~; 173 | #X obj 165 71 inlet~; 174 | #X obj 334 70 inlet~; 175 | #X obj 63 314 outlet~; 176 | #X obj 132 316 outlet~; 177 | #X obj 244 317 outlet~; 178 | #X obj 336 319 outlet~; 179 | #N canvas 0 22 450 300 gte 0; 180 | #X obj 148 48 inlet~; 181 | #X obj 43 48 inlet~; 182 | #X obj 43 143 outlet~; 183 | #N canvas 467 216 450 300 @hv_obj 0; 184 | #X obj 217 60 inlet~; 185 | #X obj 120 60 inlet~; 186 | #X obj 170 183 outlet~; 187 | #X connect 1 0 2 0; 188 | #X restore 43 119 pd @hv_obj __and~f; 189 | #X obj 148 97 sig~ 1; 190 | #N canvas 249 541 148 189 @hv_obj 0; 191 | #X obj 23 69 -~; 192 | #X obj 23 94 clip~ -1e-37 0; 193 | #X obj 23 18 inlet~; 194 | #X obj 67 19 inlet~; 195 | #X obj 23 159 outlet~; 196 | #X obj 23 136 *~ 1e+37; 197 | #X obj 23 44 min~; 198 | #X obj 23 115 +~ 1e-37; 199 | #X connect 0 0 1 0; 200 | #X connect 1 0 7 0; 201 | #X connect 2 0 6 0; 202 | #X connect 3 0 6 1; 203 | #X connect 3 0 0 1; 204 | #X connect 5 0 4 0; 205 | #X connect 6 0 0 0; 206 | #X connect 7 0 5 0; 207 | #X restore 43 71 pd @hv_obj __gte~f; 208 | #X connect 0 0 5 1; 209 | #X connect 1 0 5 0; 210 | #X connect 3 0 2 0; 211 | #X connect 4 0 3 1; 212 | #X connect 5 0 3 0; 213 | #X restore 164 154 pd gte; 214 | #N canvas 0 22 281 183 lte 0; 215 | #X obj 150 34 inlet~; 216 | #X obj 45 34 inlet~; 217 | #X obj 45 129 outlet~; 218 | #N canvas 467 216 450 300 @hv_obj 0; 219 | #X obj 217 60 inlet~; 220 | #X obj 120 60 inlet~; 221 | #X obj 170 183 outlet~; 222 | #X connect 1 0 2 0; 223 | #X restore 45 105 pd @hv_obj __and~f; 224 | #X obj 150 83 sig~ 1; 225 | #N canvas 715 101 191 233 @hv_obj 0; 226 | #X obj 49 83 -~; 227 | #X obj 50 109 clip~ -1e-37 0; 228 | #X obj 49 32 inlet~; 229 | #X obj 93 33 inlet~; 230 | #X obj 50 174 outlet~; 231 | #X obj 50 151 *~ 1e+37; 232 | #X obj 49 58 min~; 233 | #X obj 50 130 +~ 1e-37; 234 | #X connect 0 0 1 0; 235 | #X connect 1 0 7 0; 236 | #X connect 2 0 6 0; 237 | #X connect 2 0 0 1; 238 | #X connect 3 0 6 1; 239 | #X connect 5 0 4 0; 240 | #X connect 6 0 0 0; 241 | #X connect 7 0 5 0; 242 | #X restore 45 57 pd @hv_obj __lte~f; 243 | #X connect 0 0 5 1; 244 | #X connect 1 0 5 0; 245 | #X connect 3 0 2 0; 246 | #X connect 4 0 3 1; 247 | #X connect 5 0 3 0; 248 | #X restore 229 154 pd lte; 249 | #X obj 65 257 +~; 250 | #X obj 264 101 sig~ 0; 251 | #X obj 256 206 *~; 252 | #X obj 338 206 *~; 253 | #X obj 244 290 -~; 254 | #X obj 340 289 *~ -1; 255 | #X connect 0 0 9 0; 256 | #X connect 0 0 13 0; 257 | #X connect 1 0 7 0; 258 | #X connect 1 0 8 0; 259 | #X connect 2 0 11 1; 260 | #X connect 2 0 12 1; 261 | #X connect 7 0 11 0; 262 | #X connect 8 0 12 0; 263 | #X connect 9 0 3 0; 264 | #X connect 10 0 7 1; 265 | #X connect 10 0 8 1; 266 | #X connect 11 0 9 1; 267 | #X connect 11 0 13 1; 268 | #X connect 12 0 4 0; 269 | #X connect 12 0 14 0; 270 | #X connect 13 0 5 0; 271 | #X connect 14 0 6 0; 272 | #X restore 85 309 pd location; 273 | #X obj 161 144 *~ 0.5; 274 | #X obj 248 141 *~; 275 | #X obj 248 174 +~; 276 | #X obj 298 136 *~ 4; 277 | #X obj 248 196 abs~; 278 | #X obj 248 240 *~ 0.5; 279 | #X obj 248 218 sqrt~; 280 | #X connect 0 0 1 0; 281 | #X connect 0 1 1 1; 282 | #X connect 1 0 2 0; 283 | #X connect 3 0 0 0; 284 | #X connect 4 0 0 1; 285 | #X connect 5 0 8 0; 286 | #X connect 5 0 9 0; 287 | #X connect 5 0 9 1; 288 | #X connect 6 0 11 0; 289 | #X connect 7 0 0 2; 290 | #X connect 7 1 0 3; 291 | #X connect 7 2 1 2; 292 | #X connect 7 3 1 3; 293 | #X connect 8 0 7 0; 294 | #X connect 9 0 10 0; 295 | #X connect 10 0 7 1; 296 | #X connect 10 0 12 0; 297 | #X connect 11 0 10 1; 298 | #X connect 12 0 14 0; 299 | #X connect 13 0 7 2; 300 | #X connect 14 0 13 0; 301 | #X restore 51 275 pd poles; 302 | #X obj 51 330 outlet~; 303 | #X obj 347 97 *~ -1; 304 | #X obj 417 97 *~ -1; 305 | #X connect 0 0 6 1; 306 | #X connect 0 0 7 1; 307 | #X connect 1 0 6 2; 308 | #X connect 2 0 6 3; 309 | #X connect 3 0 10 0; 310 | #X connect 4 0 11 0; 311 | #X connect 5 0 7 0; 312 | #X connect 6 0 8 0; 313 | #X connect 6 1 8 1; 314 | #X connect 7 0 6 0; 315 | #X connect 8 0 9 0; 316 | #X connect 10 0 8 2; 317 | #X connect 11 0 8 3; 318 | #X restore 35 153 pd @hv_obj biquad; 319 | #X obj 94 43 inlet freq; 320 | #X obj 205 42 inlet q; 321 | #N canvas 0 22 173 173 s 0; 322 | #X obj 37 46 inlet; 323 | #X obj 37 90 line~; 324 | #X obj 37 112 outlet~; 325 | #X msg 37 68 \$1 10; 326 | #X connect 0 0 3 0; 327 | #X connect 1 0 2 0; 328 | #X connect 3 0 1 0; 329 | #X restore 210 110 pd s; 330 | #N canvas 0 22 173 173 s 0; 331 | #X obj 37 46 inlet; 332 | #X obj 37 90 line~; 333 | #X obj 37 112 outlet~; 334 | #X msg 37 68 \$1 10; 335 | #X connect 0 0 3 0; 336 | #X connect 1 0 2 0; 337 | #X connect 3 0 1 0; 338 | #X restore 248 110 pd s; 339 | #N canvas 0 22 173 173 s 0; 340 | #X obj 37 46 inlet; 341 | #X obj 37 90 line~; 342 | #X obj 37 112 outlet~; 343 | #X msg 37 68 \$1 10; 344 | #X connect 0 0 3 0; 345 | #X connect 1 0 2 0; 346 | #X connect 3 0 1 0; 347 | #X restore 134 110 pd s; 348 | #N canvas 0 22 173 173 s 0; 349 | #X obj 37 46 inlet; 350 | #X obj 37 90 line~; 351 | #X obj 37 112 outlet~; 352 | #X msg 37 68 \$1 10; 353 | #X connect 0 0 3 0; 354 | #X connect 1 0 2 0; 355 | #X connect 3 0 1 0; 356 | #X restore 94 110 pd s; 357 | #N canvas 0 22 173 173 s 0; 358 | #X obj 37 46 inlet; 359 | #X obj 37 90 line~; 360 | #X obj 37 112 outlet~; 361 | #X msg 37 68 \$1 10; 362 | #X connect 0 0 3 0; 363 | #X connect 1 0 2 0; 364 | #X connect 3 0 1 0; 365 | #X restore 174 110 pd s; 366 | #X obj 94 74 notch.coeffs \$1 \$2; 367 | #X connect 1 0 2 0; 368 | #X connect 2 0 0 0; 369 | #X connect 3 0 10 0; 370 | #X connect 4 0 10 1; 371 | #X connect 5 0 2 4; 372 | #X connect 6 0 2 5; 373 | #X connect 7 0 2 2; 374 | #X connect 8 0 2 1; 375 | #X connect 9 0 2 3; 376 | #X connect 10 0 8 0; 377 | #X connect 10 1 7 0; 378 | #X connect 10 2 9 0; 379 | #X connect 10 3 5 0; 380 | #X connect 10 4 6 0; 381 | -------------------------------------------------------------------------------- /hv.filters/peak.coeffs.pd: -------------------------------------------------------------------------------- 1 | #N canvas 269 22 680 743 10; 2 | #N canvas 0 22 783 567 hz2rad 0; 3 | #X obj 194 113 samplerate~; 4 | #X obj 194 71 loadbang; 5 | #X obj 194 185 atan; 6 | #X msg 194 160 1; 7 | #X text 382 53 w = 2 * pi * f / SR; 8 | #X obj 194 207 * 8; 9 | #X obj 194 137 t b a; 10 | #X obj 194 230 / 44100; 11 | #X text 260 232 2 * pi / SR; 12 | #X obj 119 269 *; 13 | #X obj 119 35 inlet; 14 | #X obj 119 298 outlet; 15 | #X text 175 300 w(rad); 16 | #X text 167 35 freq(Hz); 17 | #X connect 0 0 6 0; 18 | #X connect 1 0 0 0; 19 | #X connect 2 0 5 0; 20 | #X connect 3 0 2 0; 21 | #X connect 5 0 7 0; 22 | #X connect 6 0 3 0; 23 | #X connect 6 1 7 1; 24 | #X connect 7 0 9 1; 25 | #X connect 9 0 11 0; 26 | #X connect 10 0 9 0; 27 | #X restore 46 341 pd hz2rad; 28 | #X obj 46 371 t f f; 29 | #X obj 114 401 sin; 30 | #X obj 46 401 cos; 31 | #X obj 114 441 s \$0-wsin; 32 | #X obj 46 441 s \$0-wcos; 33 | #X obj 46 281 clip 20 20000; 34 | #X obj 218 281 clip 0.1 100; 35 | #X obj 143 311 r \$0-wsin; 36 | #X obj 203 441 s \$0-alpha; 37 | #X msg 218 311 1 \$1; 38 | #X obj 218 341 /; 39 | #X obj 203 371 *; 40 | #X obj 203 401 * 0.5; 41 | #X text 395 136 (b0/a0) + (b1/a0)*z^(-1) + (b2/a0)*z^(-2); 42 | #X obj 27 511 f; 43 | #X msg 27 541 1 \$1; 44 | #X obj 27 571 /; 45 | #X obj 27 661 *; 46 | #X obj 89 661 *; 47 | #X obj 151 661 *; 48 | #X obj 213 662 *; 49 | #X obj 276 662 *; 50 | #X obj 212 76 t b f; 51 | #X obj 27 56 inlet freq; 52 | #X obj 212 56 inlet q; 53 | #X obj 117 57 loadbang; 54 | #X text 398 173 1 + (a1/a0)*z^(-1) + (a2/a0)*z^(-2); 55 | #X text 354 112 Audio-Cookbook:; 56 | #X text 354 202 http://musicdsp.org/files/Audio-EQ-Cookbook.txt; 57 | #X text 356 154 H(z) = -----------------------------------------; 58 | #X obj 27 601 t f f f f f b; 59 | #X obj 27 186 t b a b; 60 | #X obj 27 703 outlet b0; 61 | #X obj 89 703 outlet b1; 62 | #X obj 151 703 outlet b2; 63 | #X obj 213 703 outlet a1; 64 | #X obj 276 703 outlet a2; 65 | #N canvas 0 22 450 300 b0 0; 66 | #X obj 54 65 r \$0-wcos; 67 | #X obj 124 65 r \$0-wsin; 68 | #X obj 272 65 r \$0-A; 69 | #X obj 194 65 r \$0-alpha; 70 | #X obj 194 181 outlet; 71 | #X obj 194 119 *; 72 | #X obj 194 151 + 1; 73 | #X connect 2 0 5 1; 74 | #X connect 3 0 5 0; 75 | #X connect 5 0 6 0; 76 | #X connect 6 0 4 0; 77 | #X restore 121 601 pd b0; 78 | #N canvas 0 22 450 300 b1 0; 79 | #X obj 54 65 r \$0-wcos; 80 | #X obj 124 65 r \$0-wsin; 81 | #X obj 274 65 r \$0-A; 82 | #X obj 194 65 r \$0-alpha; 83 | #X obj 54 178 outlet; 84 | #X obj 54 127 * -2; 85 | #X connect 0 0 5 0; 86 | #X connect 5 0 4 0; 87 | #X restore 165 601 pd b1; 88 | #N canvas 0 22 450 300 b2 0; 89 | #X obj 54 65 r \$0-wcos; 90 | #X obj 124 65 r \$0-wsin; 91 | #X obj 272 65 r \$0-A; 92 | #X obj 194 65 r \$0-alpha; 93 | #X obj 194 198 outlet; 94 | #X obj 194 124 *; 95 | #X msg 194 146 1 \$1; 96 | #X obj 194 168 -; 97 | #X connect 2 0 5 1; 98 | #X connect 3 0 5 0; 99 | #X connect 5 0 6 0; 100 | #X connect 6 0 7 0; 101 | #X connect 7 0 4 0; 102 | #X restore 209 601 pd b2; 103 | #N canvas 0 22 450 300 a1 0; 104 | #X obj 54 65 r \$0-wcos; 105 | #X obj 124 65 r \$0-wsin; 106 | #X obj 274 65 r \$0-A; 107 | #X obj 194 65 r \$0-alpha; 108 | #X obj 54 198 outlet; 109 | #X obj 54 127 * -2; 110 | #X connect 0 0 5 0; 111 | #X connect 5 0 4 0; 112 | #X restore 251 601 pd a1; 113 | #N canvas 0 22 450 300 a2 0; 114 | #X obj 54 65 r \$0-wcos; 115 | #X obj 124 65 r \$0-wsin; 116 | #X obj 268 65 r \$0-A; 117 | #X obj 196 65 r \$0-alpha; 118 | #X obj 196 187 outlet; 119 | #X obj 196 107 /; 120 | #X msg 196 129 1 \$1; 121 | #X obj 196 151 -; 122 | #X connect 2 0 5 1; 123 | #X connect 3 0 5 0; 124 | #X connect 5 0 6 0; 125 | #X connect 6 0 7 0; 126 | #X connect 7 0 4 0; 127 | #X restore 291 601 pd a2; 128 | #X text 372 666 b0 = 1 + alpha*A; 129 | #X text 372 686 b1 = -2*cos(w0); 130 | #X text 372 706 b2 = 1 - alpha*A; 131 | #X text 372 606 a0 = 1 + alpha/A; 132 | #X text 372 626 a1 = -2*cos(w0); 133 | #X text 372 646 a2 = 1 - alpha/A; 134 | #X text 358 585 Peaking EQ:; 135 | #X obj 316 281 clip -24 24; 136 | #X obj 316 441 s \$0-A; 137 | #X obj 316 311 / 40; 138 | #X obj 316 341 t b f; 139 | #X msg 316 371 10; 140 | #X obj 316 401 pow 0; 141 | #X obj 289 54 inlet dBGain; 142 | #X obj 289 74 t b f; 143 | #X text 385 401 w0 = 2*pi*f0*Fs; 144 | #X text 385 441 A = 10^(dbGain/40); 145 | #X text 385 421 alpha = sin(w0)/(2*Q); 146 | #N canvas 0 22 450 300 a0 0; 147 | #X obj 54 65 r \$0-wcos; 148 | #X obj 124 65 r \$0-wsin; 149 | #X obj 270 65 r \$0-A; 150 | #X obj 194 65 r \$0-alpha; 151 | #X obj 194 200 outlet; 152 | #X obj 194 139 + 1; 153 | #X obj 194 117 /; 154 | #X connect 2 0 6 1; 155 | #X connect 3 0 6 0; 156 | #X connect 5 0 4 0; 157 | #X connect 6 0 5 0; 158 | #X restore 42 484 pd a0; 159 | #X obj 27 147 f \$1; 160 | #X obj 218 244 f \$2; 161 | #X obj 316 245 f \$3; 162 | #X obj 117 79 t b b; 163 | #X text 24 25 Peaking EQ with Q and gain - biquad filter coefficient 164 | generator; 165 | #X connect 0 0 1 0; 166 | #X connect 1 0 3 0; 167 | #X connect 1 1 2 0; 168 | #X connect 2 0 4 0; 169 | #X connect 3 0 5 0; 170 | #X connect 6 0 0 0; 171 | #X connect 7 0 10 0; 172 | #X connect 8 0 12 0; 173 | #X connect 10 0 11 0; 174 | #X connect 11 0 12 1; 175 | #X connect 12 0 13 0; 176 | #X connect 13 0 9 0; 177 | #X connect 15 0 16 0; 178 | #X connect 16 0 17 0; 179 | #X connect 17 0 31 0; 180 | #X connect 18 0 33 0; 181 | #X connect 19 0 34 0; 182 | #X connect 20 0 35 0; 183 | #X connect 21 0 36 0; 184 | #X connect 22 0 37 0; 185 | #X connect 23 0 62 0; 186 | #X connect 23 1 63 1; 187 | #X connect 24 0 62 0; 188 | #X connect 25 0 23 0; 189 | #X connect 26 0 65 0; 190 | #X connect 31 0 18 0; 191 | #X connect 31 1 19 0; 192 | #X connect 31 2 20 0; 193 | #X connect 31 3 21 0; 194 | #X connect 31 4 22 0; 195 | #X connect 32 0 15 0; 196 | #X connect 32 1 6 0; 197 | #X connect 32 2 63 0; 198 | #X connect 38 0 18 1; 199 | #X connect 39 0 19 1; 200 | #X connect 40 0 20 1; 201 | #X connect 41 0 21 1; 202 | #X connect 42 0 22 1; 203 | #X connect 50 0 52 0; 204 | #X connect 52 0 53 0; 205 | #X connect 53 0 54 0; 206 | #X connect 53 1 55 1; 207 | #X connect 54 0 55 0; 208 | #X connect 55 0 51 0; 209 | #X connect 56 0 57 0; 210 | #X connect 57 0 62 0; 211 | #X connect 57 1 64 0; 212 | #X connect 61 0 15 1; 213 | #X connect 62 0 32 0; 214 | #X connect 63 0 7 0; 215 | #X connect 64 0 50 0; 216 | #X connect 65 0 62 0; 217 | #X connect 65 1 64 0; 218 | -------------------------------------------------------------------------------- /hv.filters/spectrolog.pd: -------------------------------------------------------------------------------- 1 | #N canvas 153 164 622 432 10; 2 | #N canvas 556 61 872 789 FFT_Analyse 0; 3 | #X obj 101 102 inlet~; 4 | #X obj 101 332 *~; 5 | #X obj 132 331 *~; 6 | #X obj 101 356 +~; 7 | #X obj 102 377 powtodb~; 8 | #N canvas 0 22 346 535 init_input_window 0; 9 | #X obj 73 217 / 10; 10 | #X obj 55 278 line 0 0.1; 11 | #X msg 119 246 0; 12 | #X obj 54 176 t f f b; 13 | #X obj 54 239 pack; 14 | #X obj 55 301 t f f; 15 | #X obj 54 152 - 1; 16 | #X obj 74 114 t f f; 17 | #X obj 55 359 * 3.14159; 18 | #X obj 55 381 sin; 19 | #X msg 55 401 \$1 \$1; 20 | #X obj 55 423 *; 21 | #X text 119 334 0...0.99; 22 | #X text 128 359 0...pi; 23 | #X text 79 423 hanning; 24 | #X msg 55 88 4096; 25 | #X obj 100 88 f 4096; 26 | #X obj 99 60 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 27 | -1; 28 | #X obj 99 39 loadbang; 29 | #X obj 74 333 / 4096; 30 | #X obj 55 448 tabwrite \$0-window; 31 | #X text 86 381 half-sine; 32 | #X connect 0 0 4 1; 33 | #X connect 1 0 5 0; 34 | #X connect 2 0 1 0; 35 | #X connect 3 0 4 0; 36 | #X connect 3 1 0 0; 37 | #X connect 3 2 2 0; 38 | #X connect 4 0 1 0; 39 | #X connect 5 0 19 0; 40 | #X connect 5 1 20 1; 41 | #X connect 6 0 3 0; 42 | #X connect 7 0 6 0; 43 | #X connect 7 1 19 1; 44 | #X connect 8 0 9 0; 45 | #X connect 9 0 10 0; 46 | #X connect 10 0 11 0; 47 | #X connect 11 0 20 0; 48 | #X connect 15 0 7 0; 49 | #X connect 16 0 7 0; 50 | #X connect 17 0 16 0; 51 | #X connect 18 0 17 0; 52 | #X connect 19 0 8 0; 53 | #X restore 161 276 pd init_input_window; 54 | #N canvas 0 22 450 300 (subpatch) 0; 55 | #X array \$0-lin_scope 2048 float 0; 56 | #X coords 0 100 2047 0 200 140 1; 57 | #X restore 110 621 graph; 58 | #N canvas 0 22 822 328 init_norm 0; 59 | #X obj 43 230 outlet; 60 | #X obj 43 187 - 100; 61 | #X floatatom 43 208 9 0 0 0 - - -, f 9; 62 | #X text 108 169 leistung - techn. dB; 63 | #X msg 43 69 4096; 64 | #X obj 80 68 f 4096; 65 | #X obj 80 47 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 66 | -1; 67 | #X obj 80 26 loadbang; 68 | #X obj 43 167 rmstodb; 69 | #X obj 43 110 / 4; 70 | #X text 74 103 faktor 2 wegen hanning; 71 | #X text 74 114 weiterer faktor 2 \, weil wir nur die; 72 | #X text 73 124 erste haelfte des konjungiert komplexen spektrum sehen 73 | ; 74 | #X text 108 135 bzw. bearbeiten \, somit nur die haelfte der spektralen 75 | energie; 76 | #X connect 1 0 2 0; 77 | #X connect 2 0 0 0; 78 | #X connect 4 0 9 0; 79 | #X connect 5 0 9 0; 80 | #X connect 6 0 5 0; 81 | #X connect 7 0 6 0; 82 | #X connect 8 0 1 0; 83 | #X connect 9 0 8 0; 84 | #X restore 153 421 pd init_norm; 85 | #X obj 100 231 *~; 86 | #X obj 102 443 -~ 60.206; 87 | #X obj 113 517 *~ 0.98; 88 | #X obj 100 539 +~; 89 | #X obj 101 471 *~ 0.02; 90 | #X msg 314 481 1 \$1; 91 | #X obj 314 502 -; 92 | #X obj 314 458 clip 0 1; 93 | #X obj 314 437 / 100; 94 | #X floatatom 314 413 5 0.5 100 0 - - -, f 5; 95 | #X obj 333 366 loadbang; 96 | #X obj 100 277 fft~; 97 | #X obj 463 557 line 0 0.1; 98 | #X obj 463 602 / 2; 99 | #X obj 463 622 mtof; 100 | #X msg 463 536 6 \, 273 26.7; 101 | #X obj 463 580 t f f; 102 | #X obj 494 602 - 6; 103 | #X obj 463 642 / 44100; 104 | #X obj 463 663 * 4096; 105 | #X msg 656 633 6; 106 | #X obj 656 653 / 2; 107 | #X obj 656 673 mtof; 108 | #X floatatom 656 693 9 0 0 0 - - -, f 9; 109 | #X text 723 694 Hz; 110 | #X obj 754 654 / 2; 111 | #X obj 754 673 mtof; 112 | #X floatatom 754 693 9 0 0 0 - - -, f 9; 113 | #X text 822 693 Hz; 114 | #X msg 754 634 273; 115 | #X obj 656 612 t b b; 116 | #X obj 463 498 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 117 | 1; 118 | #X obj 463 458 loadbang; 119 | #X msg 463 478 1; 120 | #X obj 656 592 loadbang; 121 | #X obj 468 245 loadbang; 122 | #X obj 703 102 inlet; 123 | #X obj 130 253 table \$0-window 4096; 124 | #X obj 137 214 tabreceive~ \$0-window; 125 | #X text 353 403 temporal lowpass; 126 | #X text 355 415 parameter between 0 .. 100 %; 127 | #X text 23 23 spectrum~; 128 | #X text 120 23 draws the power of a spectrum in a logarithmic scale 129 | ; 130 | #X text 118 36 (by Thomas Musil); 131 | #X obj 113 496 tabreceive~ \$0-lin_scope; 132 | #X obj 100 564 tabsend~ \$0-lin_scope; 133 | #X obj 463 685 tabread4 \$0-lin_scope; 134 | #X obj 468 267 f \$0; 135 | #X text 553 536 transformation to log scale; 136 | #X msg 333 385 100; 137 | #X obj 314 341 max 0.5; 138 | #X obj 314 319 min 100; 139 | #X obj 440 107 inlet; 140 | #X text 96 81 audio sig; 141 | #X text 700 81 ON/OFF; 142 | #X text 427 86 (0 .. 100); 143 | #X text 408 72 temporal lowpass; 144 | #X obj 533 244 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 145 | -1; 146 | #X obj 463 735 tabwrite \$0-s; 147 | #X msg 468 296 \; \$1-s xticks 0 12 2; 148 | #X msg 491 330 \; \$1-s yticks 0 5 2; 149 | #X obj 462 516 metro 100; 150 | #X obj 704 166 switch~ 4096 2; 151 | #X obj 463 711 clip 0 100; 152 | #X obj 773 101 loadbang; 153 | #X msg 773 123 1; 154 | #X connect 0 0 8 0; 155 | #X connect 1 0 3 0; 156 | #X connect 2 0 3 1; 157 | #X connect 3 0 4 0; 158 | #X connect 4 0 9 0; 159 | #X connect 7 0 9 1; 160 | #X connect 8 0 19 0; 161 | #X connect 9 0 12 0; 162 | #X connect 10 0 11 1; 163 | #X connect 11 0 53 0; 164 | #X connect 12 0 11 0; 165 | #X connect 13 0 14 0; 166 | #X connect 14 0 10 1; 167 | #X connect 15 0 13 0; 168 | #X connect 15 0 12 1; 169 | #X connect 16 0 15 0; 170 | #X connect 17 0 16 0; 171 | #X connect 18 0 57 0; 172 | #X connect 19 0 1 0; 173 | #X connect 19 0 1 1; 174 | #X connect 19 1 2 0; 175 | #X connect 19 1 2 1; 176 | #X connect 20 0 24 0; 177 | #X connect 21 0 22 0; 178 | #X connect 22 0 26 0; 179 | #X connect 23 0 20 0; 180 | #X connect 24 0 21 0; 181 | #X connect 24 1 25 0; 182 | #X connect 25 0 66 1; 183 | #X connect 26 0 27 0; 184 | #X connect 27 0 54 0; 185 | #X connect 28 0 29 0; 186 | #X connect 29 0 30 0; 187 | #X connect 30 0 31 0; 188 | #X connect 33 0 34 0; 189 | #X connect 34 0 35 0; 190 | #X connect 37 0 33 0; 191 | #X connect 38 0 28 0; 192 | #X connect 38 1 37 0; 193 | #X connect 39 0 69 0; 194 | #X connect 40 0 41 0; 195 | #X connect 41 0 39 0; 196 | #X connect 42 0 38 0; 197 | #X connect 43 0 55 0; 198 | #X connect 44 0 70 0; 199 | #X connect 46 0 8 1; 200 | #X connect 52 0 10 0; 201 | #X connect 54 0 71 0; 202 | #X connect 55 0 67 0; 203 | #X connect 55 0 68 0; 204 | #X connect 57 0 17 0; 205 | #X connect 58 0 17 0; 206 | #X connect 59 0 58 0; 207 | #X connect 60 0 59 0; 208 | #X connect 65 0 55 0; 209 | #X connect 69 0 23 0; 210 | #X connect 71 0 66 0; 211 | #X connect 72 0 73 0; 212 | #X connect 73 0 70 0; 213 | #X restore 17 330 pd FFT_Analyse; 214 | #X obj 63 309 inlet; 215 | #X obj 17 309 inlet~; 216 | #X obj 110 309 inlet; 217 | #N canvas 0 22 450 300 (subpatch) 0; 218 | #X array \$0-s 268 float 0; 219 | #X coords 0 100 267 0 267 140 1; 220 | #X restore 23 37 graph; 221 | #X obj 297 52 cnv 15 1 1 empty empty -10 0 0 0 10 -262144 -1 0; 222 | #X obj 297 164 cnv 15 1 1 empty empty -90 0 0 0 10 -262144 -1 0; 223 | #X obj 297 108 cnv 15 1 1 empty empty -50 0 0 0 10 -262144 -1 0; 224 | #X obj 297 80 cnv 15 1 1 empty empty -30 0 0 0 10 -262144 -1 0; 225 | #X obj 297 136 cnv 15 1 1 empty empty -70 0 0 0 10 -262144 -1 0; 226 | #X obj 18 181 cnv 15 1 1 empty empty 10 0 5 0 10 -262144 -1 0; 227 | #X obj 66 181 cnv 15 1 1 empty empty 40 0 5 0 10 -262144 -1 0; 228 | #X obj 115 181 cnv 15 1 1 empty empty 160 0 5 0 10 -262144 -1 0; 229 | #X obj 162 181 cnv 15 1 1 empty empty 640 0 5 0 10 -262144 -1 0; 230 | #X obj 210 181 cnv 15 1 1 empty empty 2k56 0 5 0 10 -262144 -1 0; 231 | #X obj 258 181 cnv 15 1 1 empty empty 10k2 0 5 0 10 -262144 -1 0; 232 | #X obj 138 194 cnv 15 1 1 empty empty 320 0 5 0 10 -262144 -1 0; 233 | #X obj 282 194 cnv 15 1 1 empty empty 20k5 0 5 0 10 -262144 -1 0; 234 | #X obj 42 191 cnv 15 1 1 empty empty 20 0 9 0 10 -262144 -1 0; 235 | #X obj 90 194 cnv 15 1 1 empty empty 80 0 5 0 10 -262144 -1 0; 236 | #X obj 186 194 cnv 15 1 1 empty empty 1k28 0 5 0 10 -262144 -1 0; 237 | #X obj 234 194 cnv 15 1 1 empty empty 5k12 0 5 0 10 -262144 -1 0; 238 | #X obj 46 178 cnv 15 1 1 empty empty | 0 7 0 10 -262144 -1 0; 239 | #X obj 94 178 cnv 15 1 1 empty empty | 0 7 0 10 -262144 -1 0; 240 | #X obj 142 178 cnv 15 1 1 empty empty | 0 7 0 10 -262144 -1 0; 241 | #X obj 190 178 cnv 15 1 1 empty empty | 0 7 0 10 -262144 -1 0; 242 | #X obj 238 178 cnv 15 1 1 empty empty | 0 7 0 10 -262144 -1 0; 243 | #X obj 286 178 cnv 15 1 1 empty empty | 0 7 0 10 -262144 -1 0; 244 | #X connect 1 0 0 1; 245 | #X connect 2 0 0 0; 246 | #X connect 3 0 0 2; 247 | #X coords 0 0 1 1 330 210 2 0 0; 248 | -------------------------------------------------------------------------------- /hv.filter~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 1 52 1156 753 10; 2 | #X obj 33 188 noise~; 3 | #X obj 33 210 *~ 0.1; 4 | #X obj 453 108 line; 5 | #X obj 456 63 hsl 128 15 100 10000 0 0 empty empty empty -2 -8 0 10 6 | -262144 -1 -1 0 1; 7 | #X obj 453 41 r freq @hv_param 100 10000 300; 8 | #X text 70 96 Available filters:; 9 | #X obj 33 326 s~ \$0-bp1; 10 | #X obj 785 207 hv.filters/spectrolog; 11 | #X obj 786 454 hv.filters/spectrolog; 12 | #X text 31 57 Includes signal-rate coefficient updating to avoid clicks 13 | when sweeping the controls.; 14 | #X obj 453 130 s \$0-freq; 15 | #X obj 440 205 hv.filters/spectrolog; 16 | #X obj 441 452 hv.filters/spectrolog; 17 | #X obj 440 180 r~ \$0-bp1; 18 | #X obj 441 427 r~ \$0-bp2; 19 | #X obj 33 270 r~ \$0-noise; 20 | #X obj 33 370 r~ \$0-noise; 21 | #X obj 665 108 line; 22 | #X obj 668 63 hsl 128 15 0.1 100 0 0 empty empty empty -2 -8 0 10 -262144 23 | -1 -1 0 1; 24 | #X obj 665 41 r q @hv_param 0.1 100 0.707; 25 | #X obj 665 130 s \$0-q; 26 | #X msg 665 86 \$1 100; 27 | #X obj 115 270 r \$0-freq; 28 | #X obj 33 426 s~ \$0-bp2; 29 | #X obj 33 232 s~ \$0-noise; 30 | #X obj 198 270 r \$0-q; 31 | #X obj 112 370 r \$0-freq; 32 | #X obj 192 370 r \$0-q; 33 | #X obj 33 460 r~ \$0-noise; 34 | #X obj 106 460 r \$0-freq; 35 | #X obj 180 460 r \$0-q; 36 | #X obj 33 550 r~ \$0-noise; 37 | #X obj 106 550 r \$0-freq; 38 | #X obj 33 640 r~ \$0-noise; 39 | #X obj 109 640 r \$0-freq; 40 | #X obj 186 642 r \$0-q; 41 | #X obj 33 516 s~ \$0-allpass; 42 | #X text 31 19 Generic filter module with swappable filter types and 43 | frequency \, Q settings.; 44 | #X msg 453 86 \$1 1000; 45 | #X obj 785 182 r~ \$0-lp; 46 | #X obj 786 429 r~ \$0-hp; 47 | #X obj 33 696 s~ \$0-hp; 48 | #X obj 180 550 r \$0-q; 49 | #X text 120 112 allpass; 50 | #X text 120 132 lowpass; 51 | #X text 120 152 highpass; 52 | #X text 120 172 bandpass1 (constant skirt gain \, peak gain = Q); 53 | #X text 120 192 bandpass2 (constant 0 dB peak gain); 54 | #X text 120 212 notch; 55 | #X obj 33 606 s~ \$0-lp; 56 | #X obj 33 298 hv.filter~ bandpass1 2000 20; 57 | #X obj 33 398 hv.filter~ bandpass2 1000 2; 58 | #X obj 33 488 hv.filter~ allpass 1000 2; 59 | #X obj 33 577 hv.filter~ lowpass 1000 2; 60 | #X obj 33 668 hv.filter~ highpass 1000 2; 61 | #X connect 0 0 1 0; 62 | #X connect 1 0 24 0; 63 | #X connect 2 0 10 0; 64 | #X connect 3 0 38 0; 65 | #X connect 4 0 3 0; 66 | #X connect 13 0 11 0; 67 | #X connect 14 0 12 0; 68 | #X connect 15 0 50 0; 69 | #X connect 16 0 51 0; 70 | #X connect 17 0 20 0; 71 | #X connect 18 0 21 0; 72 | #X connect 19 0 18 0; 73 | #X connect 21 0 17 0; 74 | #X connect 22 0 50 1; 75 | #X connect 25 0 50 2; 76 | #X connect 26 0 51 1; 77 | #X connect 27 0 51 2; 78 | #X connect 28 0 52 0; 79 | #X connect 29 0 52 1; 80 | #X connect 30 0 52 2; 81 | #X connect 31 0 53 0; 82 | #X connect 32 0 53 1; 83 | #X connect 33 0 54 0; 84 | #X connect 34 0 54 1; 85 | #X connect 35 0 54 2; 86 | #X connect 38 0 2 0; 87 | #X connect 39 0 7 0; 88 | #X connect 40 0 8 0; 89 | #X connect 42 0 53 2; 90 | #X connect 50 0 6 0; 91 | #X connect 51 0 23 0; 92 | #X connect 52 0 36 0; 93 | #X connect 53 0 49 0; 94 | #X connect 54 0 41 0; 95 | -------------------------------------------------------------------------------- /hv.filter~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 1049 51 259 226 10; 2 | #X obj 108 63 inlet freq; 3 | #X obj 164 90 inlet q; 4 | #X obj 53 42 inlet~; 5 | #X obj 53 171 outlet~; 6 | #X obj 53 139 hv.filters/\$1 \$2 \$3; 7 | #X connect 0 0 4 1; 8 | #X connect 1 0 4 2; 9 | #X connect 2 0 4 0; 10 | #X connect 4 0 3 0; 11 | -------------------------------------------------------------------------------- /hv.flanger2~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 238 355 439 434 10; 2 | #X obj 34 246 *~; 3 | #X floatatom 49 199 5 0 0 0 - - -; 4 | #X obj 49 159 loadbang; 5 | #X obj 34 374 dac~; 6 | #X obj 149 140 hsl 128 15 -1 1 0 0 empty empty empty -2 8 0 10 -262144 7 | -1 -1 0 1; 8 | #N canvas 0 22 263 305 gain 0; 9 | #X obj 64 144 dbtorms; 10 | #X obj 64 124 + 100; 11 | #X obj 64 188 line~; 12 | #X msg 64 166 \$1 100; 13 | #X obj 64 210 outlet~; 14 | #X obj 64 103 inlet; 15 | #X connect 0 0 3 0; 16 | #X connect 1 0 0 0; 17 | #X connect 2 0 4 0; 18 | #X connect 3 0 2 0; 19 | #X connect 5 0 1 0; 20 | #X restore 49 219 pd gain; 21 | #X obj 170 201 hsl 128 15 0 20 0 0 empty empty empty -2 8 0 10 -262144 22 | -1 -1 0 1; 23 | #X obj 183 256 hsl 128 15 0 1 0 0 empty empty empty -2 8 0 10 -262144 24 | -1 -1 0 1; 25 | #X obj 124 76 hsl 128 15 0 1 0 0 empty empty empty -2 8 0 10 -262144 26 | -1 -1 0 1; 27 | #X msg 121 104 mix \$1; 28 | #X msg 146 168 feedback \$1; 29 | #X msg 167 223 speed \$1; 30 | #X msg 180 278 intensity \$1; 31 | #X text 232 170 // -1..1; 32 | #X text 229 223 // 0..20 Hz; 33 | #X text 265 280 // 0..1; 34 | #X text 131 320 // arg \$1 delay time; 35 | #X text 168 103 // 0..1 (0=dry); 36 | #X msg 49 179 -30; 37 | #X text 36 31 Stereo flanger effect unit; 38 | #X obj 34 122 osc~ 500; 39 | #X obj 34 320 hv.flanger2~ 20; 40 | #X connect 0 0 21 0; 41 | #X connect 0 0 21 1; 42 | #X connect 1 0 5 0; 43 | #X connect 2 0 18 0; 44 | #X connect 4 0 10 0; 45 | #X connect 5 0 0 1; 46 | #X connect 6 0 11 0; 47 | #X connect 7 0 12 0; 48 | #X connect 8 0 9 0; 49 | #X connect 9 0 21 2; 50 | #X connect 10 0 21 2; 51 | #X connect 11 0 21 2; 52 | #X connect 12 0 21 2; 53 | #X connect 18 0 1 0; 54 | #X connect 20 0 0 0; 55 | #X connect 21 0 3 0; 56 | #X connect 21 1 3 1; 57 | -------------------------------------------------------------------------------- /hv.flanger2~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 399 74 678 650 10; 2 | #X obj 35 615 outlet~; 3 | #X obj 35 25 inlet~; 4 | #X obj 322 614 outlet~; 5 | #X obj 487 26 inlet; 6 | #X obj 144 25 r \$0-speed; 7 | #X obj 213 190 r \$0-feedback; 8 | #X obj 144 45 clip 0 20; 9 | #X obj 75 199 vd~ \$0-flanger-l; 10 | #X obj 337 197 vd~ \$0-flanger-r; 11 | #X obj 75 308 *~; 12 | #X obj 254 364 clip 0 1; 13 | #X msg 287 414 \$1 100; 14 | #X obj 287 434 line~; 15 | #X msg 50 495 \$1 100; 16 | #X obj 50 515 line~; 17 | #X obj 399 25 inlet~; 18 | #X obj 35 555 *~; 19 | #X obj 254 344 r \$0-mix; 20 | #X obj 337 554 *~; 21 | #X obj 272 483 *~; 22 | #X obj 322 483 *~; 23 | #X obj 413 314 *~; 24 | #X obj 177 75 r \$0-intensity; 25 | #N canvas 0 22 250 374 mix 0; 26 | #X obj 50 80 * 2; 27 | #X obj 50 110 - 1; 28 | #X obj 50 140 t f f; 29 | #X obj 101 200 + 1; 30 | #X msg 50 170 1 \$1; 31 | #X obj 50 200 -; 32 | #X obj 101 230 * 0.5; 33 | #X obj 50 230 * 0.5; 34 | #X obj 101 260 sqrt; 35 | #X obj 50 260 sqrt; 36 | #X obj 50 290 outlet; 37 | #X obj 101 290 outlet; 38 | #X obj 50 50 inlet; 39 | #X connect 0 0 1 0; 40 | #X connect 1 0 2 0; 41 | #X connect 2 0 4 0; 42 | #X connect 2 1 3 0; 43 | #X connect 3 0 6 0; 44 | #X connect 4 0 5 0; 45 | #X connect 5 0 7 0; 46 | #X connect 6 0 8 0; 47 | #X connect 7 0 9 0; 48 | #X connect 8 0 11 0; 49 | #X connect 9 0 10 0; 50 | #X connect 12 0 0 0; 51 | #X restore 254 384 pd mix; 52 | #X obj 177 95 clip 0 1; 53 | #X obj 35 585 +~; 54 | #X obj 322 584 +~; 55 | #X obj 398 374 delwrite~ \$0-flanger-r \$1; 56 | #X obj 398 344 +~; 57 | #X obj 60 368 delwrite~ \$0-flanger-l \$1; 58 | #X obj 60 338 +~; 59 | #N canvas 130 607 615 409 lfo 0; 60 | #X obj 160 126 -~ 0.5; 61 | #X obj 161 155 abs~; 62 | #X obj 160 104 phasor~ 2; 63 | #X obj 162 181 *~ 4; 64 | #X obj 162 203 -~ 1; 65 | #X obj 290 265 *~ -1; 66 | #X obj 307 185 sig~ \$1; 67 | #X obj 307 207 *~ 0.5; 68 | #X obj 171 275 +~; 69 | #X obj 290 287 +~; 70 | #X obj 162 232 *~; 71 | #X obj 228 200 *~; 72 | #X obj 249 139 line~; 73 | #X obj 290 317 lop~ 14; 74 | #X obj 162 308 lop~ 14; 75 | #X obj 161 75 inlet speed; 76 | #X msg 261 105 \$1 100; 77 | #X obj 261 74 inlet intensity; 78 | #X obj 290 339 outlet~; 79 | #X obj 162 330 outlet~; 80 | #X connect 0 0 1 0; 81 | #X connect 1 0 3 0; 82 | #X connect 2 0 0 0; 83 | #X connect 3 0 4 0; 84 | #X connect 4 0 10 0; 85 | #X connect 5 0 9 0; 86 | #X connect 6 0 7 0; 87 | #X connect 7 0 8 1; 88 | #X connect 7 0 9 1; 89 | #X connect 7 0 11 1; 90 | #X connect 8 0 14 0; 91 | #X connect 9 0 13 0; 92 | #X connect 10 0 5 0; 93 | #X connect 10 0 8 0; 94 | #X connect 11 0 10 1; 95 | #X connect 12 0 11 0; 96 | #X connect 13 0 18 0; 97 | #X connect 14 0 19 0; 98 | #X connect 15 0 2 0; 99 | #X connect 16 0 12 0; 100 | #X connect 17 0 16 0; 101 | #X restore 144 125 pd lfo; 102 | #N canvas 0 22 206 338 feedback 0; 103 | #X obj 51 71 t f f; 104 | #X obj 51 101 abs; 105 | #X obj 111 131 * 2; 106 | #X obj 111 161 - 1; 107 | #X obj 111 101 > 0; 108 | #X obj 51 191 *; 109 | #X obj 51 33 inlet; 110 | #X obj 51 131 max 0.01; 111 | #X msg 51 221 \$1 100; 112 | #X obj 51 251 line~; 113 | #X obj 51 281 outlet~; 114 | #X connect 0 0 1 0; 115 | #X connect 0 1 4 0; 116 | #X connect 1 0 7 0; 117 | #X connect 2 0 3 0; 118 | #X connect 3 0 5 1; 119 | #X connect 4 0 2 0; 120 | #X connect 5 0 8 0; 121 | #X connect 6 0 0 0; 122 | #X connect 7 0 5 0; 123 | #X connect 8 0 9 0; 124 | #X connect 9 0 10 0; 125 | #X restore 213 231 pd feedback; 126 | #X obj 213 211 clip -1 1; 127 | #X obj 487 47 hv.dispatch \$0 intensity 0.2; 128 | #X obj 487 69 hv.dispatch \$0 feedback 0; 129 | #X obj 487 91 hv.dispatch \$0 speed 2; 130 | #X obj 487 113 hv.dispatch \$0 mix 0.5; 131 | #X connect 1 0 16 0; 132 | #X connect 1 0 30 0; 133 | #X connect 3 0 34 0; 134 | #X connect 4 0 6 0; 135 | #X connect 5 0 33 0; 136 | #X connect 6 0 31 0; 137 | #X connect 7 0 9 0; 138 | #X connect 7 0 19 0; 139 | #X connect 8 0 20 1; 140 | #X connect 8 0 21 1; 141 | #X connect 9 0 30 1; 142 | #X connect 10 0 23 0; 143 | #X connect 11 0 12 0; 144 | #X connect 12 0 20 0; 145 | #X connect 12 0 19 1; 146 | #X connect 13 0 14 0; 147 | #X connect 14 0 16 1; 148 | #X connect 14 0 18 0; 149 | #X connect 15 0 18 1; 150 | #X connect 15 0 28 0; 151 | #X connect 16 0 25 0; 152 | #X connect 17 0 10 0; 153 | #X connect 18 0 26 1; 154 | #X connect 19 0 25 1; 155 | #X connect 20 0 26 0; 156 | #X connect 21 0 28 1; 157 | #X connect 22 0 24 0; 158 | #X connect 23 0 13 0; 159 | #X connect 23 1 11 0; 160 | #X connect 24 0 31 1; 161 | #X connect 25 0 0 0; 162 | #X connect 26 0 2 0; 163 | #X connect 28 0 27 0; 164 | #X connect 30 0 29 0; 165 | #X connect 31 0 7 0; 166 | #X connect 31 1 8 0; 167 | #X connect 32 0 9 1; 168 | #X connect 32 0 21 0; 169 | #X connect 33 0 32 0; 170 | #X connect 34 0 35 0; 171 | #X connect 35 0 36 0; 172 | #X connect 36 0 37 0; 173 | -------------------------------------------------------------------------------- /hv.flanger~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 238 355 383 432 10; 2 | #X obj 44 259 *~; 3 | #X floatatom 59 212 5 0 0 0 - - -; 4 | #X obj 59 172 loadbang; 5 | #X obj 45 391 dac~; 6 | #X obj 153 153 hsl 128 15 -1 1 0 0 empty empty empty -2 8 0 10 -262144 7 | -1 -1 0 1; 8 | #N canvas 1 82 263 305 gain 0; 9 | #X obj 64 144 dbtorms; 10 | #X obj 64 124 + 100; 11 | #X msg 64 166 \$1 100; 12 | #X obj 64 210 outlet~; 13 | #X obj 64 103 inlet; 14 | #X obj 64 188 line~; 15 | #X connect 0 0 2 0; 16 | #X connect 1 0 0 0; 17 | #X connect 2 0 5 0; 18 | #X connect 4 0 1 0; 19 | #X connect 5 0 3 0; 20 | #X restore 59 232 pd gain; 21 | #X obj 44 135 osc~ 1000; 22 | #X obj 175 214 hsl 128 15 0 20 0 0 empty empty empty -2 8 0 10 -262144 23 | -1 -1 0 1; 24 | #X obj 193 269 hsl 128 15 0 1 0 0 empty empty empty -2 8 0 10 -262144 25 | -1 -1 0 1; 26 | #X obj 129 89 hsl 128 15 0 1 0 0 empty empty empty -2 8 0 10 -262144 27 | -1 -1 0 1; 28 | #X msg 125 117 mix \$1; 29 | #X msg 148 181 feedback \$1; 30 | #X msg 172 236 speed \$1; 31 | #X msg 190 291 intensity \$1; 32 | #X msg 59 192 -40; 33 | #X text 234 183 // -1..1; 34 | #X text 234 236 // 0..20 Hz; 35 | #X text 275 293 // 0..1; 36 | #X text 172 116 // 0..1 (0=dry); 37 | #X text 39 29 Mono flanger effect unit; 38 | #X text 141 333 arg \$1: Delay time; 39 | #X obj 44 333 hv.flanger~ 20; 40 | #X connect 0 0 21 0; 41 | #X connect 1 0 5 0; 42 | #X connect 2 0 14 0; 43 | #X connect 4 0 11 0; 44 | #X connect 5 0 0 1; 45 | #X connect 6 0 0 0; 46 | #X connect 7 0 12 0; 47 | #X connect 8 0 13 0; 48 | #X connect 9 0 10 0; 49 | #X connect 10 0 21 1; 50 | #X connect 11 0 21 1; 51 | #X connect 12 0 21 1; 52 | #X connect 13 0 21 1; 53 | #X connect 14 0 1 0; 54 | #X connect 21 0 3 0; 55 | #X connect 21 0 3 1; 56 | -------------------------------------------------------------------------------- /hv.flanger~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 720 92 406 569 10; 2 | #X obj 26 534 outlet~; 3 | #X obj 26 16 inlet~; 4 | #N canvas 0 22 206 338 feedback 0; 5 | #X obj 51 71 t f f; 6 | #X obj 51 101 abs; 7 | #X obj 111 131 * 2; 8 | #X obj 111 161 - 1; 9 | #X obj 111 101 > 0; 10 | #X obj 51 191 *; 11 | #X obj 51 33 inlet; 12 | #X obj 51 131 max 0.01; 13 | #X msg 51 221 \$1 100; 14 | #X obj 51 251 line~; 15 | #X obj 51 281 outlet~; 16 | #X connect 0 0 1 0; 17 | #X connect 0 1 4 0; 18 | #X connect 1 0 7 0; 19 | #X connect 2 0 3 0; 20 | #X connect 3 0 5 1; 21 | #X connect 4 0 2 0; 22 | #X connect 5 0 8 0; 23 | #X connect 6 0 0 0; 24 | #X connect 7 0 5 0; 25 | #X connect 8 0 9 0; 26 | #X connect 9 0 10 0; 27 | #X restore 101 248 pd feedback; 28 | #X obj 208 20 inlet; 29 | #X obj 55 41 r \$0-speed; 30 | #X obj 101 208 r \$0-feedback; 31 | #X obj 55 61 clip 0 20; 32 | #X obj 55 294 *~; 33 | #X obj 41 414 clip 0 1; 34 | #X obj 26 474 *~; 35 | #X obj 41 394 r \$0-mix; 36 | #X obj 107 474 *~; 37 | #X obj 88 91 r \$0-intensity; 38 | #N canvas 0 22 201 386 mix 0; 39 | #X obj 37 54 * 2; 40 | #X obj 37 84 - 1; 41 | #X obj 37 114 t f f; 42 | #X obj 98 174 + 1; 43 | #X msg 37 144 1 \$1; 44 | #X obj 37 174 -; 45 | #X obj 98 204 * 0.5; 46 | #X obj 37 204 * 0.5; 47 | #X obj 98 234 sqrt; 48 | #X obj 37 234 sqrt; 49 | #X obj 37 24 inlet; 50 | #X msg 98 264 \$1 100; 51 | #X obj 98 294 line~; 52 | #X msg 37 264 \$1 100; 53 | #X obj 37 294 line~; 54 | #X obj 98 324 outlet~; 55 | #X obj 37 324 outlet~; 56 | #X connect 0 0 1 0; 57 | #X connect 1 0 2 0; 58 | #X connect 2 0 4 0; 59 | #X connect 2 1 3 0; 60 | #X connect 3 0 6 0; 61 | #X connect 4 0 5 0; 62 | #X connect 5 0 7 0; 63 | #X connect 6 0 8 0; 64 | #X connect 7 0 9 0; 65 | #X connect 8 0 11 0; 66 | #X connect 9 0 13 0; 67 | #X connect 10 0 0 0; 68 | #X connect 11 0 12 0; 69 | #X connect 12 0 15 0; 70 | #X connect 13 0 14 0; 71 | #X connect 14 0 16 0; 72 | #X restore 41 434 pd mix; 73 | #X obj 88 111 clip 0 1; 74 | #X obj 26 504 +~; 75 | #X obj 40 324 +~; 76 | #N canvas 130 607 329 376 lfo 0; 77 | #X obj 45 91 -~ 0.5; 78 | #X obj 45 121 abs~; 79 | #X obj 45 61 phasor~ 2; 80 | #X obj 45 151 *~ 4; 81 | #X obj 45 181 -~ 1; 82 | #X obj 201 121 sig~ \$1; 83 | #X obj 201 151 *~ 0.5; 84 | #X obj 186 265 +~; 85 | #X obj 45 211 *~; 86 | #X obj 133 181 *~; 87 | #X obj 133 151 line~; 88 | #X obj 186 295 lop~ 14; 89 | #X obj 45 31 inlet speed; 90 | #X msg 133 121 \$1 100; 91 | #X obj 133 31 inlet intensity; 92 | #X obj 186 325 outlet~; 93 | #X connect 0 0 1 0; 94 | #X connect 1 0 3 0; 95 | #X connect 2 0 0 0; 96 | #X connect 3 0 4 0; 97 | #X connect 4 0 8 0; 98 | #X connect 5 0 6 0; 99 | #X connect 6 0 7 1; 100 | #X connect 6 0 9 1; 101 | #X connect 7 0 11 0; 102 | #X connect 8 0 7 0; 103 | #X connect 9 0 8 1; 104 | #X connect 10 0 9 0; 105 | #X connect 11 0 15 0; 106 | #X connect 12 0 2 0; 107 | #X connect 13 0 10 0; 108 | #X connect 14 0 13 0; 109 | #X restore 55 136 pd lfo; 110 | #X obj 55 175 vd~ \$0-flanger; 111 | #X obj 40 354 delwrite~ \$0-flanger \$1; 112 | #X obj 101 228 clip -1 1; 113 | #X obj 208 51 hv.dispatch \$0 intensity 0.2; 114 | #X obj 208 73 hv.dispatch \$0 feedback 0; 115 | #X obj 208 95 hv.dispatch \$0 speed 2; 116 | #X obj 208 117 hv.dispatch \$0 mix 0.5; 117 | #X connect 1 0 9 0; 118 | #X connect 1 0 16 0; 119 | #X connect 2 0 7 1; 120 | #X connect 3 0 21 0; 121 | #X connect 4 0 6 0; 122 | #X connect 5 0 20 0; 123 | #X connect 6 0 17 0; 124 | #X connect 7 0 16 1; 125 | #X connect 8 0 13 0; 126 | #X connect 9 0 15 0; 127 | #X connect 10 0 8 0; 128 | #X connect 11 0 15 1; 129 | #X connect 12 0 14 0; 130 | #X connect 13 0 9 1; 131 | #X connect 13 1 11 0; 132 | #X connect 14 0 17 1; 133 | #X connect 15 0 0 0; 134 | #X connect 16 0 19 0; 135 | #X connect 17 0 18 0; 136 | #X connect 18 0 7 0; 137 | #X connect 18 0 11 1; 138 | #X connect 20 0 2 0; 139 | #X connect 21 0 22 0; 140 | #X connect 22 0 23 0; 141 | #X connect 23 0 24 0; 142 | -------------------------------------------------------------------------------- /hv.freqshift~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 458 122 329 268 10; 2 | #X obj 46 201 dac~; 3 | #X obj 46 77 osc~ 440; 4 | #X obj 46 99 *~ 0.1; 5 | #X obj 121 120 sig~; 6 | #X obj 121 75 r freq @hv_param -100 100 0; 7 | #X text 32 23 Frequency shifter effect unit; 8 | #X floatatom 121 97 5 0 0 0 - - -; 9 | #X obj 46 144 hv.freqshift~; 10 | #X connect 1 0 2 0; 11 | #X connect 2 0 7 0; 12 | #X connect 3 0 7 1; 13 | #X connect 4 0 6 0; 14 | #X connect 6 0 3 0; 15 | #X connect 7 0 0 0; 16 | #X connect 7 0 0 1; 17 | -------------------------------------------------------------------------------- /hv.freqshift~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 507 258 696 455 10; 2 | #X obj 131 103 phasor~; 3 | #X obj 131 156 cos~; 4 | #X obj 177 154 cos~; 5 | #X obj 44 56 inlet~; 6 | #X obj 113 207 *~; 7 | #X obj 45 257 outlet~; 8 | #X obj 45 205 *~; 9 | #N canvas 0 22 588 330 hilbert 0; 10 | #X obj 105 92 biquad~ 0.83774 -0.06338 0.06338 -0.83774 1; 11 | #X obj 105 66 biquad~ 1.94632 -0.94657 0.94657 -1.94632 1; 12 | #X obj 86 149 biquad~ -0.02569 0.260502 -0.260502 0.02569 1; 13 | #X obj 86 175 biquad~ 1.8685 -0.870686 0.870686 -1.8685 1; 14 | #X obj 86 39 inlet~; 15 | #X obj 105 121 outlet~; 16 | #X obj 86 202 outlet~; 17 | #X connect 0 0 5 0; 18 | #X connect 1 0 0 0; 19 | #X connect 2 0 3 0; 20 | #X connect 3 0 6 0; 21 | #X connect 4 0 1 0; 22 | #X connect 4 0 2 0; 23 | #X restore 44 128 pd hilbert; 24 | #X obj 177 134 +~ 0.25; 25 | #X obj 131 55 inlet~; 26 | #X connect 0 0 1 0; 27 | #X connect 0 0 8 0; 28 | #X connect 1 0 6 1; 29 | #X connect 2 0 4 1; 30 | #X connect 3 0 7 0; 31 | #X connect 4 0 5 0; 32 | #X connect 6 0 5 0; 33 | #X connect 7 0 6 0; 34 | #X connect 7 1 4 0; 35 | #X connect 8 0 2 0; 36 | #X connect 9 0 0 0; 37 | -------------------------------------------------------------------------------- /hv.gte~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 608 484 390 231 10; 2 | #X obj 31 162 env~; 3 | #X floatatom 31 207 5 0 0 0 - - -; 4 | #X floatatom 31 71 5 0 0 0 - - -; 5 | #X obj 69 113 sig~ 0; 6 | #X obj 31 91 sig~ 0; 7 | #X text 23 14 Signal rate >=~ (greater-then-or-equal-to) operation. 8 | ; 9 | #X text 23 30 Outputs 1 if left input is greater than or equal to the 10 | right input \, 0 otherwise.; 11 | #X obj 31 184 dbtorms; 12 | #X obj 31 137 hv.gte~; 13 | #X connect 0 0 7 0; 14 | #X connect 2 0 4 0; 15 | #X connect 3 0 8 1; 16 | #X connect 4 0 8 0; 17 | #X connect 7 0 1 0; 18 | #X connect 8 0 0 0; 19 | -------------------------------------------------------------------------------- /hv.gte~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 855 553 292 175 10; 2 | #X obj 150 34 inlet~; 3 | #X obj 45 34 inlet~; 4 | #X obj 45 129 outlet~; 5 | #N canvas 467 216 290 220 @hv_obj 0; 6 | #X obj 158 52 inlet~; 7 | #X obj 61 52 inlet~; 8 | #X obj 61 136 outlet~; 9 | #X obj 61 100 *~; 10 | #X connect 0 0 3 1; 11 | #X connect 1 0 3 0; 12 | #X connect 3 0 2 0; 13 | #X restore 45 105 pd @hv_obj __and~f; 14 | #X obj 150 83 sig~ 1; 15 | #N canvas 249 541 148 189 @hv_obj 0; 16 | #X obj 23 69 -~; 17 | #X obj 23 94 clip~ -1e-37 0; 18 | #X obj 23 18 inlet~; 19 | #X obj 67 19 inlet~; 20 | #X obj 23 159 outlet~; 21 | #X obj 23 136 *~ 1e+37; 22 | #X obj 23 44 min~; 23 | #X obj 23 115 +~ 1e-37; 24 | #X connect 0 0 1 0; 25 | #X connect 1 0 7 0; 26 | #X connect 2 0 6 0; 27 | #X connect 3 0 6 1; 28 | #X connect 3 0 0 1; 29 | #X connect 5 0 4 0; 30 | #X connect 6 0 0 0; 31 | #X connect 7 0 5 0; 32 | #X restore 45 57 pd @hv_obj __gte~f; 33 | #X connect 0 0 5 1; 34 | #X connect 1 0 5 0; 35 | #X connect 3 0 2 0; 36 | #X connect 4 0 3 1; 37 | #X connect 5 0 3 0; 38 | -------------------------------------------------------------------------------- /hv.gt~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 1150 585 390 231 10; 2 | #X obj 31 162 env~; 3 | #X floatatom 31 207 5 0 0 0 - - -; 4 | #X floatatom 31 71 5 0 0 0 - - -; 5 | #X obj 63 113 sig~ 0; 6 | #X obj 31 91 sig~ 0; 7 | #X obj 31 184 dbtorms; 8 | #X text 23 14 Signal rate >~ (greater-than) operation.; 9 | #X text 23 30 Outputs 1 if left input is greater than the right input 10 | \, 0 otherwise.; 11 | #X obj 31 137 hv.gt~; 12 | #X connect 0 0 5 0; 13 | #X connect 2 0 4 0; 14 | #X connect 3 0 8 1; 15 | #X connect 4 0 8 0; 16 | #X connect 5 0 1 0; 17 | #X connect 8 0 0 0; 18 | -------------------------------------------------------------------------------- /hv.gt~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 811 459 249 197 10; 2 | #X obj 143 46 inlet~; 3 | #X obj 44 46 inlet~; 4 | #X obj 44 141 outlet~; 5 | #N canvas 467 216 450 300 @hv_obj 0; 6 | #X obj 217 60 inlet~; 7 | #X obj 120 60 inlet~; 8 | #X obj 170 183 outlet~; 9 | #X connect 1 0 2 0; 10 | #X restore 44 117 pd @hv_obj __and~f; 11 | #X obj 149 95 sig~ 1; 12 | #N canvas 715 161 223 209 @hv_obj 1; 13 | #X obj 46 22 inlet~; 14 | #X obj 46 147 outlet~; 15 | #X obj 46 124 *~; 16 | #X obj 142 22 inlet~; 17 | #X obj 61 80 sig~ 1; 18 | #X obj 61 102 -~; 19 | #X obj 46 54 hv.gte~; 20 | #X obj 104 53 hv.lte~; 21 | #X connect 0 0 6 0; 22 | #X connect 0 0 7 0; 23 | #X connect 2 0 1 0; 24 | #X connect 3 0 6 1; 25 | #X connect 3 0 7 1; 26 | #X connect 4 0 5 0; 27 | #X connect 5 0 2 1; 28 | #X connect 6 0 2 0; 29 | #X connect 7 0 5 1; 30 | #X restore 44 69 pd @hv_obj __gt~f; 31 | #X connect 0 0 5 1; 32 | #X connect 1 0 5 0; 33 | #X connect 3 0 2 0; 34 | #X connect 4 0 3 1; 35 | #X connect 5 0 3 0; 36 | -------------------------------------------------------------------------------- /hv.hip~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 107 100 527 592 10; 2 | #X obj 142 331 hv.filters/spectrolog; 3 | #X obj 86 107 hsl 128 19 0 127 0 1 empty empty Cutoff -2 -8 0 10 #00ff04 #000000 #000000 7000 1; 4 | #X floatatom 83 131 5 0 0 0 - - - 0; 5 | #X msg 83 151 \$1 20; 6 | #X obj 83 172 line~; 7 | #X obj 83 203 +~; 8 | #X obj 22 432 dac~ 1 2; 9 | #X obj 83 224 mtof~; 10 | #X obj 37 370 tgl 16 0 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000 0 1; 11 | #X obj 22 396 *~; 12 | #X obj 22 305 *~ 0.2; 13 | #X obj 22 279 hv.hip~; 14 | #X obj 22 115 noise~; 15 | #X obj 137 151 osc~ 0.5; 16 | #X obj 137 177 *~ 48; 17 | #X text 20 31 A variant of [hip~] that has a signal-controlled cutoff. Like [hip~] \, the filter has no effect when the cutoff is above SR/(2pi).; 18 | #X connect 1 0 2 0; 19 | #X connect 2 0 3 0; 20 | #X connect 3 0 4 0; 21 | #X connect 4 0 5 0; 22 | #X connect 5 0 7 0; 23 | #X connect 7 0 11 1; 24 | #X connect 8 0 9 1; 25 | #X connect 9 0 6 0; 26 | #X connect 9 0 6 1; 27 | #X connect 10 0 0 0; 28 | #X connect 10 0 9 0; 29 | #X connect 11 0 10 0; 30 | #X connect 12 0 11 0; 31 | #X connect 13 0 14 0; 32 | #X connect 14 0 5 1; 33 | -------------------------------------------------------------------------------- /hv.hip~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 894 370 413 448 10; 2 | #X obj 207 72 samplerate~; 3 | #X obj 207 51 loadbang; 4 | #X obj 125 192 sig~ 1; 5 | #X obj 125 220 -~; 6 | #X obj 207 114 / 2; 7 | #X obj 12 322 outlet~; 8 | #X obj 207 93 t f f; 9 | #X obj 82 110 inlet~; 10 | #X obj 12 78 inlet~; 11 | #X obj 82 136 clip~ 0 22050; 12 | #X obj 92 246 *~; 13 | #X obj 186 262 rpole~; 14 | #X obj 219 183 *~ -6.28319; 15 | #X obj 189 162 /~ 44100; 16 | #X text 12 13 One-pole Lowpass Filter; 17 | #X text 8 389 https://www.musicdsp.org/en/latest/Filters/237-one-pole-filter-lp-and-hp.html; 18 | #X text 8 369 Reference:; 19 | #X text 82 90 Inlet 2: Frequency; 20 | #X text 12 342 Outlet 1: lowpass output; 21 | #X text 12 58 Inlet 1: Input; 22 | #N canvas 152 188 516 403 hv.exp~ 0; 23 | #X obj 17 13 inlet~; 24 | #X obj 19 338 outlet~; 25 | #X obj 17 38 *~ 0.000976562; 26 | #X obj 17 62 +~ 1; 27 | #X obj 17 112 *~; 28 | #X obj 17 87 *~; 29 | #X obj 18 162 *~; 30 | #X obj 18 137 *~; 31 | #X obj 18 214 *~; 32 | #X obj 18 189 *~; 33 | #X obj 19 264 *~; 34 | #X obj 19 239 *~; 35 | #X obj 19 314 *~; 36 | #X obj 19 289 *~; 37 | #X text 122 10 https://en.wikipedia.org/wiki/Exponential_function; 38 | #X text 121 29 https://codingforspeed.com/using-faster-exponential-approximation/; 39 | #X connect 0 0 2 0; 40 | #X connect 2 0 3 0; 41 | #X connect 3 0 5 0; 42 | #X connect 3 0 5 1; 43 | #X connect 4 0 7 0; 44 | #X connect 4 0 7 1; 45 | #X connect 5 0 4 0; 46 | #X connect 5 0 4 1; 47 | #X connect 6 0 9 0; 48 | #X connect 6 0 9 1; 49 | #X connect 7 0 6 0; 50 | #X connect 7 0 6 1; 51 | #X connect 8 0 11 0; 52 | #X connect 8 0 11 1; 53 | #X connect 9 0 8 0; 54 | #X connect 9 0 8 1; 55 | #X connect 10 0 13 0; 56 | #X connect 10 0 13 1; 57 | #X connect 11 0 10 0; 58 | #X connect 11 0 10 1; 59 | #X connect 12 0 1 0; 60 | #X connect 13 0 12 0; 61 | #X connect 13 0 12 1; 62 | #X restore 219 204 pd hv.exp~; 63 | #X obj 12 296 -~; 64 | #X connect 0 0 6 0; 65 | #X connect 1 0 0 0; 66 | #X connect 2 0 3 0; 67 | #X connect 3 0 10 1; 68 | #X connect 4 0 9 2; 69 | #X connect 6 0 4 0; 70 | #X connect 6 1 13 1; 71 | #X connect 7 0 9 0; 72 | #X connect 8 0 10 0; 73 | #X connect 8 0 21 0; 74 | #X connect 9 0 13 0; 75 | #X connect 10 0 11 0; 76 | #X connect 11 0 21 1; 77 | #X connect 12 0 20 0; 78 | #X connect 13 0 12 0; 79 | #X connect 20 0 11 1; 80 | #X connect 20 0 3 1; 81 | #X connect 21 0 5 0; 82 | -------------------------------------------------------------------------------- /hv.lfo-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 0 0 1853 1004 10; 2 | #X obj 243 514 hv.lfo sine; 3 | #X floatatom 511 240 10 0 0 0 empty - - 16; 4 | #X msg 499 182 0.01; 5 | #X msg 669 181 1; 6 | #X msg 566 185 0.1; 7 | #X msg 442 182 0.001; 8 | #X text 678 139 frequency (Hz); 9 | #X text 1189 188 phase reset; 10 | #X obj 1204 249 vsl 17 128 -1 1 0 0 empty empty empty 0 -9 0 10 #191919 #ffffff #ffffff 0 1; 11 | #X msg 1199 214 0.5; 12 | #X msg 734 181 2; 13 | #X msg 616 180 0.3; 14 | #X floatatom 302 582 11 0 0 0 empty - - 12; 15 | #X floatatom 666 581 12 0 0 0 empty - - 16; 16 | #X floatatom 831 591 12 0 0 0 empty - - 12; 17 | #X obj 783 616 sig~; 18 | #X obj 406 603 sig~; 19 | #X obj 956 612 sig~; 20 | #X obj 243 599 sig~; 21 | #X obj 604 610 sig~; 22 | #X floatatom 1045 602 11 0 0 0 empty - - 12; 23 | #X obj 1144 602 sig~; 24 | #X floatatom 1233 592 10 0 0 0 empty - - 8; 25 | #X floatatom 460 579 11 0 0 0 empty - - 12; 26 | #X obj 405 514 hv.lfo ramp; 27 | #X obj 610 514 hv.lfo saw; 28 | #X obj 782 514 hv.lfo triangle; 29 | #X msg 788 179 5; 30 | #X obj 955 514 hv.lfo square; 31 | #X obj 1143 514 hv.lfo pulse; 32 | #X msg 693 262 \$0; 33 | #X obj 1071 106 vsl 17 128 1.27 127 1 0 empty empty empty 0 -9 0 10 #191919 #ffffff #ffffff 0 1; 34 | #X msg 846 179 5.38; 35 | #X msg 922 177 10.77; 36 | #X msg 999 177 21.54; 37 | #X obj 244 638 else/scope~ 117 142 64 3 64 0 1 0 0 0 0 255 255 255 25 25 25 57 57 57 0 empty; 38 | #X obj 409 638 else/scope~ 130 142 64 3 64 0 1 0 0 0 0 255 255 255 25 25 25 57 57 57 0 empty; 39 | #X obj 611 644 else/scope~ 130 142 64 3 64 0 1 0 0 0 0 255 255 255 25 25 25 57 57 57 0 empty; 40 | #X obj 788 647 else/scope~ 128 142 64 3 64 0 1 0 0 0 0 255 255 255 25 25 25 57 57 57 0 empty; 41 | #X obj 959 647 else/scope~ 130 142 64 3 64 0 1 0 0 0 0 255 255 255 25 25 25 57 57 57 0 empty; 42 | #X obj 1151 640 else/scope~ 130 142 64 3 64 0 1 0 0 0 0 255 255 255 25 25 25 57 57 57 0 empty; 43 | #X obj 922 126 loadbang; 44 | #X obj 1199 389 nbx 9 19 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10 #191919 #ffffff #ffffff 0 256; 45 | #X connect 0 0 18 0; 46 | #X connect 0 0 12 0; 47 | #X connect 1 0 0 0; 48 | #X connect 1 0 24 0; 49 | #X connect 1 0 25 0; 50 | #X connect 1 0 26 0; 51 | #X connect 1 0 28 0; 52 | #X connect 1 0 29 0; 53 | #X connect 2 0 1 0; 54 | #X connect 3 0 1 0; 55 | #X connect 4 0 1 0; 56 | #X connect 5 0 1 0; 57 | #X connect 8 0 42 0; 58 | #X connect 9 0 8 0; 59 | #X connect 10 0 1 0; 60 | #X connect 11 0 1 0; 61 | #X connect 15 0 38 0; 62 | #X connect 16 0 36 0; 63 | #X connect 17 0 39 0; 64 | #X connect 18 0 35 0; 65 | #X connect 19 0 37 0; 66 | #X connect 21 0 40 0; 67 | #X connect 24 0 16 0; 68 | #X connect 24 0 23 0; 69 | #X connect 25 0 19 0; 70 | #X connect 25 0 13 0; 71 | #X connect 26 0 15 0; 72 | #X connect 26 0 14 0; 73 | #X connect 27 0 1 0; 74 | #X connect 28 0 17 0; 75 | #X connect 28 0 20 0; 76 | #X connect 29 0 21 0; 77 | #X connect 29 0 22 0; 78 | #X connect 30 0 0 1; 79 | #X connect 30 0 24 1; 80 | #X connect 30 0 25 1; 81 | #X connect 30 0 26 1; 82 | #X connect 30 0 28 1; 83 | #X connect 31 0 1 0; 84 | #X connect 32 0 1 0; 85 | #X connect 33 0 1 0; 86 | #X connect 34 0 1 0; 87 | #X connect 41 0 33 0; 88 | #X connect 42 0 29 1; 89 | #X connect 42 0 30 0; 90 | -------------------------------------------------------------------------------- /hv.lfo.pd: -------------------------------------------------------------------------------- 1 | #N canvas 359 420 324 252 10; 2 | #X obj 148 108 inlet phase; 3 | #X obj 97 132 hv.lfo/\$1; 4 | #X obj 97 78 inlet freq; 5 | #X obj 97 174 outlet; 6 | #X connect 0 0 1 1 empty; 7 | #X connect 1 0 3 0 empty; 8 | #X connect 2 0 1 0 empty; 9 | -------------------------------------------------------------------------------- /hv.lfo/pulse.pd: -------------------------------------------------------------------------------- 1 | #N canvas 827 239 527 327 12; 2 | #X obj 102 68 inlet; 3 | #X obj 218 63 inlet; 4 | #X obj 103 361 outlet; 5 | #X obj 239 151 loadbang; 6 | #X obj 103 225 snapshot~; 7 | #X obj 103 284 / 2; 8 | #X obj 103 255 + 1; 9 | #X obj 103 317 clip 0 1; 10 | #X obj 102 127 sig~; 11 | #X obj 237 185 metro 1; 12 | #X obj 102 155 ../hv.osc~ square; 13 | #X connect 0 0 8 0; 14 | #X connect 1 0 10 1; 15 | #X connect 3 0 9 0; 16 | #X connect 4 0 6 0; 17 | #X connect 5 0 7 0; 18 | #X connect 6 0 5 0; 19 | #X connect 7 0 2 0; 20 | #X connect 8 0 10 0; 21 | #X connect 9 0 4 0; 22 | #X connect 10 0 4 0; 23 | -------------------------------------------------------------------------------- /hv.lfo/ramp.pd: -------------------------------------------------------------------------------- 1 | #N canvas 827 239 527 327 12; 2 | #X obj 184 113 inlet; 3 | #X obj 283 111 inlet; 4 | #X obj 184 198 sig~; 5 | #X obj 185 236 phasor~; 6 | #X obj 184 283 snapshot~; 7 | #X obj 184 330 outlet; 8 | #X obj 278 203 loadbang; 9 | #X obj 278 236 metro 1; 10 | #X connect 0 0 2 0; 11 | #X connect 1 0 3 1; 12 | #X connect 2 0 3 0; 13 | #X connect 3 0 4 0; 14 | #X connect 4 0 5 0; 15 | #X connect 6 0 7 0; 16 | #X connect 7 0 4 0; 17 | -------------------------------------------------------------------------------- /hv.lfo/saw.pd: -------------------------------------------------------------------------------- 1 | #N canvas 827 239 527 327 12; 2 | #X obj 106 69 inlet; 3 | #X obj 205 67 inlet; 4 | #X obj 106 154 sig~; 5 | #X obj 107 192 phasor~; 6 | #X obj 106 239 snapshot~; 7 | #X obj 108 362 outlet; 8 | #X obj 230 153 loadbang; 9 | #X obj 107 280 * -1; 10 | #X obj 108 315 + 1; 11 | #X obj 228 187 metro 1; 12 | #X connect 0 0 2 0; 13 | #X connect 1 0 3 1; 14 | #X connect 2 0 3 0; 15 | #X connect 3 0 4 0; 16 | #X connect 4 0 7 0; 17 | #X connect 6 0 9 0; 18 | #X connect 7 0 8 0; 19 | #X connect 8 0 5 0; 20 | #X connect 9 0 4 0; 21 | -------------------------------------------------------------------------------- /hv.lfo/sine.pd: -------------------------------------------------------------------------------- 1 | #N canvas 827 239 527 327 12; 2 | #X obj 120 141 inlet; 3 | #X obj 207 143 inlet; 4 | #X obj 119 449 outlet; 5 | #X obj 122 334 snapshot~; 6 | #X obj 120 233 osc~ 0.1; 7 | #X obj 120 376 + 1; 8 | #X obj 215 219 loadbang; 9 | #X obj 119 417 / 2; 10 | #X obj 215 255 metro 1; 11 | #X connect 0 0 4 0; 12 | #X connect 1 0 4 1; 13 | #X connect 3 0 5 0; 14 | #X connect 4 0 3 0; 15 | #X connect 5 0 7 0; 16 | #X connect 6 0 8 0; 17 | #X connect 7 0 2 0; 18 | #X connect 8 0 3 0; 19 | -------------------------------------------------------------------------------- /hv.lfo/square.pd: -------------------------------------------------------------------------------- 1 | #N canvas 827 239 527 327 12; 2 | #X obj 93 67 inlet; 3 | #X obj 192 65 inlet; 4 | #X obj 106 361 outlet; 5 | #X obj 217 151 loadbang; 6 | #X obj 105 225 snapshot~; 7 | #X obj 106 284 / 2; 8 | #X obj 106 255 + 1; 9 | #X obj 102 127 osc~; 10 | #X obj 102 155 *~ 10000; 11 | #X obj 102 177 clip~ -1 1; 12 | #X obj 106 317 clip 0 1; 13 | #X obj 215 185 metro 1; 14 | #X connect 0 0 7 0; 15 | #X connect 1 0 7 1; 16 | #X connect 3 0 11 0; 17 | #X connect 4 0 6 0; 18 | #X connect 5 0 10 0; 19 | #X connect 6 0 5 0; 20 | #X connect 7 0 8 0; 21 | #X connect 8 0 9 0; 22 | #X connect 9 0 4 0; 23 | #X connect 10 0 2 0; 24 | #X connect 11 0 4 0; 25 | -------------------------------------------------------------------------------- /hv.lfo/triangle.pd: -------------------------------------------------------------------------------- 1 | #N canvas 827 239 527 327 12; 2 | #X obj 69 54 inlet; 3 | #X obj 133 54 inlet; 4 | #X obj 69 128 sig~; 5 | #X obj 70 166 phasor~; 6 | #X obj 69 213 snapshot~; 7 | #X obj 69 368 outlet; 8 | #X obj 191 128 loadbang; 9 | #X obj 69 256 * 2; 10 | #X obj 69 285 - 1; 11 | #X obj 69 327 abs; 12 | #X obj 133 128 + 0.5; 13 | #X obj 191 161 metro 1; 14 | #X connect 0 0 2 0; 15 | #X connect 1 0 10 0; 16 | #X connect 2 0 3 0; 17 | #X connect 3 0 4 0; 18 | #X connect 4 0 7 0; 19 | #X connect 6 0 11 0; 20 | #X connect 7 0 8 0; 21 | #X connect 8 0 9 0; 22 | #X connect 9 0 5 0; 23 | #X connect 10 0 3 1; 24 | #X connect 11 0 4 0; 25 | -------------------------------------------------------------------------------- /hv.log~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 456 238 405 295 10; 2 | #X floatatom 31 245 5 0 0 0 - - -; 3 | #X floatatom 31 71 5 0 0 0 - - -; 4 | #X obj 31 91 sig~ 0; 5 | #X obj 82 112 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 6 | -1; 7 | #X obj 31 224 snapshot~; 8 | #X obj 43 202 metro 100; 9 | #X obj 43 180 loadbang; 10 | #X msg 82 132 10; 11 | #X text 30 8 Signal rate logarithm operation. The left inlet must be 12 | a signal and the right inlet takes the base. The base may optionally 13 | also be initialised with the object. If no base is supplied \, then 14 | the natural logarithm is assumed (base e).; 15 | #X obj 31 157 hv.log~ 2; 16 | #X connect 1 0 2 0; 17 | #X connect 2 0 9 0; 18 | #X connect 3 0 7 0; 19 | #X connect 4 0 0 0; 20 | #X connect 5 0 4 0; 21 | #X connect 6 0 5 0; 22 | #X connect 7 0 9 1; 23 | #X connect 9 0 4 0; 24 | -------------------------------------------------------------------------------- /hv.log~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 117 94 165 302 10; 2 | #X obj 14 22 inlet~; 3 | #X obj 14 277 outlet~; 4 | #N canvas 620 157 160 113 @hv_obj 0; 5 | #X obj 16 9 inlet~; 6 | #X obj 16 76 outlet~; 7 | #X obj 16 54 log~; 8 | #X obj 37 31 sig~ 2; 9 | #X connect 0 0 2 0; 10 | #X connect 2 0 1 0; 11 | #X connect 3 0 2 1; 12 | #X restore 14 70 pd @hv_obj __log2~f; 13 | #X obj 77 184 log; 14 | #X obj 77 231 /; 15 | #X msg 77 208 0.693147 \$1; 16 | #X obj 14 46 max~ 0; 17 | #X text 61 46 [0 \, inf]; 18 | #X obj 37 117 f \$1; 19 | #X obj 37 94 loadbang; 20 | #X obj 38 160 moses 1; 21 | #X obj 49 137 inlet; 22 | #X obj 14 254 *~ 0.693147; 23 | #X connect 0 0 6 0; 24 | #X connect 2 0 12 0; 25 | #X connect 3 0 5 0; 26 | #X connect 4 0 12 1; 27 | #X connect 5 0 4 0; 28 | #X connect 6 0 2 0; 29 | #X connect 8 0 10 0; 30 | #X connect 9 0 8 0; 31 | #X connect 10 1 3 0; 32 | #X connect 11 0 10 0; 33 | #X connect 12 0 1 0; 34 | -------------------------------------------------------------------------------- /hv.lop~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 107 100 527 592 10; 2 | #X obj 142 331 hv.filters/spectrolog; 3 | #X obj 86 107 hsl 128 19 0 127 0 1 empty empty Cutoff -2 -8 0 10 #00ff04 #000000 #000000 6000 1; 4 | #X floatatom 83 131 5 0 0 0 - - - 0; 5 | #X msg 83 151 \$1 20; 6 | #X obj 83 172 line~; 7 | #X obj 83 203 +~; 8 | #X obj 22 432 dac~ 1 2; 9 | #X obj 83 224 mtof~; 10 | #X obj 37 370 tgl 16 0 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000 0 1; 11 | #X obj 22 396 *~; 12 | #X obj 22 305 *~ 0.2; 13 | #X obj 22 279 hv.lop~; 14 | #X obj 22 73 phasor~ 110; 15 | #X obj 22 94 *~ 2; 16 | #X obj 22 115 -~ 1; 17 | #X obj 137 177 *~ 48; 18 | #X text 20 11 A variant of [lop~] that has a signal-controlled cutoff. Like [lop~] \, the filter has no effect when the cutoff is above SR/(2pi).; 19 | #X obj 137 156 osc~ 4; 20 | #X connect 1 0 2 0; 21 | #X connect 2 0 3 0; 22 | #X connect 3 0 4 0; 23 | #X connect 4 0 5 0; 24 | #X connect 5 0 7 0; 25 | #X connect 7 0 11 1; 26 | #X connect 8 0 9 1; 27 | #X connect 9 0 6 0; 28 | #X connect 9 0 6 1; 29 | #X connect 10 0 0 0; 30 | #X connect 10 0 9 0; 31 | #X connect 11 0 10 0; 32 | #X connect 12 0 13 0; 33 | #X connect 13 0 14 0; 34 | #X connect 14 0 11 0; 35 | #X connect 15 0 5 1; 36 | #X connect 17 0 15 0; 37 | -------------------------------------------------------------------------------- /hv.lop~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 946 561 434 419 10; 2 | #X obj 207 102 samplerate~; 3 | #X obj 207 81 loadbang; 4 | #X obj 45 222 sig~ 1; 5 | #X obj 45 250 -~; 6 | #X obj 207 144 / 2; 7 | #X obj 186 318 outlet~; 8 | #X obj 207 123 t f f; 9 | #X obj 82 140 inlet~; 10 | #X obj 12 108 inlet~; 11 | #X obj 82 166 clip~ 0 22050; 12 | #X obj 12 276 *~; 13 | #X obj 186 292 rpole~; 14 | #X obj 219 213 *~ -6.28319; 15 | #X obj 189 192 /~ 44100; 16 | #X text 12 13 One-pole Lowpass Filter; 17 | #X text 8 369 https://www.musicdsp.org/en/latest/Filters/237-one-pole-filter-lp-and-hp.html; 18 | #X text 8 349 Reference:; 19 | #X text 82 120 Inlet 2: Frequency; 20 | #X text 186 338 Outlet 1: lowpass output; 21 | #X text 12 88 Inlet 1: Input; 22 | #N canvas 152 188 516 403 hv.exp~ 0; 23 | #X obj 17 13 inlet~; 24 | #X obj 19 338 outlet~; 25 | #X obj 17 38 *~ 0.000976562; 26 | #X obj 17 62 +~ 1; 27 | #X obj 17 112 *~; 28 | #X obj 17 87 *~; 29 | #X obj 18 162 *~; 30 | #X obj 18 137 *~; 31 | #X obj 18 214 *~; 32 | #X obj 18 189 *~; 33 | #X obj 19 264 *~; 34 | #X obj 19 239 *~; 35 | #X obj 19 314 *~; 36 | #X obj 19 289 *~; 37 | #X text 122 10 https://en.wikipedia.org/wiki/Exponential_function; 38 | #X text 121 29 https://codingforspeed.com/using-faster-exponential-approximation/; 39 | #X connect 0 0 2 0; 40 | #X connect 2 0 3 0; 41 | #X connect 3 0 5 0; 42 | #X connect 3 0 5 1; 43 | #X connect 4 0 7 0; 44 | #X connect 4 0 7 1; 45 | #X connect 5 0 4 0; 46 | #X connect 5 0 4 1; 47 | #X connect 6 0 9 0; 48 | #X connect 6 0 9 1; 49 | #X connect 7 0 6 0; 50 | #X connect 7 0 6 1; 51 | #X connect 8 0 11 0; 52 | #X connect 8 0 11 1; 53 | #X connect 9 0 8 0; 54 | #X connect 9 0 8 1; 55 | #X connect 10 0 13 0; 56 | #X connect 10 0 13 1; 57 | #X connect 11 0 10 0; 58 | #X connect 11 0 10 1; 59 | #X connect 12 0 1 0; 60 | #X connect 13 0 12 0; 61 | #X connect 13 0 12 1; 62 | #X restore 219 234 pd hv.exp~; 63 | #X connect 0 0 6 0; 64 | #X connect 1 0 0 0; 65 | #X connect 2 0 3 0; 66 | #X connect 3 0 10 1; 67 | #X connect 4 0 9 2; 68 | #X connect 6 0 4 0; 69 | #X connect 6 1 13 1; 70 | #X connect 7 0 9 0; 71 | #X connect 8 0 10 0; 72 | #X connect 9 0 13 0; 73 | #X connect 10 0 11 0; 74 | #X connect 11 0 5 0; 75 | #X connect 12 0 20 0; 76 | #X connect 13 0 12 0; 77 | #X connect 20 0 11 1; 78 | #X connect 20 0 3 1; 79 | -------------------------------------------------------------------------------- /hv.lte~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 608 484 391 249 10; 2 | #X obj 31 172 env~; 3 | #X floatatom 31 217 5 0 0 0 - - -; 4 | #X text 23 14 Signal rate <=~ (less-then-or-equal-to) operation.; 5 | #X text 23 30 Outputs 1 if left input is less than or equal to the 6 | right input \, 0 otherwise.; 7 | #X floatatom 31 71 5 0 0 0 - - -; 8 | #X obj 69 117 sig~ 0; 9 | #X obj 31 91 sig~ 0; 10 | #X obj 31 194 dbtorms; 11 | #X obj 31 148 hv.lte~; 12 | #X connect 0 0 7 0; 13 | #X connect 4 0 6 0; 14 | #X connect 5 0 8 1; 15 | #X connect 6 0 8 0; 16 | #X connect 7 0 1 0; 17 | #X connect 8 0 0 0; 18 | -------------------------------------------------------------------------------- /hv.lte~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 795 419 292 175 10; 2 | #X obj 150 34 inlet~; 3 | #X obj 45 34 inlet~; 4 | #X obj 45 129 outlet~; 5 | #N canvas 467 216 450 300 @hv_obj 0; 6 | #X obj 217 60 inlet~; 7 | #X obj 120 60 inlet~; 8 | #X obj 170 183 outlet~; 9 | #X connect 1 0 2 0; 10 | #X restore 45 105 pd @hv_obj __and~f; 11 | #X obj 150 83 sig~ 1; 12 | #N canvas 715 101 191 233 @hv_obj 1; 13 | #X obj 49 83 -~; 14 | #X obj 50 109 clip~ -1e-37 0; 15 | #X obj 49 32 inlet~; 16 | #X obj 93 33 inlet~; 17 | #X obj 50 174 outlet~; 18 | #X obj 50 151 *~ 1e+37; 19 | #X obj 49 58 min~; 20 | #X obj 50 130 +~ 1e-37; 21 | #X connect 0 0 1 0; 22 | #X connect 1 0 7 0; 23 | #X connect 2 0 6 0; 24 | #X connect 2 0 0 1; 25 | #X connect 3 0 6 1; 26 | #X connect 5 0 4 0; 27 | #X connect 6 0 0 0; 28 | #X connect 7 0 5 0; 29 | #X restore 45 57 pd @hv_obj __lte~f; 30 | #X connect 0 0 5 1; 31 | #X connect 1 0 5 0; 32 | #X connect 3 0 2 0; 33 | #X connect 4 0 3 1; 34 | #X connect 5 0 3 0; 35 | -------------------------------------------------------------------------------- /hv.lt~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 1099 442 390 231 10; 2 | #X obj 31 162 env~; 3 | #X floatatom 31 207 5 0 0 0 - - -; 4 | #X floatatom 31 71 5 0 0 0 - - -; 5 | #X obj 63 113 sig~ 0; 6 | #X obj 31 91 sig~ 0; 7 | #X obj 31 184 dbtorms; 8 | #X text 23 14 Signal rate <~ (less-than) operation.; 9 | #X text 23 30 Outputs 1 if left input is less than the right input 10 | \, 0 otherwise.; 11 | #X obj 31 137 hv.lt~; 12 | #X connect 0 0 5 0; 13 | #X connect 2 0 4 0; 14 | #X connect 3 0 8 1; 15 | #X connect 4 0 8 0; 16 | #X connect 5 0 1 0; 17 | #X connect 8 0 0 0; 18 | -------------------------------------------------------------------------------- /hv.lt~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 855 583 249 187 10; 2 | #X obj 130 31 inlet~; 3 | #X obj 31 31 inlet~; 4 | #X obj 31 126 outlet~; 5 | #N canvas 467 216 450 300 @hv_obj 0; 6 | #X obj 217 60 inlet~; 7 | #X obj 120 60 inlet~; 8 | #X obj 170 183 outlet~; 9 | #X connect 1 0 2 0; 10 | #X restore 31 102 pd @hv_obj __and~f; 11 | #X obj 136 80 sig~ 1; 12 | #N canvas 715 131 223 209 @hv_obj 1; 13 | #X obj 46 22 inlet~; 14 | #X obj 46 147 outlet~; 15 | #X obj 46 124 *~; 16 | #X obj 140 22 inlet~; 17 | #X obj 61 80 sig~ 1; 18 | #X obj 61 102 -~; 19 | #X obj 46 54 hv.lte~; 20 | #X obj 102 54 hv.gte~; 21 | #X connect 0 0 6 0; 22 | #X connect 0 0 7 0; 23 | #X connect 2 0 1 0; 24 | #X connect 3 0 6 1; 25 | #X connect 3 0 7 1; 26 | #X connect 4 0 5 0; 27 | #X connect 5 0 2 1; 28 | #X connect 6 0 2 0; 29 | #X connect 7 0 5 1; 30 | #X restore 31 54 pd @hv_obj __lt~f; 31 | #X connect 0 0 5 1; 32 | #X connect 1 0 5 0; 33 | #X connect 3 0 2 0; 34 | #X connect 4 0 3 1; 35 | #X connect 5 0 3 0; 36 | -------------------------------------------------------------------------------- /hv.multiplex~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 1286 391 556 436 10; 2 | #X obj 75 181 sig~ 5; 3 | #X obj 99 217 sig~ 250; 4 | #X obj 213 224 sig~ 1; 5 | #X obj 356 197 hsl 128 15 0 2 0 0 empty empty rhs -2 -8 0 10 -262144 6 | -1 -1 12700 1; 7 | #X obj 352 242 sig~; 8 | #X floatatom 353 221 5 0 0 0 - - -; 9 | #X obj 75 332 env~; 10 | #X obj 75 354 dbtorms; 11 | #X floatatom 75 376 5 0 0 0 - - -; 12 | #X text 47 119 else:; 13 | #X obj 216 201 hsl 128 15 0 2 0 0 empty empty lhs -2 -8 0 10 -262144 14 | -1 -1 0 1; 15 | #X obj 394 148 loadbang; 16 | #X msg 394 170 2; 17 | #X text 57 99 output = a; 18 | #X text 57 139 output = b; 19 | #X text 26 22 Signal multiplexer.; 20 | #X text 25 42 Output one of two input signals based on a comparison 21 | result.; 22 | #X text 126 180 a; 23 | #X text 164 217 b; 24 | #X text 47 79 if lhs > rhs:; 25 | #X obj 75 310 hv.multiplex~; 26 | #X connect 0 0 20 0; 27 | #X connect 1 0 20 1; 28 | #X connect 2 0 20 2; 29 | #X connect 3 0 5 0; 30 | #X connect 4 0 20 3; 31 | #X connect 5 0 4 0; 32 | #X connect 6 0 7 0; 33 | #X connect 7 0 8 0; 34 | #X connect 10 0 2 0; 35 | #X connect 11 0 12 0; 36 | #X connect 12 0 3 0; 37 | #X connect 20 0 6 0; 38 | -------------------------------------------------------------------------------- /hv.multiplex~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 807 22 513 247 10; 2 | #X obj 38 197 outlet~; 3 | #N canvas 467 216 159 96 @hv_obj 0; 4 | #X obj 60 18 inlet~; 5 | #X obj 15 18 inlet~; 6 | #X obj 15 65 outlet~; 7 | #X obj 15 42 *~; 8 | #X connect 0 0 3 1; 9 | #X connect 1 0 3 0; 10 | #X connect 3 0 2 0; 11 | #X restore 38 112 pd @hv_obj __and~f; 12 | #N canvas 467 216 188 166 @hv_obj 0; 13 | #X obj 79 11 inlet~; 14 | #X obj 31 11 inlet~; 15 | #X obj 16 112 outlet~; 16 | #X obj 16 37 sig~ 1; 17 | #X obj 16 61 -~; 18 | #X obj 16 89 *~; 19 | #X connect 0 0 5 1; 20 | #X connect 1 0 4 1; 21 | #X connect 3 0 4 0; 22 | #X connect 4 0 5 0; 23 | #X connect 5 0 2 0; 24 | #X restore 162 114 pd @hv_obj __andnot~f; 25 | #N canvas 538 372 182 89 @hv_obj 0; 26 | #X obj 66 18 inlet~; 27 | #X obj 15 18 inlet~; 28 | #X obj 15 65 outlet~; 29 | #X obj 15 42 +~, f 9; 30 | #X connect 0 0 3 1; 31 | #X connect 1 0 3 0; 32 | #X connect 3 0 2 0; 33 | #X restore 38 157 pd @hv_obj __or~f; 34 | #X obj 285 34 inlet~ lhs; 35 | #X obj 384 34 inlet~ rhs; 36 | #X obj 38 34 inlet~ input-a; 37 | #X obj 162 34 inlet~ input-b; 38 | #N canvas 0 22 144 197 @hv_obj 0; 39 | #X obj 23 69 -~; 40 | #X obj 23 94 clip~ -1e-37 0; 41 | #X obj 23 18 inlet~; 42 | #X obj 67 19 inlet~; 43 | #X obj 23 159 outlet~; 44 | #X obj 23 136 *~ 1e+37; 45 | #X obj 23 44 min~; 46 | #X obj 23 115 +~ 1e-37; 47 | #X connect 0 0 1 0; 48 | #X connect 1 0 7 0; 49 | #X connect 2 0 6 0; 50 | #X connect 3 0 6 1; 51 | #X connect 3 0 0 1; 52 | #X connect 5 0 4 0; 53 | #X connect 6 0 0 0; 54 | #X connect 7 0 5 0; 55 | #X restore 285 73 pd @hv_obj __gt~f; 56 | #X connect 1 0 3 0; 57 | #X connect 2 0 3 1; 58 | #X connect 3 0 0 0; 59 | #X connect 4 0 8 0; 60 | #X connect 5 0 8 1; 61 | #X connect 6 0 1 0; 62 | #X connect 7 0 2 1; 63 | #X connect 8 0 2 0; 64 | #X connect 8 0 1 1; 65 | -------------------------------------------------------------------------------- /hv.neq~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 995 493 390 231 10; 2 | #X obj 31 162 env~; 3 | #X floatatom 31 207 5 0 0 0 - - -; 4 | #X floatatom 31 71 5 0 0 0 - - -; 5 | #X obj 69 113 sig~ 0; 6 | #X obj 31 91 sig~ 0; 7 | #X obj 31 184 dbtorms; 8 | #X text 23 14 Signal rate !=~ (not equal) operation.; 9 | #X text 23 30 Outputs 1 if left input is not equal to the right input 10 | \, 0 otherwise.; 11 | #X obj 31 137 hv.neq~; 12 | #X connect 0 0 5 0; 13 | #X connect 2 0 4 0; 14 | #X connect 3 0 8 1; 15 | #X connect 4 0 8 0; 16 | #X connect 5 0 1 0; 17 | #X connect 8 0 0 0; 18 | -------------------------------------------------------------------------------- /hv.neq~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 855 583 241 181 10; 2 | #X obj 132 31 inlet~; 3 | #X obj 27 31 inlet~; 4 | #X obj 27 113 outlet~; 5 | #N canvas 1 558 450 300 @hv_obj 1; 6 | #X obj 167 31 inlet~; 7 | #X obj 71 31 inlet~; 8 | #X obj 23 202 outlet~; 9 | #X obj 71 128 *~; 10 | #X obj 23 169 -~; 11 | #X obj 23 129 sig~ 1; 12 | #X obj 71 79 hv.gte~; 13 | #X obj 127 78 hv.lte~; 14 | #X connect 0 0 6 1; 15 | #X connect 0 0 7 1; 16 | #X connect 1 0 6 0; 17 | #X connect 1 0 7 0; 18 | #X connect 3 0 4 1; 19 | #X connect 4 0 2 0; 20 | #X connect 5 0 4 0; 21 | #X connect 6 0 3 0; 22 | #X connect 7 0 3 1; 23 | #X restore 27 72 pd @hv_obj __neq~f; 24 | #X connect 0 0 3 1; 25 | #X connect 1 0 3 0; 26 | #X connect 3 0 2 0; 27 | -------------------------------------------------------------------------------- /hv.osc/polyblep.pd: -------------------------------------------------------------------------------- 1 | #N canvas 1053 269 541 429 10; 2 | #X obj 29 353 -~; 3 | #X obj 389 131 -~; 4 | #X obj 139 19 sig~ 1; 5 | #X obj 194 73 /~; 6 | #X obj 29 385 outlet~; 7 | #X obj 29 20 inlet~ phase; 8 | #X obj 403 18 inlet~ normalisedFreq; 9 | #X obj 29 248 *~; 10 | #X obj 179 249 *~; 11 | #X obj 29 127 *~; 12 | #X obj 179 219 -~; 13 | #N canvas 467 216 450 300 @hv_obj 0; 14 | #X obj 217 60 inlet~; 15 | #X obj 120 60 inlet~; 16 | #X obj 145 135 outlet~; 17 | #X obj 145 97 *~; 18 | #X connect 0 0 3 1; 19 | #X connect 1 0 3 0; 20 | #X connect 3 0 2 0; 21 | #X restore 29 275 pd @hv_obj __and~f; 22 | #N canvas 715 101 191 233 @hv_obj 0; 23 | #X obj 49 83 -~; 24 | #X obj 50 109 clip~ -1e-37 0; 25 | #X obj 49 32 inlet~; 26 | #X obj 93 33 inlet~; 27 | #X obj 50 174 outlet~; 28 | #X obj 50 151 *~ 1e+37; 29 | #X obj 49 58 min~; 30 | #X obj 50 130 +~ 1e-37; 31 | #X connect 0 0 1 0; 32 | #X connect 1 0 7 0; 33 | #X connect 2 0 6 0; 34 | #X connect 2 0 0 1; 35 | #X connect 3 0 6 1; 36 | #X connect 5 0 4 0; 37 | #X connect 6 0 0 0; 38 | #X connect 7 0 5 0; 39 | #X restore 134 156 pd @hv_obj __lte~f; 40 | #N canvas 467 216 450 300 @hv_obj 0; 41 | #X obj 179 61 inlet~; 42 | #X obj 120 60 inlet~; 43 | #X obj 146 134 outlet~; 44 | #X obj 150 95 *~; 45 | #X connect 0 0 3 1; 46 | #X connect 1 0 3 0; 47 | #X connect 3 0 2 0; 48 | #X restore 179 275 pd @hv_obj __and~f; 49 | #N canvas 258 74 144 198 @hv_obj 0; 50 | #X obj 23 69 -~; 51 | #X obj 23 94 clip~ -1e-37 0; 52 | #X obj 23 18 inlet~; 53 | #X obj 67 19 inlet~; 54 | #X obj 23 159 outlet~; 55 | #X obj 23 136 *~ 1e+37; 56 | #X obj 23 44 min~; 57 | #X obj 23 115 +~ 1e-37; 58 | #X connect 0 0 1 0; 59 | #X connect 1 0 7 0; 60 | #X connect 2 0 6 0; 61 | #X connect 3 0 6 1; 62 | #X connect 3 0 0 1; 63 | #X connect 5 0 4 0; 64 | #X connect 6 0 0 0; 65 | #X connect 7 0 5 0; 66 | #X restore 284 156 pd @hv_obj __gte~f; 67 | #X obj 194 189 -~; 68 | #X obj 29 218 -~; 69 | #X connect 0 0 4 0; 70 | #X connect 1 0 14 1; 71 | #X connect 2 0 3 0; 72 | #X connect 2 0 1 0; 73 | #X connect 2 0 15 1; 74 | #X connect 2 0 16 1; 75 | #X connect 3 0 9 1; 76 | #X connect 3 0 15 0; 77 | #X connect 5 0 9 0; 78 | #X connect 5 0 12 0; 79 | #X connect 5 0 14 0; 80 | #X connect 6 0 1 1; 81 | #X connect 6 0 3 1; 82 | #X connect 6 0 12 1; 83 | #X connect 7 0 11 0; 84 | #X connect 8 0 13 0; 85 | #X connect 9 0 10 0; 86 | #X connect 9 0 16 0; 87 | #X connect 10 0 8 0; 88 | #X connect 10 0 8 1; 89 | #X connect 11 0 0 0; 90 | #X connect 12 0 11 1; 91 | #X connect 13 0 0 1; 92 | #X connect 14 0 13 1; 93 | #X connect 15 0 10 1; 94 | #X connect 16 0 7 0; 95 | #X connect 16 0 7 1; 96 | -------------------------------------------------------------------------------- /hv.osc/saw.pd: -------------------------------------------------------------------------------- 1 | #N canvas 362 23 425 358 10; 2 | #X obj 43 105 inlet~ freq; 3 | #X obj 43 161 phasor~; 4 | #X obj 43 312 outlet~; 5 | #X obj 127 105 inlet phase; 6 | #X text 40 25 Band-limited saw based on christian foisland's polyblep 7 | implementation:; 8 | #X text 41 56 https://github.com/cfloisand/pd-polyblep/blob/master/Source/polyblep~.c 9 | ; 10 | #X obj 140 191 *~; 11 | #X obj 43 280 +~; 12 | #N canvas 0 22 220 222 saw 1; 13 | #X obj 62 119 -~ 1; 14 | #X obj 62 141 outlet~; 15 | #X obj 62 73 inlet~; 16 | #X obj 62 97 +~; 17 | #X connect 0 0 1 0; 18 | #X connect 2 0 3 0; 19 | #X connect 2 0 3 1; 20 | #X connect 3 0 0 0; 21 | #X restore 43 221 pd saw; 22 | #X obj 95 221 polyblep; 23 | #N canvas 0 22 253 235 1/Fs 0; 24 | #X obj 55 77 samplerate~; 25 | #X obj 55 57 loadbang; 26 | #X msg 55 97 1 \$1; 27 | #X obj 55 117 /; 28 | #X obj 55 137 sig~; 29 | #X obj 55 159 outlet~; 30 | #X connect 0 0 2 0; 31 | #X connect 1 0 0 0; 32 | #X connect 2 0 3 0; 33 | #X connect 3 0 4 0; 34 | #X connect 4 0 5 0; 35 | #X restore 155 161 pd 1/Fs; 36 | #X connect 0 0 1 0; 37 | #X connect 0 0 6 0; 38 | #X connect 1 0 8 0; 39 | #X connect 1 0 9 0; 40 | #X connect 3 0 1 1; 41 | #X connect 6 0 9 1; 42 | #X connect 7 0 2 0; 43 | #X connect 8 0 7 0; 44 | #X connect 9 0 7 1; 45 | #X connect 10 0 6 1; 46 | -------------------------------------------------------------------------------- /hv.osc/sine.pd: -------------------------------------------------------------------------------- 1 | #N canvas 1171 326 236 228 10; 2 | #X obj 75 51 inlet~ freq; 3 | #X obj 96 78 inlet phase; 4 | #X obj 75 106 osc~; 5 | #X obj 75 148 outlet~; 6 | #X connect 0 0 2 0; 7 | #X connect 1 0 2 1; 8 | #X connect 2 0 3 0; 9 | -------------------------------------------------------------------------------- /hv.osc/square.pd: -------------------------------------------------------------------------------- 1 | #N canvas 658 213 442 528 10; 2 | #X obj 44 35 inlet~ freq; 3 | #X obj 44 81 phasor~; 4 | #X obj 46 487 outlet~; 5 | #X obj 151 252 *~; 6 | #X obj 46 336 +~; 7 | #N canvas 0 22 220 222 saw 0; 8 | #X obj 62 119 -~ 1; 9 | #X obj 62 141 outlet~; 10 | #X obj 62 73 inlet~; 11 | #X obj 62 97 +~; 12 | #X connect 0 0 1 0; 13 | #X connect 2 0 3 0; 14 | #X connect 2 0 3 1; 15 | #X connect 3 0 0 0; 16 | #X restore 46 296 pd saw; 17 | #X obj 254 222 +~; 18 | #X obj 254 254 wrap~; 19 | #X obj 46 397 -~; 20 | #X obj 190 326 +~; 21 | #N canvas 0 22 220 222 saw 0; 22 | #X obj 62 119 -~ 1; 23 | #X obj 62 141 outlet~; 24 | #X obj 62 73 inlet~; 25 | #X obj 62 97 +~; 26 | #X connect 0 0 1 0; 27 | #X connect 2 0 3 0; 28 | #X connect 2 0 3 1; 29 | #X connect 3 0 0 0; 30 | #X restore 190 296 pd saw; 31 | #X obj 46 457 -~ 1; 32 | #X obj 46 427 +~; 33 | #X obj 254 296 polyblep; 34 | #X obj 106 296 polyblep; 35 | #X obj 269 66 sig~ 0.5; 36 | #N canvas 0 22 253 235 1/Fs 0; 37 | #X obj 55 77 samplerate~; 38 | #X obj 55 57 loadbang; 39 | #X msg 55 97 1 \$1; 40 | #X obj 55 117 /; 41 | #X obj 55 137 sig~; 42 | #X obj 55 159 outlet~; 43 | #X connect 0 0 2 0; 44 | #X connect 1 0 0 0; 45 | #X connect 2 0 3 0; 46 | #X connect 3 0 4 0; 47 | #X connect 4 0 5 0; 48 | #X restore 166 224 pd 1/Fs; 49 | #X obj 269 36 inlet width; 50 | #X obj 269 119 samphold~; 51 | #X obj 341 296 +~; 52 | #X connect 0 0 1 0; 53 | #X connect 0 0 3 0; 54 | #X connect 1 0 5 0; 55 | #X connect 1 0 6 0; 56 | #X connect 1 0 14 0; 57 | #X connect 1 0 18 1; 58 | #X connect 3 0 13 1; 59 | #X connect 3 0 14 1; 60 | #X connect 4 0 8 0; 61 | #X connect 5 0 4 0; 62 | #X connect 6 0 7 0; 63 | #X connect 7 0 10 0; 64 | #X connect 7 0 13 0; 65 | #X connect 8 0 12 0; 66 | #X connect 9 0 8 1; 67 | #X connect 10 0 9 0; 68 | #X connect 11 0 2 0; 69 | #X connect 12 0 11 0; 70 | #X connect 13 0 9 1; 71 | #X connect 14 0 4 1; 72 | #X connect 15 0 18 0; 73 | #X connect 16 0 3 1; 74 | #X connect 17 0 15 0; 75 | #X connect 18 0 6 1; 76 | #X connect 18 0 19 0; 77 | #X connect 18 0 19 1; 78 | #X connect 19 0 12 1; 79 | -------------------------------------------------------------------------------- /hv.osc~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 699 146 1189 640 10; 2 | #X floatatom 31 316 5 0 0 0 - - -; 3 | #X obj 31 345 sig~; 4 | #X text 65 316 Hz; 5 | #X text 64 346 (frequency input needs to be at signal rate); 6 | #X text 25 56 The output can get a bit noisy at upper frequencies \, 7 | but reduces effects of aliasing when using a phasor~ and doesn't require 8 | wavetables.; 9 | #X obj 302 395 phasor~; 10 | #X obj 302 417 *~ 2; 11 | #X obj 302 439 -~ 1; 12 | #X obj 52 428 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 13 | 1; 14 | #X obj 323 471 == 0; 15 | #X text 70 427 compare to (centred) phasor output; 16 | #X text 26 29 Polynomial band-limited step (Polystep) oscillators. 17 | ; 18 | #X obj 302 493 *~ 0; 19 | #X obj 31 508 *~ 1; 20 | #X text 28 114 References:; 21 | #X text 59 140 https://github.com/cfloisand/pd-polyblep/blob/master/Source/polyblep~.c 22 | ; 23 | #X text 59 180 http://musicdsp.org/files/bandlimited.pdf; 24 | #X text 59 210 http://www.martin-finke.de/blog/articles/audio-plugins-018-polyblep-oscillator/ 25 | ; 26 | #X text 25 276 Sawtooth; 27 | #X text 25 286 -------------------------------------------------------- 28 | ; 29 | #X floatatom 413 316 5 0 0 0 - - -; 30 | #X obj 413 345 sig~; 31 | #X text 447 316 Hz; 32 | #X obj 434 428 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 33 | 1; 34 | #X obj 675 471 == 0; 35 | #X obj 654 493 *~ 0; 36 | #X obj 413 508 *~ 1; 37 | #X text 407 286 -------------------------------------------------------- 38 | ; 39 | #X text 407 276 Square; 40 | #X text 452 426 compare to a dirty square; 41 | #X obj 497 336 hsl 128 15 0 1 0 0 empty empty empty -2 -8 0 10 -262144 42 | -1 -1 0 1; 43 | #X text 635 335 Pulse-width control (0..1); 44 | #X floatatom 122 316 5 0 0 0 - - -; 45 | #X text 162 314 phase reset; 46 | #X obj 445 539 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 47 | 1; 48 | #X obj 60 548 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 49 | 1; 50 | #X msg 494 311 0.5; 51 | #X text 526 311 50% will be equal width; 52 | #X obj 654 389 osc~; 53 | #X obj 654 417 *~ 10000; 54 | #X obj 654 439 clip~ -1 1; 55 | #X obj 689 180 *~ 0.01; 56 | #X obj 689 202 dac~; 57 | #X obj 717 91 loadbang; 58 | #X obj 717 113 metro 80; 59 | #N canvas 1 558 450 278 (subpatch) 0; 60 | #X array \$0-array1 1000 float 0; 61 | #X coords 0 1.1 999 -1.1 300 200 1 0 0; 62 | #X restore 857 52 graph; 63 | #X obj 718 144 tabwrite~ \$0-array1; 64 | #X obj 778 90 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 65 | 1; 66 | #X obj 31 547 *~; 67 | #X obj 413 537 *~; 68 | #X obj 31 579 throw~ \$0-mix; 69 | #X obj 409 577 throw~ \$0-mix; 70 | #X obj 689 58 catch~ \$0-mix; 71 | #X obj 499 60 hv.osc~ sine; 72 | #X obj 499 90 hv.osc~ saw; 73 | #X obj 499 120 hv.osc~ square; 74 | #X obj 31 400 hv.osc~ saw; 75 | #X obj 413 390 hv.osc~ square; 76 | #X connect 0 0 1 0; 77 | #X connect 1 0 5 0; 78 | #X connect 1 0 56 0; 79 | #X connect 5 0 6 0; 80 | #X connect 6 0 7 0; 81 | #X connect 7 0 12 0; 82 | #X connect 8 0 9 0; 83 | #X connect 8 0 13 1; 84 | #X connect 9 0 12 1; 85 | #X connect 12 0 48 0; 86 | #X connect 13 0 48 0; 87 | #X connect 20 0 21 0; 88 | #X connect 20 0 1 0; 89 | #X connect 21 0 38 0; 90 | #X connect 21 0 57 0; 91 | #X connect 23 0 24 0; 92 | #X connect 23 0 26 1; 93 | #X connect 24 0 25 1; 94 | #X connect 25 0 49 0; 95 | #X connect 26 0 49 0; 96 | #X connect 30 0 57 1; 97 | #X connect 32 0 5 1; 98 | #X connect 32 0 56 1; 99 | #X connect 34 0 49 1; 100 | #X connect 35 0 48 1; 101 | #X connect 36 0 30 0; 102 | #X connect 38 0 39 0; 103 | #X connect 39 0 40 0; 104 | #X connect 40 0 25 0; 105 | #X connect 41 0 42 0; 106 | #X connect 41 0 42 1; 107 | #X connect 43 0 44 0; 108 | #X connect 44 0 46 0; 109 | #X connect 47 0 44 0; 110 | #X connect 48 0 50 0; 111 | #X connect 49 0 51 0; 112 | #X connect 52 0 41 0; 113 | #X connect 52 0 46 0; 114 | #X connect 56 0 13 0; 115 | #X connect 57 0 26 0; 116 | -------------------------------------------------------------------------------- /hv.osc~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 359 420 324 252 10; 2 | #X obj 97 174 outlet~; 3 | #X obj 148 108 inlet phase; 4 | #X obj 97 78 inlet~ freq; 5 | #X obj 97 132 hv.osc/\$1; 6 | #X connect 1 0 3 1; 7 | #X connect 2 0 3 0; 8 | #X connect 3 0 0 0; 9 | -------------------------------------------------------------------------------- /hv.pinknoise~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 553 155 602 437 10; 2 | #X obj 143 66 noise~; 3 | #N canvas 228 148 359 538 fft-analysis 0; 4 | #X obj 15 164 *~; 5 | #X obj 14 99 inlet~; 6 | #X obj 15 218 rfft~; 7 | #X obj 36 140 tabreceive~ \$0-hann; 8 | #X obj 14 306 *~; 9 | #X obj 56 306 *~; 10 | #X obj 15 356 sqrt~; 11 | #X obj 14 498 tabwrite~ \$0-magnitude; 12 | #X obj 23 416 loadbang; 13 | #X obj 23 470 metro 250; 14 | #X obj 23 449 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 15 | ; 16 | #X obj 15 8 block~ 512; 17 | #X obj 15 332 +~; 18 | #N canvas 0 22 450 300 (subpatch) 0; 19 | #X array \$0-hann 512 float 1; 20 | #A 0 0 3.76403e-05 0.000150591 0.000338793 0.000602275 0.000940949 21 | 0.00135478 0.00184369 0.00240764 0.00304651 0.00376022 0.00454867 0.00541174 22 | 0.0063493 0.00736117 0.00844723 0.00960734 0.0108413 0.0121489 0.01353 23 | 0.0149843 0.0165117 0.0181119 0.0197847 0.0215298 0.0233469 0.0252359 24 | 0.0271963 0.0292279 0.0313304 0.0335035 0.0357469 0.0380601 0.040443 25 | 0.042895 0.0454159 0.0480052 0.0506626 0.0533877 0.05618 0.0590392 26 | 0.0619648 0.0649563 0.0680134 0.0711355 0.0743222 0.077573 0.0808874 27 | 0.0842649 0.0877051 0.0912073 0.0947711 0.0983959 0.102081 0.105826 28 | 0.109631 0.113494 0.117416 0.121395 0.125431 0.129524 0.133672 0.137876 29 | 0.142134 0.146446 0.150811 0.155229 0.159699 0.16422 0.168792 0.173413 30 | 0.178084 0.182803 0.18757 0.192384 0.197244 0.20215 0.2071 0.212095 31 | 0.217133 0.222214 0.227337 0.2325 0.237704 0.242948 0.24823 0.25355 32 | 0.258907 0.264301 0.26973 0.275194 0.280691 0.286222 0.291785 0.297379 33 | 0.303003 0.308658 0.314341 0.320052 0.32579 0.331555 0.337344 0.343159 34 | 0.348997 0.354857 0.36074 0.366643 0.372567 0.37851 0.384471 0.390449 35 | 0.396444 0.402454 0.40848 0.414519 0.420571 0.426634 0.432709 0.438794 36 | 0.444889 0.450991 0.457101 0.463218 0.469339 0.475466 0.481596 0.487729 37 | 0.493864 0.5 0.506136 0.512271 0.518404 0.524534 0.53066 0.536782 0.542899 38 | 0.549009 0.555111 0.561205 0.56729 0.573365 0.579429 0.585481 0.59152 39 | 0.597545 0.603556 0.609551 0.615529 0.62149 0.627433 0.633357 0.63926 40 | 0.645143 0.651003 0.656841 0.662656 0.668445 0.67421 0.679948 0.685659 41 | 0.691342 0.696997 0.702621 0.708215 0.713778 0.719309 0.724806 0.73027 42 | 0.735699 0.741092 0.74645 0.75177 0.757052 0.762295 0.767499 0.772663 43 | 0.777786 0.782867 0.787905 0.7929 0.79785 0.802756 0.807616 0.81243 44 | 0.817197 0.821916 0.826587 0.831209 0.83578 0.840301 0.844771 0.849189 45 | 0.853554 0.857866 0.862124 0.866328 0.870476 0.874569 0.878605 0.882584 46 | 0.886506 0.890369 0.894174 0.897919 0.901605 0.905229 0.908793 0.912295 47 | 0.915736 0.919113 0.922428 0.925678 0.928865 0.931987 0.935044 0.938036 48 | 0.940961 0.94382 0.946613 0.949338 0.951995 0.954585 0.957106 0.959558 49 | 0.96194 0.964254 0.966497 0.96867 0.970773 0.972804 0.974765 0.976654 50 | 0.978471 0.980216 0.981889 0.983489 0.985016 0.98647 0.987852 0.989159 51 | 0.990393 0.991553 0.992639 0.993651 0.994589 0.995452 0.99624 0.996954 52 | 0.997593 0.998156 0.998645 0.999059 0.999398 0.999661 0.999849 0.999962 53 | 1 0.999962 0.999849 0.999661 0.999398 0.999059 0.998645 0.998156 0.997592 54 | 0.996953 0.996239 0.995451 0.994588 0.99365 0.992638 0.991552 0.990392 55 | 0.989158 0.987851 0.986469 0.985015 0.983488 0.981887 0.980215 0.978469 56 | 0.976652 0.974763 0.972803 0.970771 0.968669 0.966495 0.964252 0.961939 57 | 0.959556 0.957104 0.954583 0.951993 0.949336 0.946611 0.943819 0.940959 58 | 0.938034 0.935042 0.931985 0.928863 0.925676 0.922425 0.919111 0.915733 59 | 0.912293 0.908791 0.905227 0.901602 0.897917 0.894171 0.890367 0.886503 60 | 0.882582 0.878602 0.874566 0.870473 0.866325 0.862121 0.857863 0.853551 61 | 0.849186 0.844768 0.840298 0.835777 0.831205 0.826584 0.821913 0.817194 62 | 0.812427 0.807613 0.802753 0.797847 0.792896 0.787901 0.782863 0.777782 63 | 0.77266 0.767496 0.762292 0.757048 0.751766 0.746446 0.741089 0.735695 64 | 0.730266 0.724802 0.719305 0.713774 0.708211 0.702617 0.696993 0.691338 65 | 0.685655 0.679944 0.674206 0.668441 0.662652 0.656837 0.650999 0.645139 66 | 0.639256 0.633353 0.627429 0.621486 0.615525 0.609547 0.603552 0.597541 67 | 0.591516 0.585477 0.579425 0.573361 0.567286 0.561201 0.555107 0.549004 68 | 0.542895 0.536778 0.530656 0.52453 0.518399 0.512266 0.506132 0.499996 69 | 0.49386 0.487725 0.481592 0.475462 0.469335 0.463213 0.457097 0.450987 70 | 0.444885 0.43879 0.432705 0.42663 0.420566 0.414515 0.408476 0.40245 71 | 0.39644 0.390445 0.384466 0.378505 0.372563 0.366639 0.360736 0.354853 72 | 0.348993 0.343155 0.33734 0.331551 0.325786 0.320048 0.314337 0.308654 73 | 0.303 0.297375 0.291781 0.286218 0.280687 0.27519 0.269726 0.264297 74 | 0.258904 0.253547 0.248226 0.242944 0.237701 0.232497 0.227333 0.222211 75 | 0.21713 0.212092 0.207097 0.202146 0.19724 0.19238 0.187566 0.182799 76 | 0.17808 0.17341 0.168788 0.164217 0.159696 0.155226 0.150808 0.146443 77 | 0.142131 0.137873 0.133669 0.129521 0.125428 0.121392 0.117413 0.113491 78 | 0.109628 0.105823 0.102078 0.0983929 0.0947681 0.0912044 0.0877022 79 | 0.0842621 0.0808846 0.0775702 0.0743194 0.0711327 0.0680107 0.0649537 80 | 0.0619622 0.0590366 0.0561775 0.0533853 0.0506602 0.0480029 0.0454136 81 | 0.0428928 0.0404408 0.038058 0.0357448 0.0335015 0.0313284 0.029226 82 | 0.0271944 0.025234 0.0233452 0.0215281 0.019783 0.0181104 0.0165102 83 | 0.0149829 0.0135286 0.0121476 0.01084 0.00960615 0.0084461 0.0073601 84 | 0.00634828 0.00541082 0.00454783 0.00375944 0.00304583 0.00240701 0.00184315 85 | 0.00135431 0.000940561 0.000601947 0.000338584 0.000150442 3.75807e-05 86 | ; 87 | #X coords 0 1 511 0 200 120 1; 88 | #X restore 122 224 graph; 89 | #X connect 0 0 2 0; 90 | #X connect 1 0 0 0; 91 | #X connect 2 0 4 0; 92 | #X connect 2 0 4 1; 93 | #X connect 2 1 5 0; 94 | #X connect 2 1 5 1; 95 | #X connect 3 0 0 1; 96 | #X connect 4 0 12 0; 97 | #X connect 5 0 12 1; 98 | #X connect 6 0 7 0; 99 | #X connect 8 0 10 0; 100 | #X connect 9 0 7 0; 101 | #X connect 10 0 9 0; 102 | #X connect 12 0 6 0; 103 | #X restore 136 339 pd fft-analysis; 104 | #N canvas 0 22 450 300 (subpatch) 0; 105 | #X array \$0-magnitude 256 float 0; 106 | #X coords 0 5 255 0 256 100 1 0 0; 107 | #X restore 296 235 graph; 108 | #X obj 37 228 *~; 109 | #X obj 161 165 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 110 | 1; 111 | #X obj 161 185 == 0; 112 | #X obj 75 383 dac~; 113 | #X floatatom 53 129 5 0 0 0 - - -; 114 | #X floatatom 171 118 5 0 0 0 - - -; 115 | #X obj 171 96 env~ 4096; 116 | #X obj 53 107 env~ 4096; 117 | #X obj 76 278 *~ 0.1; 118 | #X text 189 163 1 = pink \, 0 = white; 119 | #X obj 146 217 *~; 120 | #X obj 36 64 hv.pinknoise~; 121 | #X connect 0 0 9 0; 122 | #X connect 0 0 13 0; 123 | #X connect 3 0 11 0; 124 | #X connect 4 0 5 0; 125 | #X connect 4 0 3 1; 126 | #X connect 5 0 13 1; 127 | #X connect 9 0 8 0; 128 | #X connect 10 0 7 0; 129 | #X connect 11 0 6 0; 130 | #X connect 11 0 6 1; 131 | #X connect 11 0 1 0; 132 | #X connect 13 0 11 0; 133 | #X connect 14 0 3 0; 134 | #X connect 14 0 10 0; 135 | -------------------------------------------------------------------------------- /hv.pinknoise~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 558 152 506 456 10; 2 | #X obj 49 24 noise~; 3 | #X obj 139 127 *~ 0.099046; 4 | #X text 167 105 b0; 5 | #X text 275 106 b1; 6 | #X text 375 105 b2; 7 | #X obj 249 127 *~ 0.296516; 8 | #X obj 349 127 *~ 1.05269; 9 | #X obj 50 228 +~; 10 | #X obj 50 257 +~; 11 | #X obj 49 127 *~ 0.1848; 12 | #X obj 50 284 +~; 13 | #X obj 50 416 outlet~; 14 | #X text 151 340 b0 = 0.99765 * b0 + white * 0.099046 \;; 15 | #X text 151 360 b1 = 0.963 * b1 + white * 0.296516 \;; 16 | #X text 151 380 b2 = 0.57 * b2 + white * 1.05269 \;; 17 | #X text 150 399 tmp = b0 + b1 + b2 + white * 0.1848 \;; 18 | #X text 150 287 http://www.firstpr.com.au/dsp/pink-noise/; 19 | #X text 150 316 Paul Kellet's economy method:; 20 | #X obj 50 336 *~ 0.2; 21 | #X obj 172 150 sig~ 0.99765; 22 | #X obj 281 149 sig~ 0.963; 23 | #X obj 382 149 sig~ 0.57; 24 | #X obj 139 171 rpole~; 25 | #X obj 249 171 rpole~; 26 | #X obj 349 171 rpole~; 27 | #X connect 0 0 1 0; 28 | #X connect 0 0 5 0; 29 | #X connect 0 0 6 0; 30 | #X connect 0 0 9 0; 31 | #X connect 1 0 22 0; 32 | #X connect 5 0 23 0; 33 | #X connect 6 0 24 0; 34 | #X connect 7 0 8 0; 35 | #X connect 8 0 10 0; 36 | #X connect 9 0 7 0; 37 | #X connect 10 0 18 0; 38 | #X connect 18 0 11 0; 39 | #X connect 19 0 22 1; 40 | #X connect 20 0 23 1; 41 | #X connect 21 0 24 1; 42 | #X connect 22 0 7 1; 43 | #X connect 23 0 8 1; 44 | #X connect 24 0 10 1; 45 | -------------------------------------------------------------------------------- /hv.pow~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 485 59 481 435 10; 2 | #X text 22 10 This abstraction presents an alternative implementation 3 | to the pow~ object. Heavy uses the system's powf() function (as does 4 | Pd) \, but some applications may wish to avoid the powf() function 5 | entirely. Both inlets are signal-rate. This abstraction may also make 6 | use of the hv.exp object instead of the exp~ object.; 7 | #X obj 54 145 sig~; 8 | #X obj 137 181 loadbang; 9 | #X obj 137 205 metro 100; 10 | #X obj 137 229 snapshot~; 11 | #X floatatom 54 109 5 0 0 0 - - -; 12 | #X obj 105 145 sig~; 13 | #X floatatom 105 109 5 0 0 0 - - -; 14 | #X floatatom 137 254 7 0 0 0 - - -; 15 | #X text 210 123 An optional creation argument initializes right inlet: 16 | , f 30; 17 | #X text 26 294 WARNING: it's easy to generate "infinity" by accident 18 | \, and if you do \, the DSP chain may dramatically slow down if you're 19 | using an i386 or ia64 processor. Out-of-range floating point values 20 | are thousands of times slower to compute with than in-range ones., 21 | f 62; 22 | #X obj 67 181 hv.pow~; 23 | #X text 240 391 updated for heavylib version 0.2; 24 | #X obj 383 147 hv.pow~ 2; 25 | #X connect 1 0 11 0; 26 | #X connect 2 0 3 0; 27 | #X connect 3 0 4 0; 28 | #X connect 4 0 8 0; 29 | #X connect 5 0 1 0; 30 | #X connect 6 0 11 1; 31 | #X connect 7 0 6 0; 32 | #X connect 11 0 4 0; 33 | -------------------------------------------------------------------------------- /hv.pow~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 280 195 191 207 10; 2 | #X obj 19 11 inlet~ base; 3 | #X obj 34 109 inlet~ exponent; 4 | #X obj 19 180 outlet~; 5 | #X obj 19 37 max~ 0; 6 | #N canvas 0 22 150 102 @hv_obj 0; 7 | #X obj 23 12 inlet~; 8 | #X obj 24 61 outlet~; 9 | #X obj 24 37 log~ 2; 10 | #X connect 0 0 2 0; 11 | #X connect 2 0 1 0; 12 | #X restore 19 61 pd @hv_obj __log2~f; 13 | #X obj 19 131 *~; 14 | #X obj 19 156 exp~; 15 | #X obj 19 85 *~ 0.693147180559945; 16 | #X connect 0 0 3 0; 17 | #X connect 1 0 5 1; 18 | #X connect 3 0 4 0; 19 | #X connect 4 0 7 0; 20 | #X connect 5 0 6 0; 21 | #X connect 6 0 2 0; 22 | #X connect 7 0 5 0; 23 | -------------------------------------------------------------------------------- /hv.reverb~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 395 336 815 572 10; 2 | #X floatatom 74 303 5 0 0 0 - - -; 3 | #X msg 74 322 feedback \$1; 4 | #X obj 23 509 dac~; 5 | #X floatatom 161 303 5 0 0 1 dB - -; 6 | #X msg 161 322 dry-gain \$1; 7 | #X floatatom 249 303 5 0 0 1 dB - -; 8 | #X msg 249 322 wet-gain \$1; 9 | #X floatatom 341 303 10 0 0 1 Hz - -; 10 | #X floatatom 429 303 10 0 0 1 Hz - -; 11 | #X msg 341 322 lowcut \$1; 12 | #X msg 429 322 highcut \$1; 13 | #X obj 23 85 *~; 14 | #X obj 74 167 vsl 15 128 0 100 0 0 empty empty empty 0 -9 0 10 -262144 15 | -1 -1 11430 1; 16 | #X obj 161 167 vsl 15 128 0 100 0 0 empty empty empty 0 -9 0 10 -262144 17 | -1 -1 2540 1; 18 | #X obj 249 167 vsl 15 128 0 100 0 0 empty empty empty 0 -9 0 10 -262144 19 | -1 -1 10160 1; 20 | #X obj 341 167 vsl 15 128 0 25000 0 0 empty empty empty 0 -9 0 10 -262144 21 | -1 -1 3 1; 22 | #X obj 429 167 vsl 15 128 0 25000 0 0 empty empty empty 0 -9 0 10 -262144 23 | -1 -1 12192 1; 24 | #X floatatom 514 303 10 0 0 1 Hz - -; 25 | #X obj 514 167 vsl 15 128 0 25000 0 0 empty empty empty 0 -9 0 10 -262144 26 | -1 -1 1524 1; 27 | #X floatatom 609 303 5 0 0 0 - - -; 28 | #X obj 609 167 vsl 15 128 0 100 0 0 empty empty empty 0 -9 0 10 -262144 29 | -1 -1 7620 1; 30 | #X msg 609 322 damp \$1; 31 | #X obj 23 23 noise~; 32 | #X msg 88 23 1 1 \, 0 10 50; 33 | #X msg 514 322 crossfreq \$1; 34 | #X obj 341 80 loadbang; 35 | #X msg 74 146 90; 36 | #X msg 161 145 20; 37 | #X msg 249 145 80; 38 | #X msg 514 145 3000; 39 | #X msg 609 144 60; 40 | #X msg 341 145 5; 41 | #X msg 429 145 24000; 42 | #X floatatom 679 303 5 0 0 0 - - -; 43 | #X obj 679 167 vsl 15 128 0 2800 0 0 empty empty empty 0 -9 0 10 -262144 44 | -1 -1 0 1; 45 | #X msg 679 144 0; 46 | #X msg 679 322 predelay_ms \$1; 47 | #X obj 88 46 hv.vline~; 48 | #X obj 23 472 hv.reverb~; 49 | #X connect 0 0 1 0; 50 | #X connect 1 0 38 1; 51 | #X connect 3 0 4 0; 52 | #X connect 4 0 38 1; 53 | #X connect 5 0 6 0; 54 | #X connect 6 0 38 1; 55 | #X connect 7 0 9 0; 56 | #X connect 8 0 10 0; 57 | #X connect 9 0 38 1; 58 | #X connect 10 0 38 1; 59 | #X connect 11 0 38 0; 60 | #X connect 12 0 0 0; 61 | #X connect 13 0 3 0; 62 | #X connect 14 0 5 0; 63 | #X connect 15 0 7 0; 64 | #X connect 16 0 8 0; 65 | #X connect 17 0 24 0; 66 | #X connect 18 0 17 0; 67 | #X connect 19 0 21 0; 68 | #X connect 20 0 19 0; 69 | #X connect 21 0 38 1; 70 | #X connect 22 0 11 0; 71 | #X connect 23 0 37 0; 72 | #X connect 24 0 38 1; 73 | #X connect 25 0 27 0; 74 | #X connect 25 0 30 0; 75 | #X connect 25 0 29 0; 76 | #X connect 25 0 32 0; 77 | #X connect 25 0 31 0; 78 | #X connect 25 0 28 0; 79 | #X connect 25 0 26 0; 80 | #X connect 25 0 35 0; 81 | #X connect 26 0 12 0; 82 | #X connect 27 0 13 0; 83 | #X connect 28 0 14 0; 84 | #X connect 29 0 18 0; 85 | #X connect 30 0 20 0; 86 | #X connect 31 0 15 0; 87 | #X connect 32 0 16 0; 88 | #X connect 33 0 36 0; 89 | #X connect 34 0 33 0; 90 | #X connect 35 0 34 0; 91 | #X connect 36 0 38 1; 92 | #X connect 37 0 11 1; 93 | #X connect 38 0 2 0; 94 | #X connect 38 1 2 1; 95 | -------------------------------------------------------------------------------- /hv.reverb~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 540 145 874 615 10; 2 | #X obj 20 385 *~; 3 | #X obj 20 20 inlet~; 4 | #X obj 35 273 r \$0-dry-gain; 5 | #X obj 20 464 outlet~; 6 | #X text 426 338 Original author: Miller Puckette; 7 | #X obj 338 20 inlet; 8 | #X obj 191 245 r \$0-lowcut; 9 | #X obj 188 186 r \$0-highcut; 10 | #X obj 338 105 hv.dispatch \$0 highcut 24000; 11 | #X obj 338 127 hv.dispatch \$0 lowcut 5; 12 | #N canvas 397 74 957 645 guts 0; 13 | #X obj 161 497 +~; 14 | #X obj 520 105 inlet; 15 | #X obj 184 407 *~; 16 | #X obj 486 412 *~; 17 | #X obj 285 412 *~; 18 | #X obj 387 412 *~; 19 | #X obj 443 546 -~; 20 | #X obj 364 545 -~; 21 | #X obj 239 537 +~; 22 | #X obj 161 534 +~; 23 | #X obj 162 444 +~; 24 | #X obj 262 440 +~; 25 | #X obj 464 501 -~; 26 | #X obj 387 499 +~; 27 | #X obj 239 500 -~; 28 | #X obj 452 105 inlet; 29 | #X obj 609 429 line~; 30 | #X obj 509 374 line~; 31 | #X obj 16 121 delread~ \$0-del1 58.6435; 32 | #X obj 94 143 delread~ \$0-del2 69.4325; 33 | #X obj 176 165 delread~ \$0-del3 74.5234; 34 | #X obj 258 189 delread~ \$0-del4 86.1244; 35 | #X obj 530 500 *~; 36 | #X obj 599 501 *~; 37 | #X obj 161 641 delwrite~ \$0-del1 58.6435; 38 | #X obj 240 617 delwrite~ \$0-del2 69.4325; 39 | #X obj 365 595 delwrite~ \$0-del3 74.5234; 40 | #X obj 444 573 delwrite~ \$0-del4 86.1244; 41 | #X obj 609 357 dbtorms; 42 | #X obj 609 403 pack 0 30; 43 | #X obj 520 211 pack 0 50; 44 | #X obj 9 390 inlet~; 45 | #X obj 530 525 outlet~; 46 | #X obj 599 525 outlet~; 47 | #X obj 520 187 / 200; 48 | #X obj 520 162 clip 0 100; 49 | #X obj 52 236 lop~; 50 | #X obj 625 143 f \$3; 51 | #X obj 696 143 f \$4; 52 | #X obj 367 106 loadbang; 53 | #X obj 625 167 moses 1; 54 | #X msg 631 193 3000; 55 | #X obj 705 193 clip 0 100; 56 | #N canvas 345 88 355 597 early-reflect 0; 57 | #X obj 119 477 delread~ \$0-ref6 13.645; 58 | #X obj 119 453 delwrite~ \$0-ref6 13.645; 59 | #X obj 106 400 delread~ \$0-ref5 16.364; 60 | #X obj 106 376 delwrite~ \$0-ref5 16.364; 61 | #X obj 102 324 delread~ \$0-ref4 19.392; 62 | #X obj 102 300 delwrite~ \$0-ref4 19.392; 63 | #X obj 106 247 delread~ \$0-ref3 25.796; 64 | #X obj 106 223 delwrite~ \$0-ref3 25.796; 65 | #X obj 107 169 delread~ \$0-ref2 43.5337; 66 | #X obj 107 145 delwrite~ \$0-ref2 43.5337; 67 | #X obj 110 90 delread~ \$0-ref1 75.2546; 68 | #X obj 84 119 -~; 69 | #X obj 49 119 +~; 70 | #X obj 50 195 +~; 71 | #X obj 85 196 -~; 72 | #X obj 84 275 -~; 73 | #X obj 49 274 +~; 74 | #X obj 82 349 -~; 75 | #X obj 48 350 +~; 76 | #X obj 83 428 -~; 77 | #X obj 49 428 +~; 78 | #X obj 65 7 inlet~; 79 | #X obj 110 66 delwrite~ \$0-ref1 75.2546; 80 | #X obj 49 508 outlet~; 81 | #X obj 119 507 outlet~; 82 | #X connect 0 0 24 0; 83 | #X connect 2 0 20 1; 84 | #X connect 2 0 19 1; 85 | #X connect 4 0 18 1; 86 | #X connect 4 0 17 1; 87 | #X connect 6 0 16 1; 88 | #X connect 6 0 15 1; 89 | #X connect 8 0 13 1; 90 | #X connect 8 0 14 1; 91 | #X connect 10 0 12 1; 92 | #X connect 10 0 11 1; 93 | #X connect 11 0 9 0; 94 | #X connect 12 0 14 0; 95 | #X connect 12 0 13 0; 96 | #X connect 13 0 16 0; 97 | #X connect 13 0 15 0; 98 | #X connect 14 0 7 0; 99 | #X connect 15 0 5 0; 100 | #X connect 16 0 18 0; 101 | #X connect 16 0 17 0; 102 | #X connect 17 0 3 0; 103 | #X connect 18 0 20 0; 104 | #X connect 18 0 19 0; 105 | #X connect 19 0 1 0; 106 | #X connect 20 0 23 0; 107 | #X connect 21 0 12 0; 108 | #X connect 21 0 11 0; 109 | #X connect 21 0 22 0; 110 | #X restore 9 416 pd early-reflect; 111 | #X obj 618 216 f; 112 | #X obj 618 105 inlet; 113 | #X obj 696 109 inlet; 114 | #X obj 705 216 f; 115 | #X obj 705 239 * 0.01; 116 | #X obj 705 263 pack 0 50; 117 | #X obj 705 287 line~; 118 | #X obj 29 269 -~; 119 | #X obj 28 300 *~; 120 | #X obj 16 331 +~; 121 | #X obj 132 240 lop~; 122 | #X obj 106 274 -~; 123 | #X obj 105 309 *~; 124 | #X obj 95 333 +~; 125 | #X obj 214 245 lop~; 126 | #X obj 188 273 -~; 127 | #X obj 187 314 *~; 128 | #X obj 176 339 +~; 129 | #X obj 308 249 lop~; 130 | #X obj 281 274 -~; 131 | #X obj 281 318 *~; 132 | #X obj 258 342 +~; 133 | #X obj 609 379 * 0.125; 134 | #X text 403 10 control inlets:; 135 | #X obj 452 137 f 80; 136 | #X obj 520 138 f 80; 137 | #X text 16 29 https://github.com/rjdj/rjlib/blob/master/rj/e_reverb.pd 138 | ; 139 | #X text 400 45 2: liveness \, 0-100 \, usually between 85 and 100 (feedback) 140 | ; 141 | #X text 399 79 4: high frequency damping \, 0-100 (damp); 142 | #X text 17 9 Abstraction found in rjlib's e_reverb.pd; 143 | #X text 400 62 3: crossover frequency in Hz. (3000 default) (crossfreq) 144 | ; 145 | #X text 400 29 1: output level \, dB \, 0-100 (wet-gain); 146 | #X connect 0 0 9 0; 147 | #X connect 0 0 7 0; 148 | #X connect 1 0 69 0; 149 | #X connect 2 0 10 1; 150 | #X connect 3 0 12 1; 151 | #X connect 3 0 13 1; 152 | #X connect 4 0 11 1; 153 | #X connect 5 0 13 0; 154 | #X connect 5 0 12 0; 155 | #X connect 6 0 27 0; 156 | #X connect 7 0 26 0; 157 | #X connect 8 0 25 0; 158 | #X connect 9 0 24 0; 159 | #X connect 10 0 14 0; 160 | #X connect 10 0 0 0; 161 | #X connect 10 0 22 0; 162 | #X connect 11 0 0 1; 163 | #X connect 11 0 14 1; 164 | #X connect 11 0 23 0; 165 | #X connect 12 0 8 1; 166 | #X connect 12 0 6 1; 167 | #X connect 13 0 9 1; 168 | #X connect 13 0 7 1; 169 | #X connect 14 0 8 0; 170 | #X connect 14 0 6 0; 171 | #X connect 15 0 68 0; 172 | #X connect 16 0 22 1; 173 | #X connect 16 0 23 1; 174 | #X connect 17 0 4 1; 175 | #X connect 17 0 2 1; 176 | #X connect 17 0 5 1; 177 | #X connect 17 0 3 1; 178 | #X connect 18 0 36 0; 179 | #X connect 18 0 51 1; 180 | #X connect 18 0 53 0; 181 | #X connect 19 0 54 0; 182 | #X connect 19 0 55 1; 183 | #X connect 19 0 57 0; 184 | #X connect 20 0 61 0; 185 | #X connect 20 0 58 0; 186 | #X connect 20 0 59 1; 187 | #X connect 21 0 65 0; 188 | #X connect 21 0 63 1; 189 | #X connect 21 0 62 0; 190 | #X connect 22 0 32 0; 191 | #X connect 23 0 33 0; 192 | #X connect 28 0 66 0; 193 | #X connect 29 0 16 0; 194 | #X connect 30 0 17 0; 195 | #X connect 31 0 43 0; 196 | #X connect 34 0 30 0; 197 | #X connect 35 0 34 0; 198 | #X connect 36 0 51 0; 199 | #X connect 37 0 40 0; 200 | #X connect 38 0 42 0; 201 | #X connect 39 0 37 0; 202 | #X connect 39 0 38 0; 203 | #X connect 39 0 68 0; 204 | #X connect 39 0 69 0; 205 | #X connect 40 0 41 0; 206 | #X connect 40 1 44 0; 207 | #X connect 41 0 44 0; 208 | #X connect 42 0 47 0; 209 | #X connect 43 0 10 0; 210 | #X connect 43 1 11 0; 211 | #X connect 44 0 36 1; 212 | #X connect 44 0 54 1; 213 | #X connect 44 0 58 1; 214 | #X connect 44 0 62 1; 215 | #X connect 45 0 44 0; 216 | #X connect 46 0 38 0; 217 | #X connect 47 0 48 0; 218 | #X connect 48 0 49 0; 219 | #X connect 49 0 50 0; 220 | #X connect 50 0 52 1; 221 | #X connect 50 0 56 1; 222 | #X connect 50 0 60 1; 223 | #X connect 50 0 64 1; 224 | #X connect 51 0 52 0; 225 | #X connect 52 0 53 1; 226 | #X connect 53 0 2 0; 227 | #X connect 54 0 55 0; 228 | #X connect 55 0 56 0; 229 | #X connect 56 0 57 1; 230 | #X connect 57 0 4 0; 231 | #X connect 58 0 59 0; 232 | #X connect 59 0 60 0; 233 | #X connect 60 0 61 1; 234 | #X connect 61 0 5 0; 235 | #X connect 62 0 63 0; 236 | #X connect 63 0 64 0; 237 | #X connect 64 0 65 1; 238 | #X connect 65 0 3 0; 239 | #X connect 66 0 29 0; 240 | #X connect 68 0 28 0; 241 | #X connect 69 0 35 0; 242 | #X restore 136 418 pd guts; 243 | #X obj 192 383 r \$0-damp; 244 | #X obj 110 464 outlet~; 245 | #X obj 164 341 r \$0-feedback; 246 | #X obj 338 171 hv.dispatch \$0 damp 60; 247 | #X text 426 272 Taken from e_reverb.pd in rjlib. Itself expanding from 248 | recirculating reverberators found in G08.Reverb.pd in help browser. 249 | ; 250 | #X text 423 322 http://msp.ucsd.edu/techniques/v0.11/book-html/node124.html 251 | ; 252 | #X obj 35 361 line~; 253 | #X obj 35 295 dbtorms; 254 | #X obj 35 339 pack 0 30; 255 | #X obj 35 317 * 0.125; 256 | #X obj 150 318 r \$0-wet-gain; 257 | #X obj 338 83 hv.dispatch \$0 wet-gain 80; 258 | #X obj 338 62 hv.dispatch \$0 dry-gain 20; 259 | #X obj 338 149 hv.dispatch \$0 crossfreq 3000; 260 | #X obj 178 362 r \$0-crossfreq; 261 | #X obj 338 41 hv.dispatch \$0 feedback 90; 262 | #X obj 136 80 delwrite~ \$0-predelay 3000; 263 | #X obj 136 136 sig~; 264 | #X obj 136 164 vd~ \$0-predelay; 265 | #X obj 136 112 r \$0-predelay_ms; 266 | #X obj 338 193 hv.dispatch \$0 predelay_ms 0; 267 | #X obj 136 219 hv.filter~ lowpass; 268 | #X obj 136 276 hv.filter~ highpass; 269 | #X connect 0 0 3 0; 270 | #X connect 0 0 12 0; 271 | #X connect 1 0 27 0; 272 | #X connect 1 0 0 0; 273 | #X connect 2 0 18 0; 274 | #X connect 5 0 26 0; 275 | #X connect 6 0 33 1; 276 | #X connect 7 0 32 1; 277 | #X connect 8 0 9 0; 278 | #X connect 9 0 24 0; 279 | #X connect 10 0 3 0; 280 | #X connect 10 1 12 0; 281 | #X connect 11 0 10 4; 282 | #X connect 13 0 10 2; 283 | #X connect 14 0 31 0; 284 | #X connect 17 0 0 1; 285 | #X connect 18 0 20 0; 286 | #X connect 19 0 17 0; 287 | #X connect 20 0 19 0; 288 | #X connect 21 0 10 1; 289 | #X connect 22 0 8 0; 290 | #X connect 23 0 22 0; 291 | #X connect 24 0 14 0; 292 | #X connect 25 0 10 3; 293 | #X connect 26 0 23 0; 294 | #X connect 28 0 29 0; 295 | #X connect 29 0 32 0; 296 | #X connect 30 0 28 0; 297 | #X connect 32 0 33 0; 298 | #X connect 33 0 10 0; 299 | -------------------------------------------------------------------------------- /hv.tanh~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 254 82 445 331 10; 2 | #X obj 39 37 inlet~; 3 | #X obj 39 67 clip~ -3 3; 4 | #X obj 54 107 *~; 5 | #X obj 39 277 outlet~; 6 | #X obj 109 107 sig~ 27; 7 | #X obj 54 147 +~; 8 | #X obj 54 217 /~; 9 | #X obj 39 247 *~; 10 | #X obj 94 147 *~ 9; 11 | #X obj 94 187 +~; 12 | #X text 142 177 // http://www.musicdsp.org/showone.php?id=238; 13 | #X text 140 198 // y = x * (27 + x^2) / (27 + 9*x^2); 14 | #X text 144 152 // pade-approximation of tanh function; 15 | #X connect 0 0 1 0; 16 | #X connect 1 0 2 0; 17 | #X connect 1 0 2 1; 18 | #X connect 1 0 7 0; 19 | #X connect 2 0 5 0; 20 | #X connect 2 0 8 0; 21 | #X connect 4 0 5 1; 22 | #X connect 4 0 9 1; 23 | #X connect 5 0 6 0; 24 | #X connect 6 0 7 1; 25 | #X connect 7 0 3 0; 26 | #X connect 8 0 9 0; 27 | #X connect 9 0 6 1; 28 | -------------------------------------------------------------------------------- /hv.vline~-help.pd: -------------------------------------------------------------------------------- 1 | #N canvas 734 321 706 619 10; 2 | #X text 47 26 [line~] based replacement for [vline~]; 3 | #X msg 198 112 1 1000; 4 | #X msg 286 230 stop; 5 | #X msg 255 159 0; 6 | #X text 263 109 ramp up; 7 | #X msg 227 134 0 1000; 8 | #X text 290 137 ramp down; 9 | #X text 277 181 ramp up \, jump down \, ramp up again; 10 | #X text 293 158 jump down; 11 | #X text 329 229 "stop" message freezes vline~ at its current value 12 | ; 13 | #X text 49 42 Note: This object isn't doing any block boundary calculation 14 | or interpolation \, so the output could be very slightly different 15 | to [vline~]; 16 | #X obj 238 360 env~; 17 | #X obj 238 382 dbtorms; 18 | #X floatatom 238 404 5 0 0 0 - - -; 19 | #X msg 271 202 1 1000 \, 0 0 1000 \, 1 1000 1000; 20 | #X obj 86 295 osc~ 440; 21 | #X obj 86 366 *~; 22 | #X obj 86 405 dac~; 23 | #X obj 101 344 *~ 0.5; 24 | #X obj 198 275 hv.vline~; 25 | #X connect 1 0 19 0; 26 | #X connect 2 0 19 0; 27 | #X connect 3 0 19 0; 28 | #X connect 5 0 19 0; 29 | #X connect 11 0 12 0; 30 | #X connect 12 0 13 0; 31 | #X connect 14 0 19 0; 32 | #X connect 15 0 16 0; 33 | #X connect 16 0 17 0; 34 | #X connect 16 0 17 1; 35 | #X connect 18 0 16 1; 36 | #X connect 19 0 11 0; 37 | #X connect 19 0 18 0; 38 | -------------------------------------------------------------------------------- /hv.vline~.pd: -------------------------------------------------------------------------------- 1 | #N canvas 1159 431 431 295 10; 2 | #X obj 37 17 inlet; 3 | #X obj 94 121 unpack f f f; 4 | #X obj 94 72 t a b; 5 | #X msg 112 96 0; 6 | #X text 145 97 Default to zero delay if 2 args supplied; 7 | #X obj 37 208 line~; 8 | #X obj 37 230 outlet~; 9 | #X obj 37 39 route stop; 10 | #X msg 37 131 stop; 11 | #X obj 37 61 t b b; 12 | #X msg 50 99 clear; 13 | #N canvas 274 138 360 214 dbl-pipe 1; 14 | #X obj 29 19 inlet; 15 | #X obj 137 19 inlet; 16 | #X obj 228 19 inlet; 17 | #X obj 29 141 pipe 0; 18 | #X obj 90 141 pipe 0; 19 | #X obj 29 163 outlet; 20 | #X obj 90 163 outlet; 21 | #X obj 90 101 spigot; 22 | #X msg 116 75 1; 23 | #X msg 140 74 0; 24 | #X obj 29 48 route clear; 25 | #X obj 79 74 t f f; 26 | #X obj 137 47 t b f; 27 | #X obj 29 101 t a a; 28 | #X msg 29 75 clear; 29 | #X connect 0 0 10 0; 30 | #X connect 1 0 12 0; 31 | #X connect 2 0 3 1; 32 | #X connect 2 0 4 1; 33 | #X connect 3 0 5 0; 34 | #X connect 3 0 8 0; 35 | #X connect 4 0 6 0; 36 | #X connect 7 0 4 0; 37 | #X connect 8 0 7 1; 38 | #X connect 9 0 7 1; 39 | #X connect 10 0 14 0; 40 | #X connect 10 1 11 0; 41 | #X connect 11 0 3 0; 42 | #X connect 11 1 7 0; 43 | #X connect 12 0 9 0; 44 | #X connect 12 1 4 0; 45 | #X connect 13 0 3 0; 46 | #X connect 13 1 4 0; 47 | #X connect 14 0 13 0; 48 | #X restore 94 149 pd dbl-pipe; 49 | #X obj 94 173 pack f f; 50 | #X connect 0 0 7 0; 51 | #X connect 1 0 11 0; 52 | #X connect 1 1 11 1; 53 | #X connect 1 2 11 2; 54 | #X connect 2 0 1 0; 55 | #X connect 2 1 3 0; 56 | #X connect 3 0 11 2; 57 | #X connect 5 0 6 0; 58 | #X connect 7 0 9 0; 59 | #X connect 7 1 2 0; 60 | #X connect 8 0 5 0; 61 | #X connect 9 0 8 0; 62 | #X connect 9 1 10 0; 63 | #X connect 10 0 11 0; 64 | #X connect 11 0 12 0; 65 | #X connect 11 1 12 1; 66 | #X connect 12 0 5 0; 67 | --------------------------------------------------------------------------------