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
|
<programlisting>
<emphasis role="csdtag"><CsoundSynthesizer></emphasis>
<emphasis role="csdtag"><CsOptions></emphasis>
<emphasis role="comment">; Select audio/midi flags here according to platform</emphasis>
<emphasis role="comment">; Audio out Audio in No messages</emphasis>
-odac -iadc -d <emphasis role="comment">;;;RT audio I/O</emphasis>
<emphasis role="comment">; For Non-realtime ouput leave only the line below:</emphasis>
<emphasis role="comment">; -o moogvcf.wav -W ;;; for file output any platform</emphasis>
<emphasis role="csdtag"></CsOptions></emphasis>
<emphasis role="csdtag"><CsInstruments></emphasis>
<emphasis role="comment">; Initialize the global variables.</emphasis>
<emphasis role="ohdr">sr</emphasis> <emphasis role="op">=</emphasis> 44100
<emphasis role="ohdr">kr</emphasis> <emphasis role="op">=</emphasis> 4410
<emphasis role="ohdr">ksmps</emphasis> <emphasis role="op">=</emphasis> 10
<emphasis role="ohdr">nchnls</emphasis> <emphasis role="op">=</emphasis> 2
<emphasis role="oblock">instr</emphasis> 1<emphasis role="comment">; 2 modes excitator</emphasis>
idur <emphasis role="opc">init</emphasis> p3
ifreq11 <emphasis role="opc">init</emphasis> p4
ifreq12 <emphasis role="opc">init</emphasis> p5
iQ11 <emphasis role="opc">init</emphasis> p6
iQ12 <emphasis role="opc">init</emphasis> p7
iamp <emphasis role="opc">init</emphasis> <emphasis role="opc">ampdb</emphasis>(p8)
ifreq21 <emphasis role="opc">init</emphasis> p9
ifreq22 <emphasis role="opc">init</emphasis> p10
iQ21 <emphasis role="opc">init</emphasis> p11
iQ22 <emphasis role="opc">init</emphasis> p12
<emphasis role="comment">; to simulate the shock between the excitator and the resonator</emphasis>
ashock <emphasis role="opc">mpulse</emphasis> 3,0
aexc1 <emphasis role="opc">mode</emphasis> ashock,ifreq11,iQ11
aexc1 <emphasis role="op">=</emphasis> aexc1<emphasis role="op">*</emphasis>iamp
aexc2 <emphasis role="opc">mode</emphasis> ashock,ifreq12,iQ12
aexc2 <emphasis role="op">=</emphasis> aexc2<emphasis role="op">*</emphasis>iamp
aexc <emphasis role="op">=</emphasis> (aexc1<emphasis role="op">+</emphasis>aexc2)<emphasis role="op">/</emphasis>2
<emphasis role="comment">;"Contact" condition : when aexc reaches 0, the excitator looses </emphasis>
<emphasis role="comment">;contact with the resonator, and stops "pushing it"</emphasis>
aexc limit aexc,0,3<emphasis role="op">*</emphasis>iamp
<emphasis role="comment">; 2modes resonator</emphasis>
ares1 <emphasis role="opc">mode</emphasis> aexc,ifreq21,iQ21
ares2 <emphasis role="opc">mode</emphasis> aexc,ifreq22,iQ22
ares <emphasis role="op">=</emphasis> (ares1<emphasis role="op">+</emphasis>ares2)<emphasis role="op">/</emphasis>2
<emphasis role="opc">display</emphasis> aexc<emphasis role="op">+</emphasis>ares,p3
<emphasis role="opc">outs</emphasis> aexc<emphasis role="op">+</emphasis>ares,aexc<emphasis role="op">+</emphasis>ares
<emphasis role="oblock">endin</emphasis>
<emphasis role="csdtag"></CsInstruments></emphasis>
<emphasis role="csdtag"><CsScore></emphasis>
<emphasis role="comment">;wooden excitator against glass resonator</emphasis>
<emphasis role="stamnt">i</emphasis>1 0 8 1000 3000 12 8 70 440 888 500 420
<emphasis role="comment">;felt against glass</emphasis>
<emphasis role="stamnt">i</emphasis>1 4 8 80 188 8 3 70 440 888 500 420
<emphasis role="comment">;wood against wood</emphasis>
<emphasis role="stamnt">i</emphasis>1 8 8 1000 3000 12 8 70 440 630 60 53
<emphasis role="comment">;felt against wood</emphasis>
<emphasis role="stamnt">i</emphasis>1 12 8 80 180 8 3 70 440 630 60 53
<emphasis role="stamnt">i</emphasis>1 16 8 1000 3000 12 8 70 440 888 2000 1630
<emphasis role="stamnt">i</emphasis>1 23 8 80 180 8 3 70 440 888 2000 1630
<emphasis role="comment">;With a metallic excitator</emphasis>
<emphasis role="stamnt">i</emphasis>1 33 8 1000 1800 1000 720 70 440 882 500 500
<emphasis role="stamnt">i</emphasis>1 37 8 1000 1800 1000 850 70 440 630 60 53
<emphasis role="stamnt">i</emphasis>1 42 8 1000 1800 2000 1720 70 440 442 500 500
<emphasis role="csdtag"></CsScore></emphasis>
<emphasis role="csdtag"></CsoundSynthesizer></emphasis>
</programlisting>
|