freeverb~-help.pd 6.7 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217
#N canvas 556 82 596 570 10;
#X msg -77 536 pddp;
#X obj -173 4 cnv 15 90 553 empty empty empty 20 12 0 14 -233017 -66577
0;
#N canvas 316 127 613 636 More_Info 0;
#X obj 451 407 metro 580;
#X obj 479 429 delay 120;
#X msg 479 450 0;
#X obj 405 471 noise~;
#X obj 435 494 *~;
#X msg 450 450 1;
#X msg 361 450 0;
#X obj 317 494 *~;
#X msg 332 450 1;
#X obj 333 407 metro 700;
#X obj 361 429 delay 200;
#X obj 273 471 osc~ 400;
#X obj 26 536 freeverb~;
#X obj 43 562 dac~;
#X obj 385 364 tgl 30 0 empty empty start 1 15 1 12 -90049 -1 -1 0
1;
#X obj 187 480 readsf~ 2;
#X msg 177 413 open \$1;
#X obj 177 394 openpanel;
#X msg 269 363 \; pd dsp 1;
#X obj 177 361 bng 30 250 50 0 empty empty open 1 15 1 12 -4080 -1
-228;
#X obj 177 432 t b a;
#X msg 164 456 1;
#X msg 25 42 roomsize \$1;
#X msg 25 87 damping \$1;
#X msg 25 131 width \$1;
#X msg 25 175 wet \$1;
#X msg 25 219 dry \$1;
#X msg 59 242 print;
#X msg 78 281 freeze \$1;
#X msg 83 318 bypass \$1;
#X obj 83 299 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X obj 78 262 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X text 154 274 - start and stop "freeze" mode (off by default). If
on \, reverb tail gets freezed (sample and hold).;
#X obj 37 196 hsl 60 18 0 1 0 1 empty empty dry 2 9 1 12 -225271 -1
-1 0 0;
#X obj 37 152 hsl 60 18 0 1 0 1 empty empty wet 2 9 1 12 -225271 -1
-1 1770 0;
#X obj 37 108 hsl 60 18 0 1 0 1 empty empty width 2 9 1 12 -262131
-1 -1 5900 0;
#X obj 37 64 hsl 60 18 0 2 0 1 empty empty damping 2 9 1 12 -261689
-1 -1 1475 0;
#X obj 37 19 hsl 60 18 0.11 1.1 0 1 empty empty roomsize 2 9 1 12 -261689
-1 -1 4410 0;
#X text 117 18 - size of the room to be simulated. Larger values result
in longer reverb. Values above 1 will result in feedback or 'room resonance'
(i.e. reverb getting louder);
#X floatatom 7 23 3 0 0 0 - - -;
#X text 116 110 - stereo width of the reverb \, i.e. how much of the
reverb part from the left and right channel mix. Turning this to 1
(nearly gives two separate mono reverbs.;
#X text 115 152 - level of the wet (reverbed) signal \, between 0 and
1;
#X text 113 197 - level of the dry (i.e. unprocessed or original) signal
\, between 0 and 1 Note that wet and dry signals mix and thus can cause
clipping if both are set at high levels.;
#X text 115 242 - print the current values of these parameters.;
#X text 157 305 - bypass reverb processing when set to 1 Can be used
to compare reverbed signal with original signal \, and to save CPU
when reverb is not needed.;
#X floatatom 7 68 3 0 0 0 - - -;
#X floatatom 7 113 3 0 0 0 - - -;
#X floatatom 7 156 3 0 0 0 - - -;
#X floatatom 7 200 3 0 0 0 - - -;
#X text 114 65 - amount of damping of the room's surfaces. <=1 means
nearly no damping \, resulting in a lot of reflection (long reverb)
\, >1 means high damping of signals (short reverb).;
#X connect 0 0 1 0;
#X connect 0 0 5 0;
#X connect 1 0 2 0;
#X connect 2 0 4 1;
#X connect 3 0 4 0;
#X connect 4 0 12 1;
#X connect 5 0 4 1;
#X connect 6 0 7 1;
#X connect 7 0 12 0;
#X connect 8 0 7 1;
#X connect 9 0 8 0;
#X connect 9 0 10 0;
#X connect 10 0 6 0;
#X connect 11 0 7 0;
#X connect 12 0 13 0;
#X connect 12 1 13 1;
#X connect 14 0 9 0;
#X connect 14 0 0 0;
#X connect 15 0 12 0;
#X connect 15 1 12 1;
#X connect 16 0 20 0;
#X connect 17 0 16 0;
#X connect 19 0 17 0;
#X connect 20 0 21 0;
#X connect 20 1 15 0;
#X connect 21 0 15 0;
#X connect 22 0 12 0;
#X connect 23 0 12 0;
#X connect 24 0 12 0;
#X connect 25 0 12 0;
#X connect 26 0 12 0;
#X connect 27 0 12 0;
#X connect 28 0 12 0;
#X connect 29 0 12 0;
#X connect 30 0 29 0;
#X connect 31 0 28 0;
#X connect 33 0 26 0;
#X connect 33 0 48 0;
#X connect 34 0 25 0;
#X connect 34 0 47 0;
#X connect 35 0 24 0;
#X connect 35 0 46 0;
#X connect 36 0 23 0;
#X connect 36 0 45 0;
#X connect 37 0 22 0;
#X connect 37 0 39 0;
#X restore -77 510 pd More_Info;
#N canvas 85 22 403 252 Related_Objects 0;
#X restore -77 484 pd Related_Objects;
#X text -165 37 ARGUMENTS:;
#X text -149 266 OUTLETS:;
#X text -158 301 EXAMPLES:;
#X text -161 483 SEE ALSO:;
#X obj -162 12 freeverb~;
#X text -142 219 INLETS:;
#X text -73 12 stereo reverb using the Schroeder/Moorer model;
#X text -75 245 Right: audio input for the right channel.;
#X text -75 219 Left: audio input for the left channel and message
input for settings messages.;
#X text -75 266 Signal: the two outlets are the left and right channels
of a stereo output pair.;
#X obj 301 346 metro 580;
#X obj 329 368 delay 120;
#X msg 329 389 0;
#X obj 255 410 noise~;
#X obj 285 433 *~;
#X msg 300 389 1;
#X msg 211 389 0;
#X obj 167 433 *~;
#X msg 182 389 1;
#X obj 183 346 metro 700;
#X obj 211 368 delay 200;
#X obj 123 410 osc~ 400;
#X obj 167 461 freeverb~;
#X obj 184 487 dac~;
#X obj 235 303 tgl 30 0 empty empty start 1 15 1 12 -90049 -1 -1 0
1;
#X obj -1 432 readsf~ 2;
#X msg -11 365 open \$1;
#X obj -11 346 openpanel;
#X obj -11 303 bng 30 250 50 0 empty empty open 1 15 1 12 -4080 -1
-228;
#X obj -11 384 t b a;
#X msg -24 408 1;
#X msg -74 40 roomsize \$1;
#X msg -74 62 damping \$1;
#X msg -74 84 width \$1;
#X msg -74 106 wet \$1;
#X msg -74 128 dry \$1;
#X msg -74 150 print;
#X msg -74 172 freeze \$1;
#X msg -74 194 bypass \$1;
#X text -11 149 - print the current values of the above parameters
;
#X text 2 172 - start/stop freeze of reverb tail \, using 1 or 0;
#X text 6 193 - bypass the reverb processing \, using a 1 or 0;
#N canvas 0 22 454 304 algorithm 0;
#X text 32 52 freeverb~ is a simple implementation of the standard
Schroeder/Moorer reverb model. It uses 8 comb filters in parallel on
both channels. It then feeds the result of the reverb through 4 allpass
filters in series on both channels. These "smooth" the sound. The filters
on the right channel are slightly detuned compared to the left channel
in order to create a stereo effect.;
#X restore 19 510 pd algorithm notes;
#X text -13 127 - level of unprocessed signal \, between 0 and 1 (default:
0);
#X text -9 106 - level of reverbed signal \, between 0 and 1 (default:
0.3);
#X text 13 61 - amount of damping of room's surfaces (default: 0.5)
;
#X text -5 85 - stereo width of reverb (default: 1);
#X text 17 39 - size of the room to be simulated (default=0.85);
#X text -29 537 Hans-Christoph Steiner 2005 \, based on Olaf Matthes'
Max help;
#X obj 98 310 pddp/dsp;
#X connect 14 0 15 0;
#X connect 14 0 19 0;
#X connect 15 0 16 0;
#X connect 16 0 18 1;
#X connect 17 0 18 0;
#X connect 18 0 26 1;
#X connect 19 0 18 1;
#X connect 20 0 21 1;
#X connect 21 0 26 0;
#X connect 22 0 21 1;
#X connect 23 0 22 0;
#X connect 23 0 24 0;
#X connect 24 0 20 0;
#X connect 25 0 21 0;
#X connect 26 0 27 0;
#X connect 26 1 27 1;
#X connect 28 0 23 0;
#X connect 28 0 14 0;
#X connect 29 0 26 0;
#X connect 29 1 26 1;
#X connect 30 0 33 0;
#X connect 31 0 30 0;
#X connect 32 0 31 0;
#X connect 33 0 34 0;
#X connect 33 1 29 0;
#X connect 34 0 29 0;