Hi Roger,

BTW, I think I figure out most of that paper we were exchanging on last week. It followed the work of one of the heavily cited references and as I implemented things others started to become clear.

This led to this post and has to do with normalization of energy.

Energy is estimated using g(t) = 10* lg (SUM of n frames in a 30 msec window centered on t) and here lg is the common logarithm.
All my original audio signals s have absolute amplitudes less than 1 so the energy waveform of s is always negative.
The least negative amplitude is the maximum value.

At first glance, scaling by -1 seem right but isn't that a flip around the horizontal axis not a shift/slide up into positive ranges?
To to the shift, I found the absolute maximum then added it to the energy signal, shifting it into positive ranges and then I found the maximum again.
So a built in function would be nice.

This second maximum value is part of a normalization procedure which then shifts the original energy signal g so it's minimum negative value is at zero.
That's a part of the energy normalization they were referring to and had me scratching my head way the formula gave only zero and negative values.

Anyway, thanks again for all that help last week. It was much appreciated.


-----Original Message-----
From: Roger Dannenberg <rbd@cs.cmu.edu>
To: Discussion of developing Nyquist plug-ins for Audacity <audacity-nyquist@lists.sourceforge.net>
Sent: Sat, Jun 27, 2009 7:59 pm
Subject: Re: [Audacity-nyquist] Is there a signed version of snd-maxsamp or absolute minimum function for sound?

You can subtract your signal from a large number so that everything becomes positive and your minimum become the maximum.

For related problems, you can also use snd-maxv to take only positive samples (or negative samples if you scale the input by -1) and then use snd-maxsamp to get only the most positive or most negative samples if the signal has both positive and negative samples. There's nothing in Nyquist now to take the minimum or maximum if you can't guarantee whether the value is positive or negative (but you can process the signal sample-by-sample, which is slow, but for such a simple calculation might be ok. Is should be substantially faster than real time).


mszlazak@aol.com wrote:
SND-MAXSAMP gives the maximum absolute value of a wave.
Is there a signed (not absolute) version of this function?
I'm dealing with waves of only negative valued amplitues so the maximum amplitude is the one closest to the axis. A absolute minimum function would work here as well.


Audacity-nyquist mailing list
Audacity-nyquist mailing list