event_i — Generates a score event from an instrument.
event_i "scorechar", iinsnum, idelay, idur, [, ip4] [, ip5] [, ...]
event_i "scorechar", "insname", idelay, idur, [, ip4] [, ip5] [, ...]
“scorechar” -- A string (in double-quotes) representing the first p-field in a score statement. This is usually “e”, “f”, or “i”
“insname” -- A string (in double-quotes) representing a named instrument.
iinsnum -- The instrument to use for the event. This corresponds to the first p-field, p1, in a score statement.
idelay -- When (in seconds) the event will occur from the current performance time. This corresponds to the second p-field, p2, in a score statement.
idur -- How long (in seconds) the event will happen. This corresponds to the third p-field, p3, in a score statement.
ip4, ip5, ... (optional) -- Parameters representing additional p-field in a score statement. It starts with the fourth p-field, p4.
The event is added to the queue at initialisation time.
Note | |
---|---|
Note that the event_i opcode cannot accept string p-fields. If you need to pass strings when instantiating an instrument, use the scoreline or scoreline_i opcode. |
Here is an example of the event_i opcode. Play event_i.csd
Example 273. Example of the event_i opcode.
See the sections Real-time Audio and Command Line Flags for more information on using command line flags.
<CsoundSynthesizer> <CsOptions> ; Select audio/midi flags here according to platform -odac ;;;RT audio out ;-iadc ;;;uncomment -iadc if RT audio input is needed too ; For Non-realtime ouput leave only the line below: ; -o event_i.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 seed 0 gisine ftgen 0, 0, 2^10, 10, 1 instr 1 ;master instrument ininstr = 10 ;number of called instances indx = 0 loop: ipan random 0, 1 ifreq random 100, 1000 iamp = 1/ininstr event_i "i", 10, 0, p3, iamp, ifreq, ipan loop_lt indx, 1, ininstr, loop endin instr 10 print p4, p5, p6 ipeak random 0, 1 ;where is the envelope peak asig poscil3 p4, p5, gisine aenv transeg 0, p3*ipeak, 6, 1, p3-p3*ipeak, -6, 0 aL,aR pan2 asig*aenv, p6 outs aL, aR endin </CsInstruments> <CsScore> i1 0 10 i1 8 10 i1 16 15 e </CsScore> </CsoundSynthesizer>