athenaCL Tutorial Manual: Third Edition, Version 2.0.0a15 | ||
---|---|---|
Prev | Chapter 4. Tutorial 4: Creating and Editing Textures | Next |
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:
Example 4-30. 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:
Example 4-31. 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 Section 2.6 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.
Example 4-32. 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