[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Frozen noise generation


With noise signals, there are at least two measures of
"level". Spectrum Level, which is a measure of energy
per unit bandwidth; and RMS energy, which is a measure
of the energy of the signal as a whole.

If you wish both signals to have the same spectrum
level, use the same amplitude sine waves to generate
each sample. On an idealised spectrum analyser, the
flat top of both signals would be at the same height.

If you wish both signals to have the same RMS energy,
then measure this value after generation for each file,
and adjust as appropriate.

"Normalising" so that the peak sample value in each
file is the same is NOT a method of matching Spectrum
Level, RMS energy, SPL (unless each file contains a
single pure low frequency sine wave), perceived
loudness, or anything else!

I can probably send you a poorly written and very slow
MATLAB script to generate noise of any bandwidth,
spectrum level, or RMS energy level. If this would be
of help, send me an email. However, the principle is
exactly what you're doing: sum sines of random phase.
Filtering the output of a random number generator is a
different approach, which may or may not be
appropriate. It seems you will achieve exactly what you
want simply by omitting the normalisation.

Hope this is of some help - apologies if I have
misunderstood the problem.