09.12.2012 Views

The Kyma Language for Sound Design, Version 4.5

The Kyma Language for Sound Design, Version 4.5

The Kyma Language for Sound Design, Version 4.5

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Now select and play the FormantBankOscillator. Each time you press a key on the MIDI keyboard, it<br />

will trigger the envelope, and you will hear the frequency vary according to the shape you drew in the<br />

GraphicalEnvelope.<br />

To make the deviation more extreme, multiply the effect of the GraphicalEnvelope by 12 nn. This gives<br />

you a frequency deviation of one octave (12 half steps):<br />

I just want to sing<br />

GraphicalEnvelope1 L * 12 nn + 2 c<br />

Some of the <strong>Sound</strong>s in <strong>Kyma</strong> extract parameters from their inputs, <strong>for</strong> example, the AmplitudeFollower<br />

or the FrequencyTracker extract the amplitude and frequency, respectively. If you apply one of these<br />

modules to the ADInput, you can use your own voice (or an instrument) to control parameter values of<br />

<strong>Kyma</strong> <strong>Sound</strong>s.<br />

Drag an AmplitudeFollower from the Analysis category of the prototypes, and drop it on top of the<br />

GraphicalEnvelope.<br />

Select and play the FormantBankOscillator and then sing into the microphone. <strong>The</strong> louder you sing (or<br />

yell) into the microphone, the more pitch deviation in the FormantBankOscillator. This is one <strong>for</strong>m of<br />

“cross synthesis”, controlling the parameter of one <strong>Sound</strong> with a different parameter extracted from another<br />

<strong>Sound</strong>.<br />

Treating MIDI Events as Audio Signals<br />

By pasting <strong>Sound</strong>s into parameter fields, you can, in a slightly twisted way, treat MIDI events as if they<br />

were audio signals or create shared expressions. <strong>The</strong> trick is to use the Constant <strong>Sound</strong>.<br />

<strong>The</strong> Constant is used to indicate a value that remains constant instead of varying over time the way most<br />

signals do. Paradoxically enough, you can put Event Values into the Constant’s Value field so that the<br />

value changes in response to events coming in from MIDI or other sources—in other words, it becomes a<br />

“time-varying constant”.<br />

Suppose that you wanted to treat the MIDI pitch as a signal, subjecting it to signal processing operations<br />

like delay, attenuation, or filtering be<strong>for</strong>e using it to control the pitch of an oscillator. To turn MIDI pitch<br />

into a signal, enter<br />

!KeyNumber / 127<br />

into the Value field of a Constant. Why divide by 127? Because a Constant’s value must be between -1<br />

and 1, and a key number is between 0 and 127.<br />

Now you can feed the Constant into a DelayWithFeedback, a HarmonicResonator, a PeakDetector, or<br />

some other chain of processing <strong>Sound</strong>s, and then paste the chain into the Frequency field of the Oscilla-<br />

54

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!