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.

Envelopes<br />

In general usage, the word “envelope” is used to mean some kind of wrapper or enclosing cover around<br />

something else. In some sense, you can think of an amplitude envelope as enclosing or defining a sonic<br />

“event” or discrete “object”.<br />

First, in the interest of preserving your speakers <strong>for</strong> a little while longer, turn the gain on your amplifier<br />

down. Once your speakers are protected, play the <strong>Sound</strong> called endless sine. This is the kind of sound<br />

that is quickly relegated to the background. It sounds as if it could be the hum of a machine or a distant<br />

motor; it isn’t changing, so it seems safe to ignore it, and it almost disappears after a while. Putting an<br />

amplitude envelope on the endless sine will give it “closure”, and make it seem like a single “event” or<br />

“object”.<br />

FunctionGenerator<br />

AR and ADSR<br />

To apply an amplitude envelope to any <strong>Sound</strong>, the method is the same: multiply the <strong>Sound</strong> by the envelope.<br />

To see an example of this, double-click on apply shape of env to oscil amp. Select Function-<br />

Generator17, and choose Full wave<strong>for</strong>m from the Info menu. A FunctionGenerator reads through its<br />

wavetable exactly once each time it is triggered, so what you see in the full wave<strong>for</strong>m display is a picture<br />

of the Gaussian wavetable.<br />

Leave that full wave<strong>for</strong>m window open, and return to apply shape of env to oscil amp; this is a Product<br />

module. Select it, and choose Full wave<strong>for</strong>m from the Info menu. What you see is the shape of the Gaussian<br />

wavetable applied to the amplitude of the sine wave oscillator. (Actually, it looks more like the<br />

Gaussian shape mirrored across the zero axis, because the sine wave is both positive and negative, and<br />

when you multiply the positive value from the Gaussian curve by a negative value from the sine wave,<br />

you end up with a negative number).<br />

Double-click on a different shape. As you can see, this is the same configuration: a Product with two inputs:<br />

sine wave and ADSR env. Select ADSR env , and choose Full wave<strong>for</strong>m from the Info menu. <strong>The</strong>n<br />

double-click ADSR env to see its parameters.<br />

An ADSR envelope is based on the idea of an envelope that will be controlled by a trigger. You specify<br />

how long it should take to reach the maximum amplitude when the trigger is first “attacked”, how far it<br />

should “decay” after that initial attack and how long it should take to decay that far, what its amplitude<br />

should be while the trigger is “sustained”, and what the envelope behavior should be when the trigger is<br />

finally “released”. You can see the different parts of the envelope clearly in the full wave<strong>for</strong>m display: the<br />

attack of 0.2 seconds, an initial decay down to 0.75 of the full amplitude over the course of 0.1 seconds, a<br />

flat sustain portion, and finally a release that takes 0.5 seconds.<br />

In this example, the envelope is triggered once and has a finite duration, so the sustain is computed by<br />

<strong>Kyma</strong> as the total duration minus the sum of the attack, decay, and release durations.<br />

GraphicalEnvelope<br />

Play the <strong>Sound</strong> called graphic env chopper, and use the MIDI keyboard to select different pitches and get<br />

a feel <strong>for</strong> how it behaves. Double-click on it to see how it is put together. Notice that there is a configuration<br />

that looks a lot like the last <strong>Sound</strong> we looked at; it’s a Product with 3 detuned GA saws and<br />

GraphicalEnvelope14 as its Inputs.<br />

Double-click GraphicEnvelope14 to see how it got its name. This <strong>Sound</strong> has a rubber-band style editor <strong>for</strong><br />

drawing the desired envelope shape. When you click in the Envelope field, you should see two little red<br />

arrows. <strong>The</strong>se mark the beginning and ending of a loop. Count the number of spikes or ridges between<br />

the red arrows. Make sure the original <strong>Sound</strong> is still playing, and hold down a key on the MIDI keyboard.<br />

When you press a key, it goes through the entire envelope up to the left arrow once, then loops between<br />

the arrows as long as you hold the key down, and finally when you release the key, it will go through the<br />

segment after the end-loop arrow. What it stores is not the absolute amplitudes, but the slope of each<br />

120

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

Saved successfully!

Ooh no, something went wrong!