[net.micro.amiga] Can someone tell me how to make noise?

ewhac@well.UUCP (Leo L. Schwab) (03/14/86)

[ Replace this line with your line noise ]

	This may be on the wrong newsgroup, but since I want to do this
with the Amiga, it *seems* appropriate.

	Since the Amiga uses bitmapped waveforms to make sound, how do I
create {white,pink} noise?  I have a random number generator, but I suspect
there's more to it than random numbers.  You probably have to get the
distribution just right or it won't sound good (I'm guessing).

	While I'm at it, could someone point me at a good book that will
help me not to ask such questions again?  Something that will give a guy
that knows nothing about sound generation an idea of how to make the
noises he wants.

					Thanks in advance,
					Leo L. Schwab
					dual!unicom!schwab
					well!ewhac

"Hello.  You've reached my new cellular phone.  But I'm not in my car right
 now, so please leave your name and number after the beep....."

sam@amiga.UUCP (Samuel C. Dicker) (03/15/86)

In article <768@well.UUCP> ewhac@well.UUCP (Leo L. Schwab) writes:
>	Since the Amiga uses bitmapped waveforms to make sound, how do I
>create {white,pink} noise?  I have a random number generator, but I suspect
>there's more to it than random numbers.
Random number generators produce a sound similar to white noise which contains
equal energy at all frequencies.  This makes a hiss-like sound.  Integrating
the random number sequence, filters it with a 6db/octave slope (watch out for
overflow).  This makes a rumbling sound.  Pink noise contains equal energy per
octave and is the most pleasant noise sound.  To produce it, you need to
filter white noise with a 3db/octave slope.  This is very difficult.

I have produced narrow-bandwidth filtered noise sounds on the Amiga by playing
a sine wave in one audio channel and modulating the period with another audio
channel.  The Audio Hardware chapter of the Amiga Hardware Manual explains how
to attach audio channels.  If the period table is generated by a random number
generator and the periods are in a good range (between 124 and about 400) you
can produce good quality filtered noise.  The center frequency and bandwidth
can be controlled by the range of the random period table.  You can also
modulate other waveforms besides sine waves.  Try modulating a waveform which
is the sum a sine waves one octave apart ( sine(t) + sine(2t) + sine(4t) + ...)
over a one octave period range (like 125 to 250).  It might make pink noise.
I haven't tried it.

>	While I'm at it, could someone point me at a good book that will
>help me not to ask such questions again?
Please ask questions!  I haven't had time to write a sound tutorial, but at
least I can answer questions.

There are many good books on the subject.  These are my three favorites that
cover most of the subject:

    Musical Applications of Microprocessors
    by Hal Chamberlain (Hayden, 1980)

    Foundations of Computer Music
    by Curtis Roads and John Strawn (Cambridge: MIT Press, 1985)

    Digital Audio Signal Processing
    by John Strawn (Los Altos, California: William Kaufmann, Inc., 1985)

J. A. Moorer's article on signal processing in Digital Audio Signal Processing
is a good place to start.

Sam Dicker
{hplabs,decwrl}!pyramid!amiga!sam