27.11.2012 Views

programming with max/msp - Virtual Sound

programming with max/msp - Virtual Sound

programming with max/msp - Virtual Sound

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

Chapter 3T - Noise generators, filters, and subtractive synthesis<br />

In digital systems, white noise is generally produced using random number<br />

generators: the resulting waveform contains all of the reproducible frequencies<br />

for the digital system being used. In practice, random number generators use<br />

mathematical procedures that are not precisely random: they generate series<br />

that repeat after some number of events. For this reason, such generators are<br />

called pseudo-random generators.<br />

By modifying some of their parameters, these generators can produce different<br />

kinds of noise. A white noise generator, for example, generates random<br />

samples at the sampling rate. (If the sampling rate is 48,000 Hz, for example,<br />

it will generate 48,000 samples per second.) It is possible, however, to modify<br />

the frequency at which numbers are generated – a generating frequency equal<br />

to 5,000 numbers a second, for example, we would no longer produce white<br />

noise, but rather a noise <strong>with</strong> strongly attenuated high frequencies.<br />

When the frequency at which samples are generated is less than the sampling<br />

rate, “filling in the gaps” between one sample and the next becomes a problem,<br />

since a DSP system (defined in the glossary for Chapter 1T) must always be able<br />

to produce samples at the sampling rate. There are various ways of resolving<br />

this problem, including the following three solutions:<br />

> Simple pseudo-random sample generators<br />

These generate random values at a given frequency, maintaining a constant<br />

value until it is time to generate the next sample. This results in a waveform<br />

resembling a step function. In Figure 3.3 we see the graph of a 100 Hz<br />

noise generator; the random value is repeatedly output for a period equal<br />

to 1/100 of a second, after which a new random value is computed. If the<br />

sampling rate were 48,000 Hz, for example, each random value would be<br />

repeated as a sample 48,000 / 100 = 480 times.<br />

amplitude<br />

�<br />

���<br />

�<br />

����<br />

��<br />

� ���� ��� ���� ���<br />

time<br />

Fig. 3.3 Generation of pseudo-random values<br />

from “Electronic Music and <strong>Sound</strong> Design” Vol. 1 by Alessandro Cipriani and Maurizio Giri<br />

© ConTempoNet 2010 - All rights reserved<br />

3T<br />

297

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

Saved successfully!

Ooh no, something went wrong!