There must be some way to generate the arbitrarily shaped noise spectra
using a simple algorithm and some pre-made tables or random numbers.
(i) a frequency-domain table filled with amplitude data following the
desired spectrum, and randomly chosen phases. Then inverse FFT.
(ii) in time domain: a random number generator followed by a FIR
(or IIR) filter having the desired frequency response.
Some time I wondered what happens if not only the two-time correlation
gets fixed, but also some higher-order (like three-time) correlations.
The time-domain waveform becomes even more restricted. I recall having
read somewhere that some sort of analysis on music reveals an 1/f-like
spectrum. This kind-of makes sense, because 1/f noise has the longest
memory (longest tails in the autocorrelation function), which is
probably a necessary ingredient to make music sound "interesting".
Still, generating music so that, say, the intervals are generated from
an 1/f noise source (approximated into the exact intervals of the
chromatic scale) tends to result in a piece which is closer to noise
than music. So, I've been wondering whether the generated music sounds
better if one makes also higher correlations to follow some
(long-tailed) function.
Analyzing power spectrum only (of, say, intervals and durations)
in music reveals just the two-time correlation, but tells nothing about
higher correlations which may be present. I'm not sure, however, whether
some theorem exists which makes a connection between the two-time and
higher correlations (for instance, to what extent specifying 2-time
correlation limits the freedom to choose an arbitraty 3-time
correlation).
Regards,
Mikko