2009年10月18日日曜日

nanoKey_Mono_Phonic_Synthesizer

 pure data の操作の練習としてシンセサイザを作れたらと。Minimoog の簡単な仕様とコントロールパネルの盤面からの想像のみで。FILER と LOUDNESS_CONTUR の関係やら BENDER の細部がよくわかりませんでした。だって見たことないのですから。さわったこともないのですから。なので未完成。
 POEWER をオンにすると [sig~] が電流代わりにオブジェクト間をかけめぐります。入力は MIDI 。MID 入力装置として KORG nanoKey を使っています。
 興味ある方は以下のソースをご参照ください。


#N canvas 139 22 1222 664 10;
#X obj 14 13 cnv 15 1412 32 empty empty nanoKey_Mono_Phonic_Synthesizer
16 16 0 16 -233017 -66577 0;
#X obj 14 48 cnv 15 280 210 empty empty CONTROLLERS 20 12 0 15 -233017
-66577 0;
#X obj 297 48 cnv 15 320 23 empty empty OSCILLATOR_BANK 20 12 0 15
-233017 -66577 0;
#X obj 620 48 cnv 15 300 626 empty empty MIXER 20 12 0 15 -233017 -66577
0;
#X obj 923 48 cnv 15 280 280 empty empty FILTER 10 10 0 12 -233017
-66577 0;
#X obj 923 331 cnv 15 200 100 empty empty LOUDNESS_CONTOUR 10 10 0
12 -233017 -66577 0;
#X obj 1226 48 cnv 15 200 322 empty empty OUTPUT 20 12 0 15 -233017
-66577 0;
#X obj 14 677 cnv 15 1412 100 empty empty MODULES 20 12 0 12 -233017
-66577 0;
#X obj 406 22 tgl 15 0 power_ power_init POWER_ON/OFF 17 7 0 10 -262144
-258113 -1 1 1;
#N canvas 0 22 450 300 POWER 0;
#X obj 35 19 tgl 15 0 empty power_ empty 17 7 0 10 -262144 -1 -1 1
1;
#X msg 35 38 \; pd dsp \$1;
#X connect 0 0 1 0;
#X restore 352 21 pd POWER;
#N canvas 634 32 320 168 INIT 0;
#N canvas 0 22 450 300 POWER_INIT 0;
#X obj 21 18 loadbang;
#X msg 21 37 \; power_init 0 \;;
#X connect 0 0 1 0;
#X restore 26 -3 pd POWER_INIT;
#N canvas 977 22 450 300 CONTROLLER_INIT 0;
#X obj 17 14 loadbang;
#X msg 17 35 \; modulation_wheel_init 1 \; bend_in_init 0 \; tune_init
0 \; glide_switch_init 0 \; glide_init 0 \; decay_switch_init 0 \;
midi_note_in_init 0 \; oscillator_modulation_switch_init 0 \; modulation_mix_init
0 \;;
#X connect 0 0 1 0;
#X restore 26 19 pd CONTROLLER_INIT;
#N canvas 882 403 450 300 OSCILLATOR_BANK_INIT 0;
#X obj 21 16 loadbang;
#X msg 21 37 \; osc1_range_init 5 \; osc1_LFO_controller_init 10 \;
osc1_waveform_init 0 \; osc1_triangle_controller_init 1 \; osc1_pulse_controller_init
0.5;
#X msg 8 124 \; osc2_range_init 5 \; osc2_LFO_controller_init 10 \;
osc2_frequency_controller_init 0 \; osc2_waveform_init 0 \; osc2_triangle_controller_init
1 \; osc2_pulse_controller_init 0.5;
#X msg 225 123 \; osc3_control_switch_init 1 \; osc3_range_init 5 \;
osc3_LFO_controller_init 1 \; osc3_frequency_controller_init 0 \; osc3_waveform_init
0 \; osc3_triangle_controller_init 1 \; osc3_sawtooth_reverse_init
0 \; osc3_pulse_controller_init 0.5;
#X connect 0 0 1 0;
#X connect 0 0 2 0;
#X connect 0 0 3 0;
#X restore 26 39 pd OSCILLATOR_BANK_INIT;
#N canvas 776 390 317 510 MIXER_INIT 0;
#X obj 15 16 loadbang;
#X msg 15 222 \; noise_switch_init 0 \; noise_volume_init 0 \; noise_select_switch_init
0 \; pink_noise_controller_init 2000 \;;
#X msg 29 37 \; osc1_volume_switch_init 0 \; osc1_volume_init 0 \;
;
#X msg 54 133 \; osc3_volume_switch_init 0 \; osc3_volume_init 0 \;
;
#X msg 44 84 \; osc2_volume_switch_init 0 \; osc2_volume_init 0 \;
;
#X connect 0 0 1 0;
#X connect 0 0 2 0;
#X connect 0 0 4 0;
#X connect 0 0 3 0;
#X restore 26 59 pd MIXER_INIT;
#N canvas 948 554 450 300 MODIFIERS 0;
#X obj 30 9 loadbang;
#X msg 30 246;
#X msg 46 34 \; filter_modulation_init 0 \; filter_cutoff_frequency_init
22050 \; filter_emphasis_init 1 \; keyboard_control_1_init 0 \; keyboard_control_2_init
0 \; filter_amount_of_contour_init 0 \; filter_attack_time_init 5 \;
filter_decay_time_init 5 \; filter_sustain_level_init 0 \;;
#X connect 0 0 2 0;
#X connect 0 0 1 0;
#X restore 26 79 pd MODIFIERS;
#X restore 33 699 pd INIT;
#X obj 14 261 cnv 15 280 350 empty empty BENDER 20 12 0 15 -233017
-66577 0;
#X obj 27 92 hsl 250 15 -100 100 0 0 tune_ tune_init TUNE 5 8 0 10
-262144 -1 -1 12450 1;
#X obj 27 123 hsl 250 15 0 500 0 0 glide_ glide_init GLIDE 5 8 0 10
-262144 -1 -1 2000 1;
#X obj 27 155 hsl 250 15 0 1 0 0 modulation_mix_ modulation_mix_init
MODULATION_MIX 5 8 0 10 -262144 -1 -1 12300 1;
#X text 22 167 OSC.3;
#X text 248 167 NOISE;
#X obj 297 72 cnv 15 320 188 empty empty OSCILLATOR_1 10 10 0 12 -233017
-66577 0;
#X obj 297 261 cnv 15 320 170 empty empty OSCILLATOR_2 10 10 0 12 -233017
-66577 0;
#X obj 297 432 cnv 15 320 179 empty empty OSCILLATOR_3 10 10 0 12 -233017
-66577 0;
#X obj 923 458 cnv 15 200 23 empty empty MODIFIERS 20 12 0 15 -233017
-66577 0;
#X obj 33 327 tgl 15 0 glide_switch_ glide_switch_init GLIDE_ON/OFF
17 7 0 8 -262144 -1 -1 1 1;
#X text 241 135 1000ms;
#X text 242 104 +100Hz;
#X text 23 104 -100Hz;
#X obj 264 76 bng 15 250 50 0 tune_reset_ empty Reset -26 10 0 8 -262144
-1 -1;
#X text 23 135 0ms;
#N canvas 1178 352 450 300 CONTROLLER 0;
#N canvas 0 22 450 300 DECAY 0;
#X restore 185 16 pd DECAY;
#X text 19 144 And send Keyboard Controlled Voltage Fequency.;
#N canvas 468 490 277 202 CONTROLLER 0;
#N canvas 621 288 374 132 NOTE_IN 0;
#X obj 72 3 notein;
#X obj 72 36 stripnote;
#X obj 123 60 bng 15 250 50 0 keybord_trigger_ empty keyboard_trigger
17 7 0 10 -262144 -1 -1;
#X obj 72 58 mtof;
#X floatatom 36 37 5 0 0 0 MIDI_NOTEIN_INIT midi_note_in_init -;
#X obj 161 24 route 0;
#X obj 160 43 bng 15 250 50 0 keybord_release_ empty keyboard_release
17 7 0 10 -262144 -1 -1;
#X obj 72 78 sig~;
#X obj 72 99 outlet~;
#X connect 0 0 1 0;
#X connect 0 1 1 1;
#X connect 0 1 5 0;
#X connect 1 0 3 0;
#X connect 1 1 2 0;
#X connect 3 0 7 0;
#X connect 4 0 3 0;
#X connect 5 0 6 0;
#X connect 7 0 8 0;
#X restore 37 -6 pd NOTE_IN;
#N canvas 472 491 221 139 TUNE 0;
#X floatatom 31 38 5 0 0 0 - tune_ -;
#X obj 31 57 sig~;
#X obj 31 77 outlet~;
#X obj 117 44 bng 15 250 50 0 empty tune_reset_ empty 17 7 0 10 -262144
-1 -1;
#X msg 117 62 \; tune_init 0;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 3 0 4 0;
#X restore 94 83 pd TUNE;
#N canvas 932 116 450 300 GLIDE 0;
#X floatatom 72 52 5 0 0 0 - glide_switch_ -;
#X floatatom 231 53 10 0 0 0 - glide_ -;
#X obj 72 110 pack~;
#X obj 72 129 unpack;
#X obj 72 71 sig~;
#X obj 72 90 expr~ if ($v1 != 0 \, $v2 \, 0);
#X obj 231 71 sig~;
#X obj 72 150 outlet;
#X connect 0 0 4 0;
#X connect 1 0 6 0;
#X connect 2 0 3 0;
#X connect 3 0 7 0;
#X connect 4 0 5 0;
#X connect 5 0 2 0;
#X connect 6 0 5 1;
#X restore 91 31 pd GLIDE;
#X obj 37 74 vline~;
#X obj 37 15 pack~;
#X obj 37 34 unpack;
#X obj 37 54 pack f f;
#X obj 37 165 send~ KCV_FREQUENCY;
#N canvas 738 346 450 300 PITCH 0;
#X obj 41 23 bendin;
#X floatatom 41 70 5 0 0 0 - - bend_in_;
#X obj 41 43 - 8192;
#X floatatom 115 44 5 0 0 1 bend_in_init bend_in_init -;
#X floatatom 41 104 12 0 0 0 - bend_in__ -;
#X obj 41 122 expr if ($f1 > 0 \, ($f1/8192 * 1.33484) \, 1) \; if
($f1 < 0 \, -($f1/8192 * 0.749153) \, 1) \;;
#X obj 41 156 sig~;
#X obj 296 155 sig~;
#X obj 41 177 outlet~;
#X obj 296 175 outlet~;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X connect 3 0 1 0;
#X connect 4 0 5 0;
#X connect 5 0 6 0;
#X connect 5 1 7 0;
#X connect 6 0 8 0;
#X connect 7 0 9 0;
#X restore 151 84 pd PITCH;
#X obj 37 111 expr~ ($v1 + $v2) * $v3 * $v4;
#X connect 0 0 4 0;
#X connect 1 0 9 1;
#X connect 2 0 6 1;
#X connect 3 0 9 0;
#X connect 4 0 5 0;
#X connect 5 0 6 0;
#X connect 6 0 3 0;
#X connect 8 0 9 2;
#X connect 8 1 9 3;
#X connect 9 0 7 0;
#X restore 23 12 pd CONTROLLER;
#X text 18 101 NOTE: [pd CONTROLLER];
#N canvas 816 487 479 239 MODULATION_MIX 0;
#X obj 199 69 receive~ OSCILLATOR_3;
#X obj 308 97 receive~ NOISE;
#X floatatom 90 79 5 0 0 2 modulation_mix modulation_mix_ -;
#X obj 90 98 sig~;
#X floatatom -19 57 5 0 0 2 oscillator_modulation_switch oscillator_modulation_switch_
-;
#X obj -19 76 sig~;
#X obj -19 197 send~ MODULATION_SIGNAL;
#X obj -4 158 sig~;
#X floatatom -4 140 5 0 0 1 modulation_wheel modulation_wheel_ -;
#X obj -19 177 *~;
#X obj -19 118 expr~ if ( $v1== 1 \, ($v3 * (1 - $v2)) + ($v2 * $v4)
\, 0);
#X connect 0 0 10 2;
#X connect 1 0 10 3;
#X connect 2 0 3 0;
#X connect 3 0 10 1;
#X connect 4 0 5 0;
#X connect 5 0 10 0;
#X connect 7 0 9 1;
#X connect 8 0 7 0;
#X connect 9 0 6 0;
#X connect 10 0 9 0;
#X restore 23 75 pd MODULATION_MIX;
#X text 19 118 This contain [pd NOTE_IN] \, [pd GLIDE] \, [pd TUNE]
\, [pd PTICH].;
#X restore 232 678 pd CONTROLLER;
#X obj 142 292 vsl 15 300 -8192 8192 0 0 bend_in__ bend_in_ PITCH -7
-9 0 10 -262144 -1 -1 14950 1;
#X obj 338 152 hsl 250 15 0 1 0 0 osc1_triangle_controller_ osc1_triangle_controller_init
TRIANGLE_CONTROLLER 5 8 0 10 -262144 -1 -1 24900 1;
#N canvas 590 685 222 140 OSCILLATOR_BANK 0;
#N canvas 16 497 450 364 OSCILLATOR_1 0;
#X obj 241 -14 receive~ KCV_FREQUENCY;
#X floatatom 96 33 5 0 0 2 range osc1_range_ -;
#X obj 96 52 sig~;
#X floatatom 387 32 5 0 0 0 LFO_controller osc1_LFO_controller_ -;
#X obj 387 50 sig~;
#X obj 96 71 expr~ if ($v1 != 0 \, $v2 * pow(2 \, ($v1 - 5)) \, $v3)
;
#X obj 96 91 phasor~;
#X obj 45 257 send~ OSCILLATOR_1;
#X floatatom 399 88 5 0 0 0 triangle_controller osc1_triangle_controller_
-;
#X obj 399 107 sig~;
#X obj 96 126 expr~ if ($v1 <= 0.5 \, $v1-0.25 \, ((1-$v1)*$v2)-0.25)
;
#X obj 96 145 *~ 2;
#X obj 147 145 expr~ $v1-0.5;
#X floatatom 387 146 5 0 0 0 pulse_controller osc1_pulse_controller_
-;
#X obj 387 165 sig~;
#X obj 198 184 expr~ if ($v1 <= $v2 \, 0.5 \, -0.5);
#X floatatom 45 168 5 0 0 1 waveform osc1_waveform_ -;
#X obj 45 206 expr~ if ($v1==0 \, $v2 \, 0) \; if ($v1==1 \, $v3 \,
0) \; if ($v1==2 \, $v4 \, 0);
#X obj 45 187 sig~;
#X obj 256 9 receive~ MODULATION_SIGNAL;
#X obj 241 49 +~;
#X obj 20 1 send~ OSC1_CENTER_FREQUENCY;
#X msg 157 47 0;
#X obj 157 25 bng 15 250 50 0 empty phase_reset_ phase_reset 17 7 0
10 -262144 -1 -1;
#X connect 0 0 20 0;
#X connect 1 0 2 0;
#X connect 2 0 5 0;
#X connect 3 0 4 0;
#X connect 4 0 5 2;
#X connect 5 0 6 0;
#X connect 5 0 21 0;
#X connect 6 0 10 0;
#X connect 6 0 12 0;
#X connect 6 0 15 0;
#X connect 8 0 9 0;
#X connect 9 0 10 1;
#X connect 10 0 11 0;
#X connect 11 0 17 1;
#X connect 12 0 17 2;
#X connect 13 0 14 0;
#X connect 14 0 15 1;
#X connect 15 0 17 3;
#X connect 16 0 18 0;
#X connect 17 0 7 0;
#X connect 17 1 7 0;
#X connect 17 2 7 0;
#X connect 18 0 17 0;
#X connect 19 0 20 1;
#X connect 20 0 5 1;
#X connect 22 0 6 1;
#X connect 23 0 22 0;
#X restore 61 22 pd OSCILLATOR_1;
#N canvas 588 208 442 298 OSCILLATOR_2 0;
#X floatatom 96 24 5 0 0 2 range osc2_range_ -;
#X floatatom 387 23 5 0 0 0 LFO_controller osc2_LFO_controller_ -;
#X obj 96 62 expr~ if ($v1 != 0 \, $v2 * pow(2 \, ($v1 - 5)) \, $v3)
;
#X obj 96 82 phasor~;
#X floatatom 399 79 5 0 0 0 triangle_controller osc2_triangle_controller_
-;
#X obj 96 117 expr~ if ($v1 <= 0.5 \, $v1-0.25 \, ((1-$v1)*$v2)-0.25)
;
#X obj 96 136 *~ 2;
#X obj 147 137 expr~ $v1-0.5;
#X floatatom 387 137 5 0 0 0 pulse_controller osc2_pulse_controller_
-;
#X obj 198 175 expr~ if ($v1 <= $v2 \, 0.5 \, -0.5);
#X floatatom 45 159 5 0 0 1 waveform osc2_waveform_ -;
#X obj 45 197 expr~ if ($v1==0 \, $v2 \, 0) \; if ($v1==1 \, $v3 \,
0) \; if ($v1==2 \, $v4 \, 0);
#X obj 45 248 send~ OSCILLATOR_2;
#X obj 96 43 sig~;
#X obj 387 41 sig~;
#X obj 399 98 sig~;
#X obj 387 156 sig~;
#X obj 45 178 sig~;
#N canvas 595 336 498 302 OSC2_FREQUENCY_CONTROLLER 0;
#X floatatom -27 80 5 0 0 1 frequency_controller osc2_frequency_controller_
-;
#X obj 114 195 outlet~;
#X obj 29 208 bng 15 250 50 0 empty osc2_frequency_controller_reset_
empty 17 7 0 10 -262144 -1 -1;
#X msg 29 226 \; osc2_frequency_controller_init 0 \;;
#X obj -27 98 expr~ if ($v1 < 0 \, $v2 + ($v2 * $v1 * 0.5) \, 0) \;
if ($v1 == 0 \, $v2 \, 0) \; if ($v1 > 0 \, $v2 + ($v2 * $v1) \, 0)
;
#X obj 252 12 receive~ KCV_FREQUENCY;
#X obj 267 35 receive~ MODULATION_SIGNAL;
#X obj 252 75 +~;
#X connect 0 0 4 0;
#X connect 2 0 3 0;
#X connect 4 0 1 0;
#X connect 4 1 1 0;
#X connect 4 2 1 0;
#X connect 5 0 7 0;
#X connect 6 0 7 1;
#X connect 7 0 4 1;
#X restore 241 2 pd OSC2_FREQUENCY_CONTROLLER;
#X obj 20 -11 send~ OSC2_CENTER_FREQUENCY;
#X msg 150 35 0;
#X obj 150 13 bng 15 250 50 0 empty phase_reset_ phase_reset 17 7 0
10 -262144 -1 -1;
#X connect 0 0 13 0;
#X connect 1 0 14 0;
#X connect 2 0 3 0;
#X connect 2 0 19 0;
#X connect 3 0 5 0;
#X connect 3 0 7 0;
#X connect 3 0 9 0;
#X connect 4 0 15 0;
#X connect 5 0 6 0;
#X connect 6 0 11 1;
#X connect 7 0 11 2;
#X connect 8 0 16 0;
#X connect 9 0 11 3;
#X connect 10 0 17 0;
#X connect 11 0 12 0;
#X connect 11 1 12 0;
#X connect 11 2 12 0;
#X connect 13 0 2 0;
#X connect 14 0 2 2;
#X connect 15 0 5 1;
#X connect 16 0 9 1;
#X connect 17 0 11 0;
#X connect 18 0 2 1;
#X connect 20 0 3 1;
#X connect 21 0 20 0;
#X restore 61 41 pd OSCILLATOR_2;
#N canvas 872 82 456 342 OSCILLATOR_3 0;
#X floatatom 96 24 5 0 0 2 range osc3_range_ -;
#X floatatom 387 23 5 0 0 0 LFO_controller osc3_LFO_controller_ -;
#X obj 96 62 expr~ if ($v1 != 0 \, $v2 * pow(2 \, ($v1 - 5)) \, $v3)
;
#X obj 96 82 phasor~;
#X floatatom 399 79 5 0 0 0 triangle_controller osc3_triangle_controller_
-;
#X obj 96 117 expr~ if ($v1 <= 0.5 \, $v1-0.25 \, ((1-$v1)*$v2)-0.25)
;
#X obj 96 136 *~ 2;
#X floatatom 387 199 5 0 0 0 pulse_controller osc3_pulse_controller_
-;
#X obj 198 236 expr~ if ($v1 <= $v2 \, 0.5 \, -0.5);
#X floatatom 45 217 5 0 0 1 waveform osc3_waveform_ -;
#X obj 45 255 expr~ if ($v1==0 \, $v2 \, 0) \; if ($v1==1 \, $v3 \,
0) \; if ($v1==2 \, $v4 \, 0);
#X obj 96 43 sig~;
#X obj 387 41 sig~;
#X obj 399 98 sig~;
#X obj 387 217 sig~;
#X obj 45 236 sig~;
#N canvas 843 436 450 300 OSC3_FREQUENCY_CONTROLLER 0;
#X obj 244 23 receive~ KCV_FREQUENCY;
#X floatatom -26 98 5 0 0 1 frequency_controller osc3_frequency_controller_
-;
#X obj 113 169 outlet~;
#X obj 29 208 bng 15 250 50 0 empty osc3_frequency_controller_reset_
empty 17 7 0 10 -262144 -1 -1;
#X obj -26 116 expr~ if ($v1 < 0 \, $v2 + ($v2 * $v1 * 0.5) \, 0) \;
if ($v1 == 0 \, $v2 \, 0) \; if ($v1 > 0 \, $v2 + ($v2 * $v1) \, 0)
;
#X msg 29 226 \; osc3_frequency_controller_init 0 \;;
#X floatatom 73 7 5 0 0 0 osc3.control osc3_control_switch_ -;
#X obj 73 25 sig~;
#X obj 73 45 expr~ if ($v1 == 1 \, $v2 \, 220);
#X connect 0 0 8 1;
#X connect 1 0 4 0;
#X connect 3 0 5 0;
#X connect 4 0 2 0;
#X connect 4 1 2 0;
#X connect 4 2 2 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 4 1;
#X restore 241 2 pd OSC3_FREQUENCY_CONTROLLER;
#X obj 45 306 send~ OSCILLATOR_3;
#X floatatom 147 138 5 0 0 1 sawtooth_reverse osc3_sawtooth_reverse_
-;
#X obj 147 156 sig~;
#X obj 147 176 expr~ if ($v1 == 0 \, $v2-0.5 \, -($v2-0.5));
#X obj 172 96 send~ OSC3_CENTER_FREQUENCY;
#X msg 158 37 0;
#X obj 158 15 bng 15 250 50 0 empty phase_reset_ phase_reset 17 7 0
10 -262144 -1 -1;
#X connect 0 0 11 0;
#X connect 1 0 12 0;
#X connect 2 0 3 0;
#X connect 2 0 21 0;
#X connect 3 0 5 0;
#X connect 3 0 8 0;
#X connect 3 0 20 1;
#X connect 4 0 13 0;
#X connect 5 0 6 0;
#X connect 6 0 10 1;
#X connect 7 0 14 0;
#X connect 8 0 10 3;
#X connect 9 0 15 0;
#X connect 10 0 17 0;
#X connect 10 1 17 0;
#X connect 10 2 17 0;
#X connect 11 0 2 0;
#X connect 12 0 2 2;
#X connect 13 0 5 1;
#X connect 14 0 8 1;
#X connect 15 0 10 0;
#X connect 16 0 2 1;
#X connect 18 0 19 0;
#X connect 19 0 20 0;
#X connect 20 0 10 2;
#X connect 22 0 3 1;
#X connect 23 0 22 0;
#X restore 61 60 pd OSCILLATOR_3;
#X restore 317 678 pd OSCILLATOR_BANK;
#X obj 320 152 vradio 15 1 0 3 osc1_waveform_ osc1_waveform_init WAVEFORM
-11 -5 0 8 -262144 -1 -1 0;
#X obj 338 182 hsl 250 15 0 1 0 0 osc1_pulse_controller_ osc1_pulse_controller_init
PLUSE_CONTROLLER 5 8 0 10 -262144 -1 -1 11550 1;
#X obj 335 101 hradio 15 1 0 10 osc1_range_ osc1_range_init RANGE_LFO/-4/-3/-2/-1/0/+1/+2/+3/+4
0 -5 0 8 -262144 -1 -1 5;
#X obj 338 116 hsl 250 15 0 20 0 0 osc1_LFO_controller_ osc1_LFO_controller_init
LFO_CONTROLLER 5 8 0 10 -262144 -1 -1 12850 1;
#X obj 177 292 vsl 15 300 1 500 0 0 modulation_wheel_ modulation_wheel_init
MOD. -2 -9 0 10 -262144 -1 -1 29900 1;
#N canvas 845 604 447 204 WAVEFORM_VISION 1;
#N canvas 0 22 450 300 (subpatch) 0;
#X array WAVEFORM_VISION 256 float 0;
#X coords 0 1 255 -1 256 140 1;
#X restore 176 27 graph;
#X obj 50 47 hradio 15 1 0 4 empty empty Oscillator_Select_1/2/MIX
-17 -8 0 8 -262144 -260097 -1 3;
#N canvas 832 445 226 230 select 0;
#X obj 35 133 receive~ OSCILLATOR_1;
#X msg 35 82 set OSCILLATOR_\$1;
#X obj 35 23 + 1;
#X obj 35 3 inlet;
#X obj 60 151 inlet;
#X obj 60 172 metro 100;
#X obj 35 197 tabwrite~ WAVEFORM_VISION;
#X obj 35 44 route 4;
#X msg 105 106 set AUDIO_SIGNAL;
#X connect 0 0 6 0;
#X connect 1 0 0 0;
#X connect 2 0 7 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 5 0 6 0;
#X connect 7 0 8 0;
#X connect 7 1 1 0;
#X connect 8 0 0 0;
#X restore 50 92 pd select;
#X obj 101 74 tgl 15 0 empty empty ON/OFF 17 7 0 8 -262144 -260097
-1 1 1;
#X connect 1 0 2 0;
#X connect 3 0 2 1;
#X restore 34 718 pd WAVEFORM_VISION;
#X obj 338 357 hsl 250 15 0 1 0 0 osc2_triangle_controller_ osc2_triangle_controller_init
TRIANGLE_CONTROLLER 5 8 0 10 -262144 -1 -1 24900 1;
#X obj 320 357 vradio 15 1 0 3 osc2_waveform_ osc2_waveform_init WAVEFORM
-11 -5 0 8 -262144 -1 -1 0;
#X obj 338 387 hsl 250 15 0 1 0 0 osc2_pulse_controller_ osc2_pulse_controller_init
PLUSE_CONTROLER 5 8 0 10 -262144 -1 -1 20050 1;
#X obj 335 291 hradio 15 1 0 10 osc2_range_ osc2_range_init RANGE_LFO/-4/-3/-2/-1/0/+1/+2/+3/+4
0 -5 0 8 -262144 -1 -1 5;
#X obj 338 306 hsl 250 15 0 20 0 0 osc2_LFO_controller_ osc2_LFO_controller_init
LFO_CONTROLLER 5 8 0 10 -262144 -1 -1 11050 1;
#X text 340 371 SAWTOOTH;
#X text 342 166 SAWTOOTH;
#X obj 338 321 hsl 250 15 -1 1 0 0 osc2_frequency_controller_ osc2_frequency_controller_init
FREQUENCY_CONTROLLER 5 8 0 10 -262144 -1 -1 23850 1;
#X obj 320 321 bng 15 250 50 0 osc2_frequency_controller_reset_ empty
empty 17 7 0 10 -262144 -1 -1;
#X obj 338 531 hsl 250 15 0 1 0 0 osc3_triangle_controller_ osc3_triangle_controller_init
TRIANGLE_CONTROLLER 5 8 0 10 -262144 -1 -1 24900 1;
#X obj 320 531 vradio 15 1 0 3 osc3_waveform_ osc3_waveform_init WAVEFORM
-11 -5 0 8 -262144 -1 -1 1;
#X obj 338 561 hsl 250 15 0 1 0 0 osc3_pulse_controller_ osc3_pulse_controller_init
PLUSE_CONTROLER 5 8 0 10 -262144 -1 -1 6750 1;
#X obj 335 465 hradio 15 1 0 10 osc3_range_ osc3_range_init RANGE_LFO/-4/-3/-2/-1/0/+1/+2/+3/+4
0 -5 0 8 -262144 -1 -1 2;
#X obj 338 480 hsl 250 15 0 10 0 0 osc3_LFO_controller_ osc3_LFO_controller_init
LFO_CONTROLLER 5 8 0 10 -262144 -1 -1 20300 1;
#X obj 338 495 hsl 250 15 -1 1 0 0 osc3_frequency_controller_ osc3_frequency_controller_init
FREQUENCY_CONTROLLER 5 8 0 10 -262144 -1 -1 12450 1;
#X obj 320 495 bng 15 250 50 0 osc3_frequency_controller_reset_ empty
empty 17 7 0 10 -262144 -1 -1;
#X obj 335 546 tgl 15 0 osc3_sawtooth_reverse_ osc3_sawtooth_reverse_init
empty 17 7 0 10 -262144 -1 -1 1 1;
#X text 352 545 SAWTOOTH/REVERSE;
#X obj 280 226 hradio 15 1 0 2 oscillator_modulation_switch_ oscillator_modulation_switch_init
OSCILLATOR_MODULATION -37 -8 0 8 -262144 -258113 -1 0;
#X text 275 239 OFF/ON;
#N canvas 944 46 450 300 MIXER 0;
#N canvas 814 420 450 300 MIXER_NOISE 0;
#X obj 208 3 noise~;
#X obj 123 101 expr~ if ($v1 == 0 \, $v2 \, $v3);
#X obj 232 189 send~ NOISE;
#X obj 294 61 lop~ 2000;
#X floatatom 123 63 5 0 0 1 noise_select_switch noise_select_switch_
-;
#X obj 123 81 sig~;
#X floatatom 344 42 5 0 0 0 pink_noise_controler pink_noise_controller_
-;
#X obj 40 146 sig~;
#X floatatom 40 128 5 0 0 2 noise_switch noise_switch_ -;
#X floatatom 138 135 5 0 0 2 noise_volume noise_volume_ -;
#X obj 138 153 sig~;
#X obj 40 214 /~ 2;
#X obj 40 233 outlet~;
#X obj 123 173 *~;
#X obj 40 195 *~;
#X obj 232 169 /~ 2;
#X connect 0 0 1 1;
#X connect 0 0 3 0;
#X connect 1 0 13 0;
#X connect 1 0 15 0;
#X connect 3 0 1 2;
#X connect 4 0 5 0;
#X connect 5 0 1 0;
#X connect 6 0 3 1;
#X connect 7 0 14 0;
#X connect 8 0 7 0;
#X connect 9 0 10 0;
#X connect 10 0 13 1;
#X connect 11 0 12 0;
#X connect 13 0 14 1;
#X connect 14 0 11 0;
#X connect 15 0 2 0;
#X restore 94 111 pd MIXER_NOISE;
#N canvas 728 250 282 211 MIXER_OSCILLATOR_1 0;
#X obj 93 23 receive~ OSCILLATOR_1;
#X floatatom 70 109 5 0 0 2 volume osc1_volume_ -;
#X obj 70 146 sig~;
#X obj 42 34 sig~;
#X floatatom 42 16 5 0 0 2 volume_switch osc1_volume_switch_ -;
#X obj 42 59 *~;
#X obj 43 172 *~;
#X obj 43 192 outlet~;
#X connect 0 0 5 1;
#X connect 1 0 2 0;
#X connect 2 0 6 1;
#X connect 3 0 5 0;
#X connect 4 0 3 0;
#X connect 5 0 6 0;
#X connect 6 0 7 0;
#X restore 31 47 pd MIXER_OSCILLATOR_1;
#N canvas 1023 481 282 211 MIXER_OSCILLATOR_2 0;
#X floatatom 69 107 5 0 0 2 volume osc2_volume_ -;
#X obj 69 144 sig~;
#X obj 42 34 sig~;
#X floatatom 42 16 5 0 0 2 volume_switch osc2_volume_switch_ -;
#X obj 42 59 *~;
#X obj 42 170 *~;
#X obj 42 190 outlet~;
#X obj 93 23 receive~ OSCILLATOR_2;
#X connect 0 0 1 0;
#X connect 1 0 5 1;
#X connect 2 0 4 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 5 0 6 0;
#X connect 7 0 4 1;
#X restore 53 69 pd MIXER_OSCILLATOR_2;
#N canvas 1031 436 256 218 MIXER_OSCILLATOR_3 0;
#X floatatom 108 110 5 0 0 2 volume osc3_volume_ -;
#X obj 108 147 sig~;
#X obj 81 48 sig~;
#X floatatom 81 30 5 0 0 2 volume_switch osc3_volume_switch_ -;
#X obj 81 110 *~;
#X obj 81 173 *~;
#X obj 81 193 outlet~;
#X obj 96 74 receive~ OSCILLATOR_3;
#X connect 0 0 1 0;
#X connect 1 0 5 1;
#X connect 2 0 4 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 5 0 6 0;
#X connect 7 0 4 1;
#X restore 76 91 pd MIXER_OSCILLATOR_3;
#N canvas 947 376 369 267 MIXER 0;
#X floatatom 103 54 5 0 0 1 osc1_volume_switch osc1_volume_switch_
-;
#X floatatom 156 73 5 0 0 1 osc2_volume_switch osc2_volume_switch_
-;
#X floatatom 209 92 5 0 0 1 osc3_volume_switch osc3_volume_switch_
-;
#X obj 103 72 sig~;
#X obj 156 91 sig~;
#X obj 209 110 sig~;
#X obj 50 35 inlet~;
#X obj 50 227 outlet~;
#X obj 103 174 expr~ $v1 + $v2 + $v3 + $v4;
#X obj 262 152 sig~;
#X floatatom 262 134 5 0 0 2 noise_switch noise_switch_ -;
#X obj 50 200 /~;
#X connect 0 0 3 0;
#X connect 1 0 4 0;
#X connect 2 0 5 0;
#X connect 3 0 8 0;
#X connect 4 0 8 1;
#X connect 5 0 8 2;
#X connect 6 0 11 0;
#X connect 8 0 11 1;
#X connect 9 0 8 3;
#X connect 10 0 9 0;
#X connect 11 0 7 0;
#X restore 31 161 pd MIXER;
#X obj 31 180 send~ AUDIO_SIGNAL;
#X connect 0 0 4 0;
#X connect 1 0 4 0;
#X connect 2 0 4 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X restore 642 681 pd MIXER;
#X obj 649 531 hradio 15 1 0 2 noise_select_switch_ noise_select_switch_init
WHITE/PINK -8 -5 0 8 -262144 -4160 -1 1;
#X obj 652 546 hsl 250 15 0 2000 0 0 pink_noise_controller_ pink_noise_controller_init
PINK_NOISE_CONTROLLER 5 8 0 10 -262144 -1 -1 24900 1;
#X obj 634 502 tgl 15 0 noise_switch_ noise_switch_init empty 17 7
0 10 -262144 -4160 -1 0 1;
#X obj 652 502 hsl 250 15 0 1 0 0 noise_volume_ noise_volume_init NOISE_VOLUME
5 8 0 10 -262144 -1 -1 24900 1;
#X obj 575 429 tgl 15 0 osc3_control_switch_ osc3_control_switch_init
OSC.3_CONTROL -67 10 0 8 -262144 -258113 -1 1 1;
#X obj 633 116 tgl 15 0 osc1_volume_switch_ osc1_volume_switch_init
empty 17 7 0 10 -262144 -4160 -1 1 1;
#X obj 651 116 hsl 250 15 0 1 0 0 osc1_volume_ osc1_volume_init OSCILLATOR_1_VOLUME
5 8 0 10 -262144 -1 -1 24900 1;
#X obj 635 306 tgl 15 0 osc2_volume_switch_ osc2_volume_switch_init
empty 17 7 0 10 -262144 -4160 -1 1 1;
#X obj 653 306 hsl 250 15 0 1 0 0 osc2_volume_ osc2_volume_init OSCILLATOR_2_VOLUME
5 8 0 10 -262144 -1 -1 24900 1;
#X obj 634 480 tgl 15 0 osc3_volume_switch_ osc3_volume_switch_init
empty 17 7 0 10 -262144 -4160 -1 0 1;
#X obj 652 480 hsl 250 15 0 1 0 0 osc3_volume_ osc3_volume_init OSCILLATOR_3_VOLUME
5 8 0 10 -262144 -1 -1 24900 1;
#X obj 937 116 hsl 250 15 0 22050 0 0 filter_cutoff_frequency_ filter_cutoff_frequency_init
CUTOFF_FREQUENCY 5 8 0 10 -262144 -1 -1 600 1;
#X obj 937 134 hsl 250 15 5 1 0 0 filter_emphasis_ filter_emphasis_init
EMPHASIS_(Q) 5 8 0 10 -262144 -1 -1 17100 1;
#X obj 937 152 hsl 250 15 0 1 0 0 filter_amount_of_contour_ filter_amount_of_contour_init
AMOUNT_OF_CONTOUR 5 8 0 10 -262144 -1 -1 1200 1;
#X obj 937 258 hsl 250 15 5 1000 0 0 filter_attack_time_ filter_attack_time_init
ATTACK_AIME 5 8 0 10 -262144 -1 -1 0 1;
#X obj 937 276 hsl 250 15 5 1000 0 0 filter_decay_time_ filter_decay_time_init
DECAY_TIME 5 8 0 10 -262144 -1 -1 0 1;
#X obj 937 294 hsl 250 15 0 1 0 0 filter_sustain_level_ filter_sustain_level_init
SUSTAIN_LEVEL 5 8 0 10 -262144 -1 -1 0 1;
#X obj 908 84 hradio 15 1 0 2 filter_modulation_ filter_modulation_init
FILTER_MODULATION -25 -8 0 8 -262144 -258113 -1 0;
#X text 903 97 OFF/ON;
#X obj 906 204 hradio 15 1 0 2 keyboard_control_1_ keyboard_control_1_init
KEYBOARD_CONTROL -25 -8 0 8 -262144 -258113 -1 0;
#X text 901 217 OFF/ON;
#X obj 906 234 hradio 15 1 0 2 keyboard_control_2_ keyboard_control_2_init
empty -37 -8 0 8 -262144 -258113 -1 0;
#N canvas 970 44 177 137 MODIFIERS 0;
#N canvas 1013 204 229 104 FILTER 0;
#N canvas 687 426 706 382 VCF 0;
#X obj 27 -113 receive~ AUDIO_SIGNAL;
#X floatatom 48 -82 12 0 0 2 cutoff_frequency filter_cutoff_frequency_
-;
#X floatatom 73 -8 5 0 0 2 emphasis(Q) filter_emphasis_ -;
#X obj 30 26 vcf~;
#X obj 25 133 dac~;
#X obj 39 -20 *~;
#X obj 154 110 hsl 128 15 0.1 2.5 0 0 empty empty empty -2 -8 0 10
-262144 -1 -1 0 1;
#X obj 30 106 *~ 0.5;
#X floatatom 215 150 5 0 0 0 - - -;
#X obj 74 -59 receive~ OSC1_CENTER_FREQUENCY;
#X obj 249 -123 receive~ AUDIO_SIGNAL;
#X floatatom 307 -87 12 0 0 2 cutoff_frequency filter_cutoff_frequency_
-;
#X floatatom 295 -18 5 0 0 2 emphasis(Q) filter_emphasis_ -;
#X obj 252 16 vcf~;
#X obj 261 -30 *~;
#X obj 284 -60 receive~ OSC2_CENTER_FREQUENCY;
#X obj 465 -119 receive~ AUDIO_SIGNAL;
#X floatatom 523 -83 12 0 0 2 cutoff_frequency filter_cutoff_frequency_
-;
#X floatatom 511 -14 5 0 0 2 emphasis(Q) filter_emphasis_ -;
#X obj 468 20 vcf~;
#X obj 477 -26 *~;
#X obj 505 -56 receive~ OSC3_CENTER_FREQUENCY;
#X obj 137 60 +~;
#X obj 220 62 +~;
#X floatatom 414 179 5 0 0 2 amount_of_contour filter_amount_of_contour_
-;
#X obj 49 -54 sig~;
#X obj 271 -78 sig~;
#X obj 486 -66 sig~;
#X connect 0 0 3 0;
#X connect 0 0 5 0;
#X connect 1 0 25 0;
#X connect 2 0 3 2;
#X connect 3 0 22 0;
#X connect 5 0 3 1;
#X connect 6 0 7 1;
#X connect 6 0 8 0;
#X connect 7 0 4 0;
#X connect 7 0 4 1;
#X connect 10 0 13 0;
#X connect 10 0 14 0;
#X connect 11 0 26 0;
#X connect 12 0 13 2;
#X connect 13 0 22 1;
#X connect 14 0 13 1;
#X connect 16 0 19 0;
#X connect 16 0 20 0;
#X connect 17 0 27 0;
#X connect 18 0 19 2;
#X connect 19 0 23 1;
#X connect 20 0 19 1;
#X connect 22 0 23 0;
#X connect 23 0 7 0;
#X connect 25 0 5 1;
#X connect 26 0 14 1;
#X connect 27 0 20 1;
#X restore 31 28 pd VCF;
#N canvas 963 328 450 300 CUTOFF_FREQUENCY 0;
#N canvas 514 512 450 300 VCF_ENVELOPE 0;
#X floatatom 39 73 5 0 0 2 attack_time filter_attack_time_ -;
#X floatatom 149 75 5 0 0 2 decay_time filter_decay_time_ -;
#X floatatom 231 74 5 0 0 2 sustain_level filter_sustain_level_ -;
#X floatatom 329 74 5 0 0 2 decay_switch decay_switch_ -;
#X obj 39 91 sig~;
#X obj 149 93 sig~;
#X obj 329 92 sig~;
#X obj 231 92 sig~;
#X obj 39 110 pack~;
#X obj 149 112 pack~;
#X obj 231 111 pack~;
#X obj 329 111 pack~;
#X obj 39 129 unpack 0 0 0;
#X obj 149 131 unpack 0 0 0;
#X obj 231 130 unpack 0 0 0;
#X obj 329 130 unpack 0 0 0;
#X obj 117 169 +;
#X obj 55 210 pack f f f f;
#X connect 0 0 4 0;
#X connect 1 0 5 0;
#X connect 2 0 7 0;
#X connect 3 0 6 0;
#X connect 4 0 8 0;
#X connect 5 0 9 0;
#X connect 6 0 11 0;
#X connect 7 0 10 0;
#X connect 8 0 12 0;
#X connect 9 0 13 0;
#X connect 10 0 14 0;
#X connect 11 0 15 0;
#X connect 12 0 16 0;
#X connect 12 0 17 0;
#X connect 13 0 16 1;
#X connect 13 0 17 1;
#X connect 14 0 17 3;
#X connect 16 0 17 2;
#X restore 210 204 pd VCF_ENVELOPE;
#N canvas 0 22 248 235 FILTER_MODULATION 0;
#X floatatom 32 40 5 0 0 2 filter_modulation filter_modulation_ -;
#X obj 32 60 sig~;
#X obj 32 101 *~;
#X obj 47 81 receive~ MODULATION_SIGNAL;
#X obj 32 121 outlet~;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 2 0 4 0;
#X connect 3 0 2 1;
#X restore 229 27 pd FILTER_MODULATION;
#N canvas 882 313 450 300 KEYBOARD_CONTROL 0;
#X floatatom 30 32 5 0 0 2 keyboard_control_1 keyboard_control_1_ -
;
#X floatatom 213 33 5 0 0 2 keyboard_control_2 keyboard_control_2_
-;
#X obj 30 51 sig~;
#X obj 213 52 sig~;
#X obj 30 71 expr~ ($v1*(1/3)) + ($v2*(2/3));
#X connect 0 0 2 0;
#X connect 1 0 3 0;
#X connect 2 0 4 0;
#X connect 3 0 4 1;
#X restore 47 106 pd KEYBOARD_CONTROL;
#X restore 30 7 pd CUTOFF_FREQUENCY;
#X restore 20 31 pd FILTER;
#N canvas 0 22 450 300 LOUDNESS_COUNTUOR 0;
#X restore 20 51 pd LOUDNESS_COUNTUOR;
#X restore 922 681 pd MODIFIERS;
#X obj 33 348 tgl 15 0 decay_switch_ decay_switch_init DECAY_ON/OFF
17 7 0 8 -262144 -1 -1 0 1;
#X obj 575 54 bng 15 250 50 0 phase_reset_ empty OSCILLATOR_PHASE_RESET
-113 11 0 8 -262144 -1 -1;

0 件のコメント:

コメントを投稿