-
Notifications
You must be signed in to change notification settings - Fork 13
/
bl-saw2.mmb~-help.pd
106 lines (106 loc) · 3.2 KB
/
bl-saw2.mmb~-help.pd
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
#N canvas 200 22 1077 771 10;
#X obj 85 262 mtof;
#X floatatom 85 239 5 0 0 0 - - -;
#X text 125 240 MIDI note number;
#X obj 48 724 dac~;
#X obj 78 640 hsl 128 15 0 127 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 0 1;
#X obj 74 668 dbtorms;
#X obj 48 694 *~;
#X obj 683 174 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X msg 683 196 \; pd dsp \$1;
#N canvas 0 22 450 300 (subpatch) 0;
#X array \$0-spectrum 512 float 0;
#X coords 0 1 512 0 400 140 1;
#X restore 541 452 graph;
#X obj 86 558 spectrum.mmb~ \$0-spectrum;
#X obj 85 177 loadbang;
#X msg 85 203 72;
#X obj 25 12 cnv 15 400 35 empty empty bl-saw2.mmb~ 20 12 0 14 -4160
-203904 0;
#X obj 25 48 cnv 15 400 100 empty empty empty 20 12 0 14 -203904 -66577
0;
#X text 580 120 <-- See the help patch for this object for more info.
;
#X text 464 52 arg1 <optional>: name corresponding to an instance of
[bl-init.mmb] with the same argument. This is only necessary if you
want to generate harmonics above 22050 Hz (see below). Can be anything
but 0;
#N canvas 0 22 450 300 (subpatch) 0;
#X array \$0-waveform 200 float 0;
#X coords 0 1 199 -1 400 140 1;
#X restore 541 276 graph;
#N canvas 0 22 450 300 waveform 0;
#X obj 132 78 inlet~;
#X obj 132 209 tabwrite~ \$0-waveform;
#X obj 199 170 metro 150;
#X obj 199 87 loadbang;
#X msg 199 120 1;
#X obj 259 115 r pd;
#X obj 259 138 route dsp;
#X connect 0 0 1 0;
#X connect 2 0 1 0;
#X connect 3 0 4 0;
#X connect 4 0 2 0;
#X connect 5 0 6 0;
#X connect 6 0 2 0;
#X restore 88 596 pd waveform;
#X obj 46 463 bl-saw2.mmb~;
#X obj 161 463 bl-saw2.mmb~;
#X obj 87 342 phasor~;
#X obj 161 436 wrap~;
#X obj 161 413 +~;
#X text 257 350 phase offset;
#X obj 249 367 hsl 128 15 0 1 0 1 empty empty empty -2 -8 0 10 -262144
-1 -1 6350 1;
#X obj 182 334 * 1;
#X obj 182 306 t b f;
#X floatatom 182 359 5 0 0 0 - - -;
#X obj 185 282 hsl 128 15 0 2 0 1 empty empty empty -2 -8 0 10 -262144
-1 -1 6350 1;
#X text 176 265 change number of harmonics;
#X text 45 48 This is variant of [bl-saw.mmb~] that can be driven by
an external [phasor~] to allow phase synchronization of oscillators.
Phase goes in the left inlet and frequency in the right. If the frequency
of the [phasor~] is different from that going into [bl-saw2.mmb~] \,
you can control the number of harmonics \, forcing aliasing or limiting
harmonics well below Nyquist.;
#X obj 47 522 expr~ .5*($v1-$v2);
#X text 167 520 This is basically how [bl-pulse.mmb~] works;
#X obj 638 631 bl-pulse.mmb~;
#X obj 638 661 bl-pulse2.mmb~;
#X obj 738 631 bl-tri.mmb~;
#X obj 738 661 bl-tri2.mmb~;
#X obj 828 631 bl-asymtri.mmb~;
#X obj 828 661 bl-asymtri2.mmb~;
#X text 547 630 See also:;
#X text 895 695 .mmb;
#X obj 548 661 bl-saw.mmb~;
#X obj 486 121 bl-init.mmb \$0;
#X connect 0 0 21 0;
#X connect 0 0 26 0;
#X connect 1 0 0 0;
#X connect 4 0 5 0;
#X connect 5 0 6 1;
#X connect 6 0 3 1;
#X connect 6 0 3 0;
#X connect 7 0 8 0;
#X connect 11 0 12 0;
#X connect 12 0 1 0;
#X connect 19 0 32 0;
#X connect 20 0 32 1;
#X connect 21 0 23 0;
#X connect 21 0 19 0;
#X connect 22 0 20 0;
#X connect 23 0 22 0;
#X connect 25 0 23 1;
#X connect 26 0 28 0;
#X connect 27 0 26 0;
#X connect 27 1 26 1;
#X connect 28 0 20 1;
#X connect 28 0 19 1;
#X connect 29 0 27 0;
#X connect 32 0 6 0;
#X connect 32 0 18 0;
#X connect 32 0 10 0;