diff options
Diffstat (limited to 'examples-xml/gen30.csd.xml')
-rw-r--r-- | examples-xml/gen30.csd.xml | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/examples-xml/gen30.csd.xml b/examples-xml/gen30.csd.xml new file mode 100644 index 0000000..78bafd8 --- /dev/null +++ b/examples-xml/gen30.csd.xml @@ -0,0 +1,68 @@ +<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 <emphasis role="comment">;;;realtime audio out</emphasis> +<emphasis role="comment">; For Non-realtime ouput leave only the line below:</emphasis> +<emphasis role="comment">; -o gen30.wav -W ;;; for file output any platform</emphasis> +<emphasis role="csdtag"></CsOptions></emphasis> +<emphasis role="csdtag"><CsInstruments></emphasis> + +<emphasis role="comment">;a simplified example of Istvan Varga</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 + +isaw <emphasis role="ohdr">ftgen</emphasis> 1, 0, 16384, 7, 1, 16384, <emphasis role="op">-</emphasis>1 <emphasis role="comment">;sawtooth wave </emphasis> +iFM <emphasis role="ohdr">ftgen</emphasis> 3, 0, 4096, 7, 0, 512, 0.25, 512, 1, 512, 0.25, 512, \ + 0, 512, <emphasis role="op">-</emphasis>0.25, 512, <emphasis role="op">-</emphasis>1, 512, <emphasis role="op">-</emphasis>0.25, 512, 0 <emphasis role="comment">;FM waveform</emphasis> +iAM <emphasis role="ohdr">ftgen</emphasis> 4, 0, 4096, 5, 1, 4096, 0.01 <emphasis role="comment">;AM waveform</emphasis> +iEQ <emphasis role="ohdr">ftgen</emphasis> 5, 0, 1024, 5, 1, 512, 32, 512, 1 <emphasis role="comment">;FM to EQ</emphasis> +isine <emphasis role="ohdr">ftgen</emphasis> 6, 0, 1024, 10, 1 <emphasis role="comment">;sine wave</emphasis> + +<emphasis role="op">/</emphasis><emphasis role="op">*</emphasis> generate bandlimited sawtooth waves <emphasis role="op">*</emphasis><emphasis role="op">/</emphasis> +i0 <emphasis role="op">=</emphasis> 0 +<emphasis role="olabel">loop1</emphasis><emphasis role="op">:</emphasis> +imaxh <emphasis role="op">=</emphasis> <emphasis role="ohdr">sr</emphasis> <emphasis role="op">/</emphasis> (2 <emphasis role="op">*</emphasis> 440.0 <emphasis role="op">*</emphasis> <emphasis role="opc">exp</emphasis>(<emphasis role="opc">log</emphasis>(2.0) <emphasis role="op">*</emphasis> (i0 <emphasis role="op">-</emphasis> 69) <emphasis role="op">/</emphasis> 12)) +i_ <emphasis role="ohdr">ftgen</emphasis> i0 <emphasis role="op">+</emphasis> 10, 0, 4096, <emphasis role="op">-</emphasis>30, 1, 1, imaxh <emphasis role="comment">;use gen 30</emphasis> +i0 <emphasis role="op">=</emphasis> i0 <emphasis role="op">+</emphasis> 1 + <emphasis role="octrl">if</emphasis> (i0 <emphasis role="op"><</emphasis> 127.5) <emphasis role="octrl">igoto</emphasis> <emphasis role="olabel">loop1</emphasis> + +<emphasis role="oblock">instr</emphasis> 1 + +kcps <emphasis role="op">=</emphasis> 440.0 <emphasis role="op">*</emphasis> <emphasis role="opc">exp</emphasis>(<emphasis role="opc">log</emphasis>(2.0) <emphasis role="op">*</emphasis> (p4 <emphasis role="op">-</emphasis> 69) <emphasis role="op">/</emphasis> 12) <emphasis role="comment">;note frequency</emphasis> +klpmaxf <emphasis role="opc">limit</emphasis> p5 <emphasis role="op">*</emphasis> kcps, 1000.0, 12000.0 <emphasis role="comment">;lowpass max. frequency</emphasis> + +kfmd1 <emphasis role="op">=</emphasis> 0.03 <emphasis role="op">*</emphasis> kcps <emphasis role="comment">;FM depth in Hz</emphasis> +kamfr <emphasis role="op">=</emphasis> kcps <emphasis role="op">*</emphasis> 0.02 <emphasis role="comment">;AM frequency</emphasis> +kamfr2 <emphasis role="op">=</emphasis> kcps <emphasis role="op">*</emphasis> 0.1 + +kfnum <emphasis role="op">=</emphasis> (10 <emphasis role="op">+</emphasis> 69 <emphasis role="op">+</emphasis> 0.5 <emphasis role="op">+</emphasis> 12 <emphasis role="op">*</emphasis> <emphasis role="opc">log</emphasis>(kcps <emphasis role="op">/</emphasis> 440.0) <emphasis role="op">/</emphasis> <emphasis role="opc">log</emphasis>(2.0)) <emphasis role="comment">;table number</emphasis> +aenv <emphasis role="opc">linseg</emphasis> 0, p3<emphasis role="op">*</emphasis>0.25, 1, p3<emphasis role="op">*</emphasis>0.75, 0 <emphasis role="comment">;amp. envelope</emphasis> + +asig <emphasis role="opc">oscbnk</emphasis> kcps, 0.0, kfmd1, 0.0, 40, 200, 0.1, 0.2, 0, 0, 144, \ + 0.0, klpmaxf, 0.0, 0.0, 1.5, 1.5, 2, kfnum, 3, 0, 5, 5, 5 +asig <emphasis role="op">=</emphasis> asig <emphasis role="op">*</emphasis> aenv<emphasis role="op">*</emphasis>.03 +<emphasis role="opc">outs</emphasis> asig, asig + +<emphasis role="oblock">endin</emphasis> + +<emphasis role="csdtag"></CsInstruments></emphasis> +<emphasis role="csdtag"><CsScore></emphasis> +<emphasis role="stamnt">s</emphasis> +<emphasis role="stamnt">i</emphasis> 1 0 6 41 10 +<emphasis role="stamnt">i</emphasis> 1 0 6 60 +<emphasis role="stamnt">i</emphasis> 1 0 6 65 +<emphasis role="stamnt">i</emphasis> 1 0 6 69 +<emphasis role="stamnt">s</emphasis> +<emphasis role="stamnt">i</emphasis> 1 0 6 41 64 +<emphasis role="stamnt">i</emphasis> 1 0 6 60 +<emphasis role="stamnt">i</emphasis> 1 0 6 65 +<emphasis role="stamnt">i</emphasis> 1 0 6 69 + +<emphasis role="stamnt">e</emphasis> +<emphasis role="csdtag"></CsScore></emphasis> +<emphasis role="csdtag"></CsoundSynthesizer></emphasis> +</programlisting>
\ No newline at end of file |