Editing Instruments and Altering EventMode
A Texture's instrument can be edited like other Texture attributes. The instruments available for editing, just as when creating a Texture, are dependent on the active EventMode. To use instruments from another EventMode, the active EventMode must first be changed, and then the Texture may be assigned an instrument.
In the following example, the user changes the EventMode to csoundNative with EMo, examines the available instruments with EMi, and then assigns each Texture instrument 80:
Changing EventMode and editing Texture instrument
pi{auto-muteHiConga}ti{a1} :: emo cn
EventMode mode set to: csoundNative.
pi{auto-muteHiConga}ti{a1} :: emi
csoundNative instruments:
{number,name}
3 sineDrone
4 sineUnitEnvelope
5 sawDrone
6 sawUnitEnvelope
11 noiseWhite
12 noisePitched
13 noiseUnitEnvelope
14 noiseTambourine
15 noiseUnitEnvelopeBandpass
16 noiseSahNoiseUnitEnvelope
17 noiseSahNoiseUnitEnvelopeDistort
20 fmBasic
21 fmClarinet
22 fmWoodDrum
23 fmString
30 samplerReverb
31 samplerRaw
32 samplerUnitEnvelope
33 samplerUnitEnvelopeBandpass
34 samplerUnitEnvelopeDistort
35 samplerUnitEnvelopeParametric
36 samplerSahNoiseUnitEnvelope
40 vocodeNoiseSingle
41 vocodeNoiseSingleGlissando
42 vocodeNoiseQuadRemap
43 vocodeNoiseQuadScale
44 vocodeNoiseQuadScaleRemap
45 vocodeNoiseOctScale
46 vocodeNoiseOctScaleRemap
47 vocodeNoiseBiOctScale
48 vocodeNoiseTriOctScale
50 guitarNylonNormal
51 guitarNylonLegato
52 guitarNylonHarmonic
60 additiveBellBright
61 additiveBellDark
62 additiveBellClear
70 synthRezzy
71 synthWaveformVibrato
72 synthVcoAudioEnvelopeSineQuad
73 synthVcoAudioEnvelopeSquareQuad
74 synthVcoDistort
80 pluckTamHats
81 pluckFormant
82 pluckUnitEnvelope
110 noiseAudioEnvelopeSineQuad
111 noiseAudioEnvelopeSquareQuad
130 samplerAudioEnvelopeSineQuad
131 samplerAudioEnvelopeSquareQuad
132 samplerAudioFileEnvelopeFilter
133 samplerAudioFileEnvelopeFollow
140 vocodeSineOctScale
141 vocodeSineOctScaleRemap
142 vocodeSineBiOctScale
143 vocodeSineTriOctScale
144 vocodeSineQuadOctScale
145 vocodeSinePentOctScale
146 vocodeSineHexOctScale
230 samplerVarispeed
231 samplerVarispeedAudioSine
232 samplerVarispeedReverb
233 samplerVarispeedDistort
234 samplerVarispeedSahNoiseDistort
240 vocodeVcoOctScale
241 vocodeVcoOctScaleRemap
pi{auto-muteHiConga}ti{a1} :: tie i 80
baseTexture.py: WARNING: new Texture auxiliary value 2
TI a1: parameter instrument updated.
pi{auto-muteHiConga}ti{a1} :: tio b1
TI b1 now active.
pi{auto-muteHiConga}ti{b1} :: tie i 80
baseTexture.py: WARNING: new Texture auxiliary value 2
TI b1: parameter instrument updated.
pi{auto-muteHiConga}ti{b1} :: tiv
TI: b1, TM: LineGroove, TC: 0, TT: TwelveEqual
pitchMode: pitchSpace, silenceMode: off, postMapMode: on
midiProgram: piano1
status: o, duration: 005.0--20.12
(i)nstrument 80 (csoundNative: pluckTamHats)
(t)ime range 05.0--20.0
(b)pm wavePowerUp, time, (constant, 20), 0, 2, (constant, 120),
(constant, 300)
(r)hythm loop, ((4,1,+),(4,1,+),(4,2,+),(4,3,+),(4,5,+),(4,3,+)),
randomWalk
(p)ath auto-muteHiConga
(D4)
15.00(s)
local (f)ield constant, 0
local (o)ctave constant, 0
(a)mplitude randomUniform, (constant, 0.6), (constant, 1)
pan(n)ing wavePowerDown, event, (constant, 15), 0.25, 2.5, (constant,
0), (constant, 0.5)
au(x)iliary
x0 cyclicGen, up, 0.1, 0.9, 0.1
x1 cyclicGen, down, 800, 16000, 200
texture (s)tatic
s0 parallelMotionList, (), 0.0
s1 pitchSelectorControl, randomPermutate
s2 levelFieldMonophonic, event
s3 levelOctaveMonophonic, event
texture (d)ynamic none
Notice that, after editing the Texture, a warning is issued. This warning tells the user that additional auxiliary ParameterObjects have been added. As a Csound-based instrument, each event of instrument 80 can accept two additional synthesis parameters. When viewing a Texture with this instrument, as shown above, the auxiliary display shows two additional ParameterObjects, x0 and x1. To learn what these auxiliary ParameterObjects control, the command TIdoc ma be used:
Examining Texture documentation with TIdoc
pi{auto-muteHiConga}ti{b1} :: tidoc
TI: b1, TM: LineGroove
(i)nstrument 80 (csoundNative: pluckTamHats)
(b)pm (1) name, (2) stepString {'event', 'time'}, (3)
parameterObject {secPerCycle}, (4) phase, (5) exponent, (6)
min, (7) max
(r)hythm (1) name, (2) pulseList {a list of Pulse notations}, (3)
selectionString {'randomChoice', 'randomWalk',
'randomPermutate', 'orderedCyclic',
'orderedCyclicRetrograde', 'orderedOscillate'}
local (f)ield (1) name, (2) value
local (o)ctave (1) name, (2) value
(a)mplitude (1) name, (2) min, (3) max
pan(n)ing (1) name, (2) stepString {'event', 'time'}, (3)
parameterObject {secPerCycle}, (4) phase, (5) exponent, (6)
min, (7) max
au(x)iliary
x0 iparm (0-1)
(1) name, (2) directionString {'upDown', 'downUp', 'up',
'down'}, (3) min, (4) max, (5) increment
x1 low-pass filter frequency
(1) name, (2) directionString {'upDown', 'downUp', 'up',
'down'}, (3) min, (4) max, (5) increment
texture (s)tatic
s0 (1) name, (2) transpositionList, (3) timeDelay
s1 (1) name, (2) selectionString {'randomChoice', 'randomWalk',
'randomPermutate', 'orderedCyclic',
'orderedCyclicRetrograde', 'orderedOscillate'}
s2 (1) name, (2) level {'set', 'event'}
s3 (1) name, (2) level {'set', 'event'}
texture (d)ynamic none
Assuming that Csound is properly configured, a new set of EventLists can be created. As the user is now in EventMode csoundNative and has csoundNative textures, both a Csound score and a MIDI file are created. (See for more information on working with Csound in athenaCL.) The user may render the Csound score with ELr, and then audition the results with the ELh command.
Creating a new EventList with ELn
pi{auto-muteHiConga}ti{b1} :: eln
EventList ath2010.07.03.18.40.11 complete:
/Volumes/xdisc/_scratch/ath2010.07.03.18.40.11.bat
/Volumes/xdisc/_scratch/ath2010.07.03.18.40.11.csd
/Volumes/xdisc/_scratch/ath2010.07.03.18.40.11.mid
/Volumes/xdisc/_scratch/ath2010.07.03.18.40.11.xml
audio rendering initiated: /Volumes/xdisc/_scratch/ath2010.07.03.18.40.11.bat
EventList hear initiated: /Volumes/xdisc/_scratch/ath2010.07.03.18.40.11.aif
EventList hear initiated: /Volumes/xdisc/_scratch/ath2010.07.03.18.40.11.mid