summaryrefslogtreecommitdiff
path: root/examples-xml/sfplay3.csd.xml
blob: 5382ce6bc6fcbf44a5f720f55f6ed19a9b7f46ad (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
<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 -+rtmidi=virtual -M0 <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 sfplay3.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 

gitwelve <emphasis role="ohdr">ftgen</emphasis> 1, 0, 16, <emphasis role="op">-</emphasis>2, 12, 2, 440, 69, 1, 16<emphasis role="op">/</emphasis>15, 9<emphasis role="op">/</emphasis>8, 6<emphasis role="op">/</emphasis>5, 5<emphasis role="op">/</emphasis>4, 4<emphasis role="op">/</emphasis>3, 7<emphasis role="op">/</emphasis>5, 3<emphasis role="op">/</emphasis>2, 8<emphasis role="op">/</emphasis>5, 5<emphasis role="op">/</emphasis>3, 9<emphasis role="op">/</emphasis>5, 15<emphasis role="op">/</emphasis>8, 2 
givife   <emphasis role="ohdr">ftgen</emphasis> 2, 0, 16, <emphasis role="op">-</emphasis>2, 5, 2, 261.659, 60, 1, 1.1486, 1.3195, 1.5157, 1.7411, 2.00

giSF	<emphasis role="opc">sfload</emphasis>	"01hpschd.sf2" 
        <emphasis role="opc">sfplist</emphasis> giSF 
gipre	<emphasis role="opc">sfpreset</emphasis> 0, 0, giSF, 0 

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

	<emphasis role="opc">mididefault</emphasis>	60, p3
	<emphasis role="opc">midinoteonkey</emphasis>	p4, p5
ikey	<emphasis role="op">=</emphasis> p4
ivel	<emphasis role="op">=</emphasis> p5
aenv    <emphasis role="opc">linsegr</emphasis>	1, 1, 1, 1, 0			<emphasis role="comment">;envelope</emphasis>
icps    <emphasis role="opc">cpstuni</emphasis>	ikey, gitwelve 			<emphasis role="comment">;12 tones per octave</emphasis>
iamp    <emphasis role="op">=</emphasis> 0.0004				<emphasis role="comment">;scale amplitude</emphasis>
iamp    <emphasis role="op">=</emphasis> iamp <emphasis role="op">*</emphasis> ivel <emphasis role="op">*</emphasis> 1<emphasis role="op">/</emphasis>128 			<emphasis role="comment">;make velocity-dependent</emphasis>
aL, aR	<emphasis role="opc">sfplay3</emphasis> ivel, ikey, iamp, icps, gipre, 1 
aL      <emphasis role="op">=</emphasis> aL <emphasis role="op">*</emphasis> aenv 
aR      <emphasis role="op">=</emphasis> aR <emphasis role="op">*</emphasis> aenv 
        <emphasis role="opc">outs</emphasis> aL, aR 

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

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

	<emphasis role="opc">mididefault</emphasis>	60, p3
	<emphasis role="opc">midinoteonkey</emphasis>	p4, p5
ikey	<emphasis role="op">=</emphasis> p4
ivel	<emphasis role="op">=</emphasis> p5
aenv    <emphasis role="opc">linsegr</emphasis>	1, 1, 1, 1, 0			<emphasis role="comment">;envelope</emphasis>
icps    <emphasis role="opc">cpstuni</emphasis>	ikey, givife			<emphasis role="comment">;5 tones per octave</emphasis>
iamp    <emphasis role="op">=</emphasis> 0.0004				<emphasis role="comment">;scale amplitude</emphasis>
iamp    <emphasis role="op">=</emphasis> iamp <emphasis role="op">*</emphasis> ivel <emphasis role="op">*</emphasis> 1<emphasis role="op">/</emphasis>128 			<emphasis role="comment">;make velocity-dependent</emphasis>
aL, aR	<emphasis role="opc">sfplay3</emphasis> ivel, ikey, iamp, icps, gipre, 1 
aL      <emphasis role="op">=</emphasis> aL <emphasis role="op">*</emphasis> aenv 
aR      <emphasis role="op">=</emphasis> aR <emphasis role="op">*</emphasis> aenv 
        <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">f</emphasis>0 60	<emphasis role="comment">;play for 60 seconds</emphasis>
<emphasis role="comment">;instr.1 using ftable 1</emphasis>
<emphasis role="stamnt">i</emphasis>1 0 1 60 100 
<emphasis role="stamnt">i</emphasis>1 + 1 62 &lt;  
<emphasis role="stamnt">i</emphasis>1 + 1 65 &lt;   
<emphasis role="stamnt">i</emphasis>1 + 1 69 40  

<emphasis role="comment">;instr.2 using ftable 2</emphasis>
<emphasis role="stamnt">i</emphasis>2 5 1 60 100 
<emphasis role="stamnt">i</emphasis>2 + 1 62 &lt;   
<emphasis role="stamnt">i</emphasis>2 + 1 65 &lt;   
<emphasis role="stamnt">i</emphasis>2 + 1 69 40  
<emphasis role="stamnt">e</emphasis> 
<emphasis role="csdtag">&lt;/CsScore&gt;</emphasis>
<emphasis role="csdtag">&lt;/CsoundSynthesizer&gt;</emphasis>
</programlisting>