summaryrefslogtreecommitdiff
path: root/examples-xml/sfinstr3.csd.xml
blob: 1cf9d5b7633cdf17ff489c94cd286da1546fc466 (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
<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 sfinstr3.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 

gi24   <emphasis role="ohdr">ftgen</emphasis> 1, 0, 32, <emphasis role="op">-</emphasis>2, 24, 2, 261.626, 60, 1, 1.0293022, 1.059463, 1.0905076, 1.1224619, 1.1553525, 1.1892069, \
             1.2240532, 1.2599207, 1.2968391, 1.33483924, 1.3739531, 1.414213, 1.4556525, 1.4983063, 1.54221, 1.5874001, \
             1.6339145, 1.6817917, 1.73107, 1.7817962, 1.8340067, 1.8877471, 1.9430623,  2 <emphasis role="comment">;table for microtuning, a 24 tone equal temperament</emphasis>

giSF	<emphasis role="opc">sfload</emphasis>	"sf_GMbank.sf2" 
        <emphasis role="opc">sfilist</emphasis> giSF 

<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, 1				<emphasis role="comment">;24 tones per octave</emphasis>
iamp    <emphasis role="op">=</emphasis> 0.0002				<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">sfinstr3</emphasis> ivel, ikey, iamp, icps, 180, giSF, 1 <emphasis role="comment">;= Slap Bass 3</emphasis>
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="stamnt">i</emphasis>1 0 1 60 100 1	<emphasis role="comment">;using ftable 1</emphasis>
<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="stamnt">e</emphasis> 
<emphasis role="csdtag">&lt;/CsScore&gt;</emphasis>
<emphasis role="csdtag">&lt;/CsoundSynthesizer&gt;</emphasis>
</programlisting>