aboutsummaryrefslogtreecommitdiff
path: root/pd/doc/3.audio.examples/spectrum-partial.pd
diff options
context:
space:
mode:
Diffstat (limited to 'pd/doc/3.audio.examples/spectrum-partial.pd')
-rw-r--r--pd/doc/3.audio.examples/spectrum-partial.pd57
1 files changed, 57 insertions, 0 deletions
diff --git a/pd/doc/3.audio.examples/spectrum-partial.pd b/pd/doc/3.audio.examples/spectrum-partial.pd
new file mode 100644
index 00000000..584d3489
--- /dev/null
+++ b/pd/doc/3.audio.examples/spectrum-partial.pd
@@ -0,0 +1,57 @@
+#N canvas 211 116 826 530 12;
+#X obj 28 412 osc~;
+#X obj 94 197 r poll-table;
+#X obj 78 311 moses 0;
+#X obj 129 337 + 50;
+#X obj 129 363 dbtorms;
+#X msg 78 339 0;
+#X obj 78 392 pack 0 30;
+#X obj 78 422 line~;
+#X obj 28 471 throw~ sum-bus;
+#X obj 28 442 *~;
+#X obj 28 87 r pitch;
+#X obj 28 114 mtof;
+#X obj 78 230 f;
+#X obj 28 142 * \$1;
+#X obj 37 168 ftom;
+#X obj 79 256 -;
+#X obj 121 255 r whammybar;
+#X text 28 9 This abstraction is used by the spectrum drawing example
+\, number 16...;
+#X text 61 46 \$1 is the partial number.;
+#X text 79 114 pitch to frequency;
+#X text 78 141 then get the frequency of this specific partial;
+#X text 81 167 ... and then convert back to pitch.;
+#X text 115 230 ... at which time we get the pitch back...;
+#X text 233 249 ... and transpose \, effectively shifting the spectral
+envelope left and right.;
+#X text 203 341 The vertical scale is dB from 1 to 50 \, but we want
+true zero when the table value is 0 or less.;
+#X text 172 398 Amplitude control via pack \, line~ \, and *~.;
+#X text 171 444 Finally \, add to a summing bus via throw~. All the
+throw~s in the instantiations of this abstraction will add into the
+one "catch~ sum-bus" at the output.;
+#X text 216 195 the calling patch bangs "poll-table" every 30 msec.
+;
+#X obj 78 284 tabread4 spectrum-tab;
+#X text 285 288 Finally get the strength from the table. Note that
+we use the control object \, tabread4 \, not tabread4~.;
+#X connect 0 0 9 0;
+#X connect 1 0 12 0;
+#X connect 2 0 5 0;
+#X connect 2 1 3 0;
+#X connect 3 0 4 0;
+#X connect 4 0 6 0;
+#X connect 5 0 6 0;
+#X connect 6 0 7 0;
+#X connect 7 0 9 1;
+#X connect 9 0 8 0;
+#X connect 10 0 11 0;
+#X connect 11 0 13 0;
+#X connect 12 0 15 0;
+#X connect 13 0 14 0;
+#X connect 13 0 0 0;
+#X connect 14 0 12 1;
+#X connect 15 0 28 0;
+#X connect 16 0 15 1;
+#X connect 28 0 2 0;