summaryrefslogtreecommitdiff
path: root/examples-xml/gen52.csd.xml
blob: 016f8dfeb55c976437b72be6db052bf1d8c44564 (plain)
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
<programlisting>
<emphasis role="csdtag">&lt;CsoundSynthesizer&gt;</emphasis>
<emphasis role="csdtag">&lt;CsOptions&gt;</emphasis>
<emphasis role="comment">; Select audio/midi flags here according to platform</emphasis>
-odac  <emphasis role="comment">;;;realtime audio out</emphasis>
<emphasis role="comment">;-iadc    ;;;uncomment -iadc if realtime audio input is needed too</emphasis>
<emphasis role="comment">; For Non-realtime ouput leave only the line below:</emphasis>
<emphasis role="comment">; -o gen52.wav -W ;;; for file output any platform</emphasis>
<emphasis role="csdtag">&lt;/CsOptions&gt;</emphasis>
<emphasis role="csdtag">&lt;CsInstruments&gt;</emphasis>

<emphasis role="ohdr">sr</emphasis> <emphasis role="op">=</emphasis> 44100
<emphasis role="ohdr">ksmps</emphasis> <emphasis role="op">=</emphasis> 32
<emphasis role="ohdr">nchnls</emphasis> <emphasis role="op">=</emphasis> 2
<emphasis role="ohdr">0dbfs</emphasis>  <emphasis role="op">=</emphasis> 1

garvb   <emphasis role="opc">init</emphasis> 0
gaW     <emphasis role="opc">init</emphasis> 0
gaX     <emphasis role="opc">init</emphasis> 0
gaY     <emphasis role="opc">init</emphasis> 0

itmp    <emphasis role="ohdr">ftgen</emphasis>  1, 0, 64, <emphasis role="op">-</emphasis>2, 2, 40, <emphasis role="op">-</emphasis>1, <emphasis role="op">-</emphasis>1, <emphasis role="op">-</emphasis>1, 123,           \
               1, 13.000, 0.05, 0.85, 20000.0, 0.0, 0.50, 2,   \
               1,  2.000, 0.05, 0.85, 20000.0, 0.0, 0.25, 2,   \
               1, 16.000, 0.05, 0.85, 20000.0, 0.0, 0.35, 2,   \
               1,  9.000, 0.05, 0.85, 20000.0, 0.0, 0.35, 2,   \
               1, 12.000, 0.05, 0.85, 20000.0, 0.0, 0.35, 2,   \
               1,  8.000, 0.05, 0.85, 20000.0, 0.0, 0.35, 2

itmp    <emphasis role="ohdr">ftgen</emphasis> 2, 0, 262144, <emphasis role="op">-</emphasis>2, 0
        <emphasis role="opc">spat3dt</emphasis> 2, <emphasis role="op">-</emphasis>0.2, 1, 0, 1, 1, 2, 0.005

itmp    <emphasis role="ohdr">ftgen</emphasis> 3, 0, 262144, <emphasis role="op">-</emphasis>52, 3, 2, 0, 4, 2, 1, 4, 2, 2, 4

<emphasis role="oblock">instr</emphasis> 1

a1      <emphasis role="opc">vco2</emphasis> 1, 440, 10
kfrq    <emphasis role="opc">port</emphasis> 100, 0.008, 20000
a1      <emphasis role="opc">butterlp</emphasis> a1, kfrq
a2      <emphasis role="opc">linseg</emphasis> 0, 0.003, 1, 0.01, 0.7, 0.005, 0, 1, 0
a1      <emphasis role="op">=</emphasis>  a1 <emphasis role="op">*</emphasis> a2 <emphasis role="op">*</emphasis> 2
        <emphasis role="opc">denorm</emphasis> a1
        <emphasis role="opc">vincr</emphasis> garvb, a1
aw, ax, ay, az  <emphasis role="opc">spat3di</emphasis> a1, p4, p5, p6, 1, 1, 2
        <emphasis role="opc">vincr</emphasis> gaW, aw
        <emphasis role="opc">vincr</emphasis> gaX, ax
        <emphasis role="opc">vincr</emphasis> gaY, ay

<emphasis role="oblock">endin</emphasis>

<emphasis role="oblock">instr</emphasis> 2

       <emphasis role="opc">denorm</emphasis> garvb
<emphasis role="comment">; skip as many samples as possible without truncating the IR</emphasis>
arW, arX, arY   <emphasis role="opc">ftconv</emphasis> garvb, 3, 2048, 2048, (65536 <emphasis role="op">-</emphasis> 2048)
aW      <emphasis role="op">=</emphasis>  gaW <emphasis role="op">+</emphasis> arW
aX      <emphasis role="op">=</emphasis>  gaX <emphasis role="op">+</emphasis> arX
aY      <emphasis role="op">=</emphasis>  gaY <emphasis role="op">+</emphasis> arY
garvb   <emphasis role="op">=</emphasis>  0
gaW     <emphasis role="op">=</emphasis>  0
gaX     <emphasis role="op">=</emphasis>  0
gaY     <emphasis role="op">=</emphasis>  0

aWre, aWim      <emphasis role="opc">hilbert</emphasis> aW
aXre, aXim      <emphasis role="opc">hilbert</emphasis> aX
aYre, aYim      <emphasis role="opc">hilbert</emphasis> aY
aWXr    <emphasis role="op">=</emphasis>  0.0928<emphasis role="op">*</emphasis>aXre <emphasis role="op">+</emphasis> 0.4699<emphasis role="op">*</emphasis>aWre
aWXiYr  <emphasis role="op">=</emphasis>  0.2550<emphasis role="op">*</emphasis>aXim <emphasis role="op">-</emphasis> 0.1710<emphasis role="op">*</emphasis>aWim <emphasis role="op">+</emphasis> 0.3277<emphasis role="op">*</emphasis>aYre
aL      <emphasis role="op">=</emphasis>  aWXr <emphasis role="op">+</emphasis> aWXiYr
aR      <emphasis role="op">=</emphasis>  aWXr <emphasis role="op">-</emphasis> aWXiYr

       <emphasis role="opc">outs</emphasis> aL, aR

<emphasis role="oblock">endin</emphasis>

<emphasis role="csdtag">&lt;/CsInstruments&gt;</emphasis>
<emphasis role="csdtag">&lt;CsScore&gt;</emphasis>

<emphasis role="stamnt">i</emphasis> 1 0 0.5  0.0  2.0 -0.8
<emphasis role="stamnt">i</emphasis> 1 1 0.5  1.4  1.4 -0.6
<emphasis role="stamnt">i</emphasis> 1 2 0.5  2.0  0.0 -0.4
<emphasis role="stamnt">i</emphasis> 1 3 0.5  1.4 -1.4 -0.2
<emphasis role="stamnt">i</emphasis> 1 4 0.5  0.0 -2.0  0.0
<emphasis role="stamnt">i</emphasis> 1 5 0.5 -1.4 -1.4  0.2
<emphasis role="stamnt">i</emphasis> 1 6 0.5 -2.0  0.0  0.4
<emphasis role="stamnt">i</emphasis> 1 7 0.5 -1.4  1.4  0.6
<emphasis role="stamnt">i</emphasis> 1 8 0.5  0.0  2.0  0.8
<emphasis role="stamnt">i</emphasis> 2 0 10
<emphasis role="stamnt">e</emphasis>

<emphasis role="csdtag">&lt;/CsScore&gt;</emphasis>
<emphasis role="csdtag">&lt;/CsoundSynthesizer&gt;</emphasis>
</programlisting>