aboutsummaryrefslogtreecommitdiff
path: root/doc/bwin~.pd
diff options
context:
space:
mode:
Diffstat (limited to 'doc/bwin~.pd')
-rw-r--r--doc/bwin~.pd53
1 files changed, 53 insertions, 0 deletions
diff --git a/doc/bwin~.pd b/doc/bwin~.pd
new file mode 100644
index 0000000..7f630d8
--- /dev/null
+++ b/doc/bwin~.pd
@@ -0,0 +1,53 @@
+#N canvas 62 558 450 300 10;
+#N canvas 409 279 692 500 windowing 1;
+#X obj 62 441 outlet~;
+#X obj 62 65 inlet~;
+#X obj 62 142 bfft~;
+#X obj 62 365 ibfft~;
+#X floatatom 85 173 5 0 0;
+#X obj 62 199 vol~;
+#X text 60 6 bwin~ multiplies a signal block with a window;
+#X text 211 310 after maximizing the spectrum is multiplied by a pink
+noise envelope;
+#X obj 62 250 dist~ 1;
+#X text 211 105 apply analysis window;
+#X text 211 172 set drive;
+#X text 212 251 soft clip spectral data;
+#X text 212 133 transform block to freq domain;
+#X text 210 360 transform block back to time domain;
+#X text 212 401 undo analysis window + apply synthesis window;
+#X text 212 39 this example is a poor man's spectral maximizer using
+bwin~ bfft~ bifft~ and dist~;
+#X obj 62 225 bwin~ bfft_blue;
+#X obj 62 327 bwin~ bfft_pink;
+#X obj 62 401 bwin~ hann/hamming;
+#X obj 62 106 bwin~ hamming;
+#X msg 344 207 type bfft_db/octave \$1;
+#X floatatom 517 172 5 0 0;
+#X msg 345 277 type bfft_db/octave \$1;
+#X obj 545 427 block~ 16384 2;
+#X floatatom 519 244 5 0 0;
+#X connect 1 0 19 0;
+#X connect 2 0 5 0;
+#X connect 3 0 18 0;
+#X connect 4 0 5 1;
+#X connect 5 0 16 0;
+#X connect 8 0 17 0;
+#X connect 16 0 8 0;
+#X connect 17 0 3 0;
+#X connect 18 0 0 0;
+#X connect 19 0 2 0;
+#X connect 20 0 16 0;
+#X connect 21 0 20 0;
+#X connect 22 0 17 0;
+#X connect 24 0 22 0;
+#X restore 53 88 pd windowing;
+#X obj 41 219 dac~;
+#X obj 53 150 vol~;
+#X floatatom 76 124 5 0 0;
+#X obj 53 41 adc~ 7;
+#X connect 0 0 2 0;
+#X connect 2 0 1 0;
+#X connect 2 0 1 1;
+#X connect 3 0 2 1;
+#X connect 4 0 0 0;