You can subscribe to this list here.
2004 
_{Jan}

_{Feb}

_{Mar}

_{Apr}

_{May}

_{Jun}

_{Jul}

_{Aug}

_{Sep}

_{Oct}

_{Nov}
(40) 
_{Dec}
(29) 

2005 
_{Jan}
(7) 
_{Feb}
(12) 
_{Mar}
(28) 
_{Apr}
(27) 
_{May}

_{Jun}
(13) 
_{Jul}
(4) 
_{Aug}
(7) 
_{Sep}
(1) 
_{Oct}
(2) 
_{Nov}
(32) 
_{Dec}
(49) 
2006 
_{Jan}
(31) 
_{Feb}
(16) 
_{Mar}
(15) 
_{Apr}
(15) 
_{May}
(21) 
_{Jun}
(1) 
_{Jul}
(1) 
_{Aug}
(5) 
_{Sep}
(2) 
_{Oct}
(21) 
_{Nov}

_{Dec}
(6) 
2007 
_{Jan}
(21) 
_{Feb}

_{Mar}

_{Apr}
(5) 
_{May}
(1) 
_{Jun}
(3) 
_{Jul}
(10) 
_{Aug}
(38) 
_{Sep}
(21) 
_{Oct}
(38) 
_{Nov}
(23) 
_{Dec}
(3) 
2008 
_{Jan}
(72) 
_{Feb}
(45) 
_{Mar}
(46) 
_{Apr}
(5) 
_{May}
(2) 
_{Jun}
(33) 
_{Jul}

_{Aug}
(9) 
_{Sep}
(6) 
_{Oct}
(1) 
_{Nov}
(17) 
_{Dec}
(73) 
2009 
_{Jan}
(20) 
_{Feb}
(28) 
_{Mar}
(7) 
_{Apr}
(24) 
_{May}
(8) 
_{Jun}
(59) 
_{Jul}
(38) 
_{Aug}
(25) 
_{Sep}
(19) 
_{Oct}
(40) 
_{Nov}
(43) 
_{Dec}
(53) 
2010 
_{Jan}
(22) 
_{Feb}
(12) 
_{Mar}
(14) 
_{Apr}
(4) 
_{May}
(29) 
_{Jun}
(26) 
_{Jul}
(7) 
_{Aug}
(14) 
_{Sep}
(16) 
_{Oct}
(34) 
_{Nov}
(13) 
_{Dec}
(8) 
2011 
_{Jan}

_{Feb}

_{Mar}
(1) 
_{Apr}
(1) 
_{May}

_{Jun}
(5) 
_{Jul}
(10) 
_{Aug}
(2) 
_{Sep}
(3) 
_{Oct}

_{Nov}
(1) 
_{Dec}
(1) 
2012 
_{Jan}

_{Feb}
(1) 
_{Mar}

_{Apr}

_{May}

_{Jun}

_{Jul}
(4) 
_{Aug}

_{Sep}
(21) 
_{Oct}

_{Nov}

_{Dec}

2013 
_{Jan}

_{Feb}

_{Mar}
(1) 
_{Apr}

_{May}

_{Jun}

_{Jul}

_{Aug}

_{Sep}

_{Oct}
(6) 
_{Nov}

_{Dec}

2014 
_{Jan}

_{Feb}
(2) 
_{Mar}

_{Apr}

_{May}
(1) 
_{Jun}

_{Jul}
(3) 
_{Aug}

_{Sep}

_{Oct}

_{Nov}

_{Dec}

S  M  T  W  T  F  S 


1
(1) 
2

3

4

5

6

7

8

9
(2) 
10
(1) 
11

12
(2) 
13
(1) 
14

15

16

17

18
(1) 
19
(1) 
20
(3) 
21
(3) 
22
(6) 
23
(4) 
24

25
(8) 
26
(4) 
27
(6) 
28
(12) 
29
(3) 
30
(1) 




From: Steve <stevethefiddle@gm...>  20090630 19:30:07

On Fri, 20090626 at 23:52 0500, Leland wrote: > Steve wrote: > > On Thu, 20090625 at 18:01 0500, Leland wrote: > >> Stevethefiddle wrote: > >>> Any progress on the LF+CR issue? > >>> > Hi Steve, > > I wasn't able to create any actual errors, but I took a stab at fixing it anyway. Pretty sure it'll be okay now. Just don't expect CRLFs to be preserved. Now, every file that's loaded will be converted to LF only. If this fixes your problem and you think the conversion is too "forceful" holler and I'll make it a little more intelligent. > > Get the new version from: > > http://audacity.homerow.net/index.php?dir=modules%2F&download=NyqBench09.177.zip > > Leland Thanks that fixes it. Steve 
From: Roger Dannenberg <rbd@cs...>  20090629 03:57:18

paul beach wrote: > I expect sin(sin t) look like another sine wave. > But we know from FM theory that the result has sidebands, so it cannot be a sine wave. > This: > (hzosc (hzosc f)) > attenuates the amplitude in proportion to the frequency, at f = 11, the > amplitude is about 0.1 of full scale. > That all sounds right to me  the instantaneous frequency of the "carrier" never exceeds one (the maximum value of the input), so the phase of the outer hzosc is going to wobble around zero. > This: (osc (osc 11)) does not return audio. > The first argument to OSC is a scalar step number, so this doesn't return anything, it generates an error. Roger 
From: paul beach <sniffyraven@fa...>  20090629 03:46:08

I expect sin(sin t) look like another sine wave. This: (hzosc (hzosc f)) attenuates the amplitude in proportion to the frequency, at f = 11, the amplitude is about 0.1 of full scale. This: (osc (osc 11)) does not return audio. Paul On Sun, 28 Jun 2009 23:11:16 0400, "Roger Dannenberg" <rbd@...> said: > What did you expect to get from this and what did you actually get? > hzosc(hzosc(f)) is not the same as sin(sin(t)) > > paul beach wrote: > > Sine of a sine does not seem to work, > > (hzosc (hzosc 11)) > > > > If something is moving in a frequency modulated field, it creates quite > > a commotion. It seems difficult to set up a car engine in Nyquist. > > > > > >  > _______________________________________________ > Audacitynyquist mailing list > Audacitynyquist@... > https://lists.sourceforge.net/lists/listinfo/audacitynyquist  paul beach sniffyraven@... 
From: Roger Dannenberg <rbd@cs...>  20090629 03:11:27

What did you expect to get from this and what did you actually get? hzosc(hzosc(f)) is not the same as sin(sin(t)) paul beach wrote: > Sine of a sine does not seem to work, > (hzosc (hzosc 11)) > > If something is moving in a frequency modulated field, it creates quite > a commotion. It seems difficult to set up a car engine in Nyquist. > > 
From: paul beach <sniffyraven@fa...>  20090628 22:22:59

Sine of a sine does not seem to work, (hzosc (hzosc 11)) If something is moving in a frequency modulated field, it creates quite a commotion. It seems difficult to set up a car engine in Nyquist. http://www.climatehoax.ca/music/engine.mp3 Accelerating frequency, sin((t*55)^1.25+ 2*sin(3*(t*55)^1.25)) Not in rads; starting radian frequency is 55/(2*pi)  paul beach sniffyraven@... 
From: Roger Dannenberg <rbd@cs...>  20090628 22:07:30

Is there a signed version of sndmaxsamp or absolute minimum function for sound? No. You can use sndmaxv and sndminv to remove the negative or positive part of a signal, but it only helps you find the minimum if you know the minimum is negative. Roger 
From: <mszlazak@ao...>  20090628 22:02:25

BTW Edgar, below is what I have so far. If I've got things right to now then I still need to add together normalized energy and normalized edge information. After that would be the automaton part. Learning as I go. Roger D. was very helpful and gave me a couple items that may make this all work with different energy calculations:  "All these measures are related  peak absolute value, average of squared signal, square root of average, etc. For a given type of sound (like speech) peak amplitude is generally a constant factor different from the RMS amplitude, and once you take logs, that constant factor becomes an offset, and whether you work with intensity (amplitude) or power (amplitude squared) is just a scale factor. The "normal" thing is use RMS because RMS squared is average power (energy / time), but it would not be too surprising to use some other related measure. ... log(x) is monotonic: x > y > 0 => log(x) > log(y), so if you want the max(log(x)) you can take log(max(x)), provided x > 0."  (defun cubic (frame windowsize) ??? (let ??? ??? ??? ( ??? ??? ??? (k (/ 27.0 16.0))??? ??? ??? ??? ??? (i (round (* frame (/ 2581.0 (1 windowsize))))) ??? ??? ) ??????????????? (cond ((> i 1290) (setf i 1290)) ((< i 1290) (setf i 1290))) ??? ??? (* k (+ (* i i i) (* 2.0 i i) i)) ??? ) ) (defun energy (s windowsize framesize) ??? (scale 4.34294481 (sndlog (sndavg (mult s s) windowsize framesize OPAVERAGE))) ) (defun normg (g) ??????? (setf neg (scale 1 g)) ??? (setf shift (sndmaxsamp (sndmaxv neg (const 0.0 (sndlength neg 10000000))))) ??? (if (> shift 0.0) (setf g (sum g shift))) ??? (setf gmax (sndmaxsamp g)) ??? (scale (/ 20.0 gmax) (diff g gmax)) ) (defun makefilter (rate) ??? (setf arf (makearray 15)) ??? (dotimes (i 15) ??? ??? ??? (setf frame ( i 7)) ??? ??? ??? (setf (aref arf i) (cubic frame 15)) ??? ) ??? (sndfromarray 0 rate arf) ) (setf g (energy s 240 80)) (setf gnorm (normg g)) (setf f (makefilter (sndsrate g))) (setf edge (convolve g f)) (setf edgenorm (scale (/ 1.0 (sndmaxsamp edge)) edge)) Original Message From: edgarrft@... To: Discussion of developing Nyquist plugins for Audacity <audacitynyquist@...> Sent: Sun, Jun 28, 2009 1:05 am Subject: Re: [Audacitynyquist] Is there a signed version of sndmaxsamp or absolute minimum function for sound? > Edgar wrote in a former mail: > You can "invert" a sound (make the negative samples become positive > and vice versa) by using Nyquist "scale" or "mult" with a factor > of "1". > Thank you but this doesn't work. See my response to Roger. Sorry, I was cleaning up my mailbox and hadn't realized that Roger already had answered before. > All my original audio signals s have absolute amplitudes > less than 1 so the energy waveform of s is always negative. I assume you're talking about "normalized float" samples (like used in Nyquist and Audacity) with maxPeak=1.0, minPeak=1.0, what leads to absolute peak values between min=0.0 and max=1.0, so lg(absPeak) is always negative. One of the first things I would try whould look like this: (scale 1 (slog (sabs sound))) > 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. Who is "they"? Can you tell what document? Is it one of the CCRMA/JOSIII papers? I wasn't able to find out by reading the mails from last week. In Nyquist you often have to "compute around the corner", so maybe we need to rearrange the formula, but therefore I would need the complete context of the original paper. Other ideas: In Nyquist there is e.g. "sndavg", which can compute the RMSpower of blocks of samples.  edgar  _______________________________________________ Audacitynyquist mailing list Audacitynyquist@... https://lists.sourceforge.net/lists/listinfo/audacitynyquist 
From: <mszlazak@ao...>  20090628 16:50:11

Hi Edgar. The paper I mentioned is here: http://figment.csee.usf.edu/~sfefilat/data/papers/WeBT5.3.pdf and it cites this paper a lot which gave me clues to what's going on: http://lilabs.com/info/pdf/journal/aspept02.pdf Thanks. Mark. Original Message From: edgarrft@... To: Discussion of developing Nyquist plugins for Audacity <audacitynyquist@...> Sent: Sun, Jun 28, 2009 1:05 am Subject: Re: [Audacitynyquist] Is there a signed version of sndmaxsamp or absolute minimum function for sound? > Edgar wrote in a former mail: > You can "invert" a sound (make the negative samples become positive > and vice versa) by using Nyquist "scale" or "mult" with a factor > of "1". > Thank you but this doesn't work. See my response to Roger. Sorry, I was cleaning up my mailbox and hadn't realized that Roger already had answered before. > All my original audio signals s have absolute amplitudes > less than 1 so the energy waveform of s is always negative. I assume you're talking about "normalized float" samples (like used in Nyquist and Audacity) with maxPeak=1.0, minPeak=1.0, what leads to absolute peak values between min=0.0 and max=1.0, so lg(absPeak) is always negative. One of the first things I would try whould look like this: (scale 1 (slog (sabs sound))) > 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. Who is "they"? Can you tell what document? Is it one of the CCRMA/JOSIII papers? I wasn't able to find out by reading the mails from last week. In Nyquist you often have to "compute around the corner", so maybe we need to rearrange the formula, but therefore I would need the complete context of the original paper. Other ideas: In Nyquist there is e.g. "sndavg", which can compute the RMSpower of blocks of samples.  edgar  _______________________________________________ Audacitynyquist mailing list Audacitynyquist@... https://lists.sourceforge.net/lists/listinfo/audacitynyquist 
From: <edgarrft@we...>  20090628 08:07:18

> Edgar wrote in a former mail: > You can "invert" a sound (make the negative samples become positive > and vice versa) by using Nyquist "scale" or "mult" with a factor > of "1". > Thank you but this doesn't work. See my response to Roger. Sorry, I was cleaning up my mailbox and hadn't realized that Roger already had answered before. > All my original audio signals s have absolute amplitudes > less than 1 so the energy waveform of s is always negative. I assume you're talking about "normalized float" samples (like used in Nyquist and Audacity) with maxPeak=1.0, minPeak=1.0, what leads to absolute peak values between min=0.0 and max=1.0, so lg(absPeak) is always negative. One of the first things I would try whould look like this: (scale 1 (slog (sabs sound))) > 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. Who is "they"? Can you tell what document? Is it one of the CCRMA/JOSIII papers? I wasn't able to find out by reading the mails from last week. In Nyquist you often have to "compute around the corner", so maybe we need to rearrange the formula, but therefore I would need the complete context of the original paper. Other ideas: In Nyquist there is e.g. "sndavg", which can compute the RMSpower of blocks of samples.  edgar 
From: <mszlazak@ao...>  20090628 04:04:55

Thank you but this doesn't work. See my response to Roger. Original Message From: edgarrft@... To: Discussion of developing Nyquist plugins for Audacity <audacitynyquist@...> Sent: Sat, Jun 27, 2009 9:02 pm Subject: Re: [Audacitynyquist] Is there a signed version of sndmaxsamp or absolute minimum function for sound? mszlazak@... schrieb: > SNDMAXSAMP 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. > You can "invert" a sound (make the negative samples become positive and vice versa) by using Nyquist "scale" or "mult" with a factor of "1".  edgar  _______________________________________________ Audacitynyquist mailing list Audacitynyquist@... https://lists.sourceforge.net/lists/listinfo/audacitynyquist 
From: <edgarrft@we...>  20090628 04:02:20

mszlazak@... schrieb: > SNDMAXSAMP 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. > You can "invert" a sound (make the negative samples become positive and vice versa) by using Nyquist "scale" or "mult" with a factor of "1".  edgar 
From: <mszlazak@ao...>  20090628 03:58:51

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. Mark. Original Message From: Roger Dannenberg <rbd@...> To: Discussion of developing Nyquist plugins for Audacity <audacitynyquist@...> Sent: Sat, Jun 27, 2009 7:59 pm Subject: Re: [Audacitynyquist] Is there a signed version of sndmaxsamp 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 sndmaxv to take only positive samples (or negative samples if you scale the input by 1) and then use sndmaxsamp 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 samplebysample, which is slow, but for such a simple calculation might be ok. Is should be substantially faster than real time). Roger mszlazak@... wrote: SNDMAXSAMP 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. A Good Credit Score is 700 or Above. See yours in just 2 easy steps!  _______________________________________________ Audacitynyquist mailing list Audacitynyquist@... https://lists.sourceforge.net/lists/listinfo/audacitynyquist  _______________________________________________ Audacitynyquist mailing list Audacitynyquist@... https://lists.sourceforge.net/lists/listinfo/audacitynyquist 
From: Roger Dannenberg <rbd@cs...>  20090628 02:59:29

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 sndmaxv to take only positive samples (or negative samples if you scale the input by 1) and then use sndmaxsamp 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 samplebysample, which is slow, but for such a simple calculation might be ok. Is should be substantially faster than real time). Roger mszlazak@... wrote: > SNDMAXSAMP 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. > >  > *A Good Credit Score is 700 or Above. See yours in just 2 easy steps! > <http://pr.atwola.com/promoclk/100126575x1222585065x1201462786/aol?redir=http://www.freecreditreport.com/pm/default.aspx?sc=668072%26hmpgID=62%26bcd=JunestepsfooterNO62>;* > >  > >  > >  > > _______________________________________________ > Audacitynyquist mailing list > Audacitynyquist@... > https://lists.sourceforge.net/lists/listinfo/audacitynyquist > 
From: David R. Sky <davidsky@sh...>  20090628 02:29:12

Hi Dave, How about 'fudging' such a function: (defun mysndmaxsamp (s) (* 1.0 (sndminsamp (mult 1.0 s))) ) ; end defun Assuming of course that sndminsamp actually exists. And this would only be for your special case where the signal is at or below the zero axis. David  David R. Sky http://www.shellworld.net/~davidsky/ On Sat, 27 Jun 2009, mszlazak@... wrote: > SNDMAXSAMP 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. > 
From: David R. Sky <davidsky@sh...>  20090628 01:09:43

Hi Dave, I have documented several such Nyquist in Audacity items on my website in this link: http://www.shellworld.net/~davidsky/nyhelp.htm I've written about the len argument in the ;version 2 section. It's possible that Edgar Franke might have also documented such pointers, his website is listed somewhere in the Nyquist section of my site, or in the Nyquist section of my links page: http://www.shellworld.net/~davidsky/links.htm#nyquist David  David R. Sky http://www.shellworld.net/~davidsky/ On Sat, 27 Jun 2009, davewstorer@... wrote: > > Unfortunately, using (sndtapv (sndnormalize s) ....) did not work. The results were the same as without the sndnormalize. > > Do you have any other suggestions? > > Also, Thanks, David Sky for the information on the len variable which is the number of samples in the selected sound. I did not know about that  did I miss it in the AudacityNyquist manual or is it not in the manual yet? > > Dave > > Roger Dannenberg wrote: > It looks to me like Audacity's version of SNDTAPV does not check the incoming sound for a scale factor, so in this case it will compute the wrong answer. I'm not sure why your fix works. In any case, the standalone nyquist shows a number of changes to the code, apparently to fix a bug. I think you can wrap the input modulation signal to SNDTAPV with SNDNORMALIZE, which just forces the multiplication of the scale factor, and that should work around the problem, which I bet is already fixed in the latest version Audacity under development. > > (What's with scale factors? Nyquist scales signals lazily by just attaching the scale factor to a data structure used to access the sound. Many times, scale factors can be "factored out" of the inner loops, which makes scaling, a very common operation with signals, free in many cases.) > > Roger > > >  > _______________________________________________ > Audacitynyquist mailing list > Audacitynyquist@... > https://lists.sourceforge.net/lists/listinfo/audacitynyquist > > 
From: <mszlazak@ao...>  20090628 01:02:20

SNDMAXSAMP 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. 
From: <davewstorer@ya...>  20090627 21:20:33

Unfortunately, using (sndtapv (sndnormalize s) ....) did not work. The results were the same as without the sndnormalize. Do you have any other suggestions? Also, Thanks, David Sky for the information on the len variable which is the number of samples in the selected sound. I did not know about that  did I miss it in the AudacityNyquist manual or is it not in the manual yet? Dave Roger Dannenberg wrote: It looks to me like Audacity's version of SNDTAPV does not check the incoming sound for a scale factor, so in this case it will compute the wrong answer. I'm not sure why your fix works. In any case, the standalone nyquist shows a number of changes to the code, apparently to fix a bug. I think you can wrap the input modulation signal to SNDTAPV with SNDNORMALIZE, which just forces the multiplication of the scale factor, and that should work around the problem, which I bet is already fixed in the latest version Audacity under development. (What's with scale factors? Nyquist scales signals lazily by just attaching the scale factor to a data structure used to access the sound. Many times, scale factors can be "factored out" of the inner loops, which makes scaling, a very common operation with signals, free in many cases.) Roger 
From: David R. Sky <davidsky@sh...>  20090627 17:25:34

Hi Paul, You might not have noticed yet that most if not all math functions which operate on sound have their own specific nonXLISP function. The simple ones substitute a word rather than a symbol: * mult / div + sum or sim etc. More complex functions have snd prepended to the function such as ^ is sndexpt I think etc. David  David R. Sky http://www.shellworld.net/~davidsky/ On Sat, 27 Jun 2009, paul beach wrote: > Is repeated mult the only way to raise s to a power? > > ; ( power sound exponent ) won't work > (sim ( 0.9) ; shift down even powers > (scale 1.8 > (mult ; sound^2 > (fmosc 51 (mult 250 (osc 70))) > (fmosc 51 (mult 250 (osc 70))) > ) > ) > ) > 
From: Roger Dannenberg <rbd@cs...>  20090627 17:22:54

You can use sexp and slog. Roger paul beach wrote: > Is repeated mult the only way to raise s to a power? > > ; ( power sound exponent ) won't work > (sim ( 0.9) ; shift down even powers > (scale 1.8 > (mult ; sound^2 > (fmosc 51 (mult 250 (osc 70))) > (fmosc 51 (mult 250 (osc 70))) > ) > ) > ) > 
From: paul beach <sniffyraven@fa...>  20090627 15:31:19

Is repeated mult the only way to raise s to a power? ; ( power sound exponent ) won't work (sim ( 0.9) ; shift down even powers (scale 1.8 (mult ; sound^2 (fmosc 51 (mult 250 (osc 70))) (fmosc 51 (mult 250 (osc 70))) ) ) )  paul beach sniffyraven@... 
From: Leland <leland@au...>  20090627 04:52:20

Steve wrote: > On Thu, 20090625 at 18:01 0500, Leland wrote: >> Stevethefiddle wrote: >>> Any progress on the LF+CR issue? >>> Hi Steve, I wasn't able to create any actual errors, but I took a stab at fixing it anyway. Pretty sure it'll be okay now. Just don't expect CRLFs to be preserved. Now, every file that's loaded will be converted to LF only. If this fixes your problem and you think the conversion is too "forceful" holler and I'll make it a little more intelligent. Get the new version from: http://audacity.homerow.net/index.php?dir=modules%2F&download=NyqBench09.177.zip Leland 
From: Roger Dannenberg <rbd@cs...>  20090627 03:00:19

It looks to me like Audacity's version of SNDTAPV does not check the incoming sound for a scale factor, so in this case it will compute the wrong answer. I'm not sure why your fix works. In any case, the standalone nyquist shows a number of changes to the code, apparently to fix a bug. I think you can wrap the input modulation signal to SNDTAPV with SNDNORMALIZE, which just forces the multiplication of the scale factor, and that should work around the problem, which I bet is already fixed in the latest version Audacity under development. (What's with scale factors? Nyquist scales signals lazily by just attaching the scale factor to a data structure used to access the sound. Many times, scale factors can be "factored out" of the inner loops, which makes scaling, a very common operation with signals, free in many cases.) Roger Dave Storer wrote: > The problem seems to be with the Audacity implementation of Nyquist. Below is my plugin which illustrates the problem. For testing it in Audacity, copy the code below to a file in the Audacity 1.3.7 plugins directory called Storerphaser.ny. > In audacity, create a stereo track 20 seconds long with a 250Hz tone. > Split the left and right channels, select the left channel, and run the plugin below. By renaming it with a .lsp extension instead of .ny, and commenting or uncommenting a few lines as noted, you can run the same code in standalone Nyquist. The standalone version works, the Audacity one does not. To make the Audacity version run correctly, set the fudgefactor, called Scale, to 48 and rerun it. Now it matches closely the standalone version's output. > > I don't have access to a development system, so I can't try it in 1.3.8. > > Dave > > 
From: David R. Sky <davidsky@sh...>  20090626 21:16:01

Hi Dave, I don't have any comment specifically regarding your question. However, you may want to know that the 'len' argument in Audacity Nyquist is the number of samples within :Audacity's selection. So to calculate length in seconds: (setf dur (/ len *soundsrate*)) so you don't need that duration edit field. This was established in Audacity Nyquist ;version 2, so the code will only work in ;version 2 or later Nyquist plugs. Good luck David  David R. Sky http://www.shellworld.net/~davidsky/ On Fri, 26 Jun 2009, Dave Storer wrote: > > The problem seems to be with the Audacity implementation of Nyquist. Below is my plugin which illustrates the problem. For testing it in Audacity, copy the code below to a file in the Audacity 1.3.7 plugins directory called Storerphaser.ny. > In audacity, create a stereo track 20 seconds long with a 250Hz tone. > Split the left and right channels, select the left channel, and run the plugin below. By renaming it with a .lsp extension instead of .ny, and commenting or uncommenting a few lines as noted, you can run the same code in standalone Nyquist. The standalone version works, the Audacity one does not. To make the Audacity version run correctly, set the fudgefactor, called Scale, to 48 and rerun it. Now it matches closely the standalone version's output. > > I don't have access to a development system, so I can't try it in 1.3.8. > > Dave > > Here's the plugin code: > > ;;======================================= > ;nyquist plugin > ;version 3 > ;type process > ;categories "GeneratorPlugin" > ;name "Test Phase Shifter" > ;action "Testing Phaser" > ;info "Test harness for tapv" > > ;control Frequency "Signal Frequency" real "Hz" 1000 0 2000 > ;control Lfofreq "LFO Frequency" real "Hz" 1 0.01 20 > ;control MinPhase "Minimum Phase" real "Degrees" 0.0 0.0 360.0 > ;control Maxphase "Maximum Phase" real "Degrees" 0.0 0.0 360.0 > ;control Scale "Scale LFO" real "fraction" 1.0 0.0 100.0 > ;control ToneLength "Tone Length" real "Seconds" 30.0 0.0 100.0 > > ;;; > ;;; For Standalone Nyquist, uncomment the following six lines. > ;;; > ;(setf Frequency 250.0) > ;(setf Lfofreq 0.25) > ;(setf MinPhase 45.0) > ;(setf Maxphase 135.0) > ;(setf Scale 1.0) > ;(setf ToneLength 20.0) > > (defun myshifter (s) > (setf Maxphase (float Maxphase)) > (setf Minphase (float Minphase)) > (setf Pd (recip (float Frequency))) > (setf PdxPd (/ Pd 360.0)) > (setf Depth (/ ( Maxphase Minphase) 2.0 )) > (setf DepthxPd (* Depth PdxPd)) > (setf Fixed (/ (+ Maxphase Minphase) 2.0 )) > (setf FixedxPd (* Fixed PdxPd)) > > (sndtapv s FixedxPd (mult scale DepthxPd (lfo Lfofreq ToneLength *table* 270)) Pd) > ) > > ;;; > ;;; For StandAlone Nyquist, uncomment the following line and comment out the line marked ;; Audacitynyquist > > ;(play (vector (stretch ToneLength (hzosc Frequency)) (myshifter (stretch ToneLength (hzosc Frequency))))) > > (myshifter s) ;; Audacitynyquist > ;;======================================= > >>> Roger Dannenberg wrote: > I think your calculations are right and it looks like tapv is working as > predicted. Here's what I tried: > > (defun test () > (vector (hzosc 1000.0) > (shifter (hzosc 1000.0)))) > > (defun shifter (s) > (sndtapv s (* 0.001 (/ 60.0 360.0)) (mult (* 0.001 (/ 30.0 360.0)) > (lfo 1.0)) 0.001)) > > (play (test)) > > Viewing this in Audacity, I can see a small phase shift with maximum > shift 1/4 of the way through and minimum at 3/4 as you would expect > since the lfo rises to a peak of 1 after 1/4 cycle and to 1 at 3/4 cycle. > Roger > > > > >  > _______________________________________________ > Audacitynyquist mailing list > Audacitynyquist@... > https://lists.sourceforge.net/lists/listinfo/audacitynyquist > > 
From: Dave Storer <davewstorer@ya...>  20090626 20:48:32

The problem seems to be with the Audacity implementation of Nyquist. Below is my plugin which illustrates the problem. For testing it in Audacity, copy the code below to a file in the Audacity 1.3.7 plugins directory called Storerphaser.ny. In audacity, create a stereo track 20 seconds long with a 250Hz tone. Split the left and right channels, select the left channel, and run the plugin below. By renaming it with a .lsp extension instead of .ny, and commenting or uncommenting a few lines as noted, you can run the same code in standalone Nyquist. The standalone version works, the Audacity one does not. To make the Audacity version run correctly, set the fudgefactor, called Scale, to 48 and rerun it. Now it matches closely the standalone version's output. I don't have access to a development system, so I can't try it in 1.3.8. Dave Here's the plugin code: ;;======================================= ;nyquist plugin ;version 3 ;type process ;categories "GeneratorPlugin" ;name "Test Phase Shifter" ;action "Testing Phaser" ;info "Test harness for tapv" ;control Frequency "Signal Frequency" real "Hz" 1000 0 2000 ;control Lfofreq "LFO Frequency" real "Hz" 1 0.01 20 ;control MinPhase "Minimum Phase" real "Degrees" 0.0 0.0 360.0 ;control Maxphase "Maximum Phase" real "Degrees" 0.0 0.0 360.0 ;control Scale "Scale LFO" real "fraction" 1.0 0.0 100.0 ;control ToneLength "Tone Length" real "Seconds" 30.0 0.0 100.0 ;;; ;;; For Standalone Nyquist, uncomment the following six lines. ;;; ;(setf Frequency 250.0) ;(setf Lfofreq 0.25) ;(setf MinPhase 45.0) ;(setf Maxphase 135.0) ;(setf Scale 1.0) ;(setf ToneLength 20.0) (defun myshifter (s) (setf Maxphase (float Maxphase)) (setf Minphase (float Minphase)) (setf Pd (recip (float Frequency))) (setf PdxPd (/ Pd 360.0)) (setf Depth (/ ( Maxphase Minphase) 2.0 )) (setf DepthxPd (* Depth PdxPd)) (setf Fixed (/ (+ Maxphase Minphase) 2.0 )) (setf FixedxPd (* Fixed PdxPd)) (sndtapv s FixedxPd (mult scale DepthxPd (lfo Lfofreq ToneLength *table* 270)) Pd) ) ;;; ;;; For StandAlone Nyquist, uncomment the following line and comment out the line marked ;; Audacitynyquist ;(play (vector (stretch ToneLength (hzosc Frequency)) (myshifter (stretch ToneLength (hzosc Frequency))))) (myshifter s) ;; Audacitynyquist ;;======================================= >> Roger Dannenberg wrote: I think your calculations are right and it looks like tapv is working as predicted. Here's what I tried: (defun test () (vector (hzosc 1000.0) (shifter (hzosc 1000.0)))) (defun shifter (s) (sndtapv s (* 0.001 (/ 60.0 360.0)) (mult (* 0.001 (/ 30.0 360.0)) (lfo 1.0)) 0.001)) (play (test)) Viewing this in Audacity, I can see a small phase shift with maximum shift 1/4 of the way through and minimum at 3/4 as you would expect since the lfo rises to a peak of 1 after 1/4 cycle and to 1 at 3/4 cycle. Roger 
From: Steve <stevethefiddle@gm...>  20090626 13:14:47

On Thu, 20090625 at 18:01 0500, Leland wrote: > Stevethefiddle wrote: > > Any progress on the LF+CR issue? > > > Hi Steve, > > I can't seem to reproduce it. I've tried it under OSX and Ubuntu and the effect (tremelo.ny) runs just fine. I convert the effect to CRLF before loading: > > 00000000 3B 6E 79 71 75 69 73 74 20 70 6C 75 67 2D 69 6E ;nyquist plugin > 00000010 0D 0A 3B 76 65 72 73 69 6F 6E 20 33 0D 0A 3B 74 MJ;version 3MJ;t > 00000020 79 70 65 20 70 72 6F 63 65 73 73 0D 0A 3B 63 61 ype processMJ;ca > 00000030 74 65 67 6F 72 69 65 73 20 22 68 74 74 70 3A 2F tegories "http:/ > 00000040 2F 6C 76 32 70 6C 75 67 2E 69 6E 2F 6E 73 2F 6C /lv2plug.in/ns/l > 00000050 76 32 63 6F 72 65 23 4D 6F 64 75 6C 61 74 6F 72 v2core#Modulator > 00000060 50 6C 75 67 69 6E 22 0D 0A 3B 6E 61 6D 65 20 22 Plugin"MJ;name " > 00000070 54 72 65 6D 6F 6C 6F 2E 2E 2E 22 0D 0A 3B 61 63 Tremolo..."MJ;ac > 00000080 74 69 6F 6E 20 22 41 70 70 6C 79 69 6E 67 20 54 tion "Applying T > 00000090 72 65 6D 6F 6C 6F 2E 2E 2E 22 0D 0A 3B 69 6E 66 remolo..."MJ;inf > > If you still have one that causes problems, gzip it and send it to me. Maybe I'm just not hitting the right combination. > > Leland > >  Example attached steve 