This little book shows you how to create noise. It should be useful to a wide audience. Sound artists, scientists and engineers will all find something of interest here. The book can be read at different levels depending on mathematical background. Since we give example C programs, even someone with a modest background can still use the techniques to generate noise. Those with a stronger background will appreciate the more mathematical material.
This is primarily a how-to book, which means we present only the facts with very little in the way of mathematical proof or pedagogical material. The book does contain a great deal of original material. To the best of our knowledge, some of the noise filters presented in this book have never been published anywhere else.
We start with a discussion of white noise. This includes a very concise introduction to the concept of power spectral density, which is useful for characterizing different kinds of noise. You do not need a deep understanding of this concept to use the book. We present three different ways to generate white noise using Bernoulli, uniform and Gaussian random variables. White noise is important because other kinds of noise are gotten from it by filtering.
Next, we look at analog pink noise filters. A pure pink noise filter would have a 1/f power spectral density. We show how to get arbitrarily close to this ideal with finite lumped element filters. Filter system functions and physical realizations as RC ladder networks are given. These analog filters are used as the basis for the digital pink noise filters in the next chapter but they could be used to create analog pink noise using an analog white noise source. We believe the filters in this and the next four chapters are entirely unique to this book.
The next chapter shows how to convert the analog pink noise filters into digital pink noise filters. These filters can be used with the digital white noise generators from the first chapter to create digital pink noise. There are example C programs that show how to implement these filters.
Continuing, we look at analog colored noise filters. These are filters with a response centered at any desired frequency and with a 1/f power spectral density both above and below that frequency. We show how to physically realize the filters.
In the next chapter we convert these filters into digital filters. A C program shows how to implement the digital filters. Sound artists should find these filters particularly interesting.
The following chapter shows how to remove the singularity at zero frequency for the analog pink noise filters and still keep the 1/f power spectral density for higher frequencies. We also discuss how to create filters with a more general power spectral density of 1/f^α where 0≤α≤1.
The final chapter shows how to generate pure and noisy tones on a computer in the most efficient way possible. A C program for implementing the method is also given.
A good complement to this book is our introduction to digital filters: Recursive Digital Filters: A Concise Guide.