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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>The</strong> sampling rate can be set to 48, 44.1, 24, 22.050, or 11.025 khz using the DSP Status window. This is the<br />

rate at which audio signals are updated on the Capybara.<br />

Randomly Accessing <strong>Sound</strong>s<br />

Suppose that you have several different <strong>Sound</strong>s and that you would like to be able to start and stop them<br />

at will, in any order? For example, you might be accompanying a live per<strong>for</strong>mer, in which case you<br />

would want to be able to synchronize the start and end times of synthesized sounds, samples, and/or<br />

processing of the live input. Or you might be setting up a psychoacoustic experiment in which you want<br />

to randomize the order in which the stimuli are presented to a subject.<br />

<strong>The</strong>re are two approaches to solving this problem, depending on the amount of processing time you have<br />

available, how quickly the transitions must be between <strong>Sound</strong>s, and whether you require cross-fading<br />

between the <strong>Sound</strong>s.<br />

Mixer model<br />

If you would like any possible succession of <strong>Sound</strong>s with cross-fading between them, you must put an<br />

amplitude envelope on each of the <strong>Sound</strong>s, and place all of them into a single Mixer. If you assign each<br />

<strong>Sound</strong> a unique trigger, you will be able to trigger any <strong>Sound</strong> at any time and they will overlap by the<br />

duration of the decay of the first one and the attack time on the second. This presupposes that you have<br />

enough computing power to compute all of these <strong>Sound</strong>s simultaneously.<br />

<strong>The</strong> Special Case of Samples and Disk Recordings<br />

If all of the <strong>Sound</strong>s that you want to trigger happen to be either disk tracks or samples, there is an alternate<br />

solution. Using a KeyMappedMultisample, you can trigger any of several disk files (or samples) as<br />

long as they are all stored in the same folder on your disk. Using a MIDIVoice or MIDIMapper to define<br />

polyphony, you can specify the number of disk files that could be sounding at one time. If all you want is<br />

a simple crossfade between disk files, <strong>for</strong> example, you can get by with a polyphony of 2.<br />

Compiled <strong>Sound</strong> Grid<br />

If you do not have to crossfade between <strong>Sound</strong>s, you can use a compiled <strong>Sound</strong> grid <strong>for</strong> the purpose of<br />

randomly accessing <strong>Sound</strong>s. <strong>The</strong> idea behind the compiled <strong>Sound</strong> grid is that you do the first step of the<br />

Compile, load, start process — the compile step — to all <strong>Sound</strong>s in the grid at once, and save the results<br />

on disk. <strong>The</strong>n you can do the final two steps — loading and starting — at the moment you want to actually<br />

play the <strong>Sound</strong>. Because you have done the most time consuming part of the processing ahead of<br />

time, you can load and start arbitrary <strong>Sound</strong>s in an arbitrary order much more quickly.<br />

76

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

Saved successfully!

Ooh no, something went wrong!