summaryrefslogtreecommitdiff
path: root/examples/sfilist.csd
diff options
context:
space:
mode:
Diffstat (limited to 'examples/sfilist.csd')
-rw-r--r--[-rwxr-xr-x]examples/sfilist.csd57
1 files changed, 17 insertions, 40 deletions
diff --git a/examples/sfilist.csd b/examples/sfilist.csd
index a23925a..4b62e66 100755..100644
--- a/examples/sfilist.csd
+++ b/examples/sfilist.csd
@@ -1,68 +1,45 @@
<CsoundSynthesizer>
<CsOptions>
; Select audio/midi flags here according to platform
-; Audio out Audio in No messages
--odac -iadc -d -M0 ;;;RT audio I/O, midi in
+-odac -+rtmidi=virtual -M0 ;;;realtime audio out, virtual midi in
+;-iadc ;;;uncomment -iadc if RT audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o sfilist.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>
-sr = 44100
-ksmps = 100
+sr = 44100
+ksmps = 32
nchnls = 2
-; load two soundfonts
-isf sfload "07AcousticGuitar.sf2"
-ir sfload "01hpschd.sf2"
- sfplist isf ; print presets of
- sfplist ir ; soundfonts
- sfpassign 0, isf
- sfpassign 1, ir
+0dbfs = 1
- instr 1
-; play from score and midi keyboard (=midi channel 1)
- mididefault 60, p3
- midinoteonkey p4, p5
-inum init p4
-ivel init p5
-print ivel
+gisf sfload "sf_GMbank.sf2"
+ sfilist gisf ;list all instruments
-ivel init 3*(ivel/127) ; velocity-dependent
-kamp linsegr 1,1,1,.1,0
-kfreq init 1 ;do not change freq from sf
-a1,a2 sfplay3 ivel, inum, kamp*ivel, kfreq, 0, 0
- outs a1, a2
-
- endin
-
- instr 2
-; play from score and midi keyboard (=midi channel 2)
- mididefault 60, p3
+instr 1 ; play from score and midi keyboard
+
+ mididefault 60, p3
midinoteonkey p4, p5
inum init p4
ivel init p5
-print ivel
-
-ivel init 10*(ivel/127) ; 01hpschd.sf2 needs extra volume
-kamp linsegr 1,1,1,.1,0 ; velocity-dependent
+ivel init ivel/127 ;make velocity dependent
+kamp linsegr 1, 1, 1, .1, 0
+kamp = kamp/3000 ;scale amplitude
kfreq init 1 ;do not change freq from sf
-a1,a2 sfplay3 ivel, inum, kamp*ivel, kfreq, 1, 0
+a1, a2 sfinstr3 ivel, inum, kamp*ivel, kfreq, 100, gisf ;choose Halo Pad
outs a1, a2
- endin
+endin
</CsInstruments>
<CsScore>
f0 60 ; stay active for 1 minute
-i1 0 1 60 100
+i1 0 1 60 127
i1 + 1 62 <
i1 + 1 65 <
i1 + 1 69 10
-i2 5 1 60 100
-i2 + 1 62 <
-i2 7 1 65 <
-i2 7 1 69 10
+e
</CsScore>
</CsoundSynthesizer>