diff options
Diffstat (limited to 'examples/sfilist.csd')
-rw-r--r--[-rwxr-xr-x] | examples/sfilist.csd | 57 |
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> |