I think we can safely eliminate the "osc" from the names since there won't be a lot of overlap. Also, since everything is a float, I think it makes sense to standardize on 0-to-1 range. That's the standard range for amplitude, OpenGL colors, and the mapping library, and I think it makes sense to use it here.
For example, the pulse width could be 0.000001 to 1, with 1 being DC. For parameters that are an angle, then radians makes the most sense, and Hertz for frequency, IMHO. Here's my sketch for the names: > square~ (50% duty cycle standard square) > squarebl~ (bandlimited square type) > triangle~ (standard triangle) > trianglebl~ (bandlimited triangle) > pwm~ (pulse width 0.0001 to 1 duty) > sawtooth~ (sawtooth - just a 0 centered phasor) > sawtoothbl~ (bandlimited saw) > varitriangle~ (vari-slope triangle, from sawtooth to inverse > sawtooth) > circle~ (circle - square root of cosine) > pulse~ (sin(x)/x pulse with variable width) Are there existing Pd implementations of all these? I think there could be an 'oscillators' lib made of all Pd patches. Then someone could make a 'simd_oscillators' with the exact same names and interface, for optimization. .hc On Dec 21, 2007, at 3:20 PM, Andy Farnell wrote: > > > Yes! Must have implemented them all a hundered times over > by now and getting rather fed up of it. > > > I suggest the names > > sqrosc~ (50% duty cycle standard square) > sqrblosc~ (bandlimited square type) > triosc~ (standard triangle) > triblosc~ (bandlimited triangle) > pwmosc~ (pulse width 0.0001 to 99.9999 duty) > sawosc~ (sawtooth - just a 0 centered phasor) > sawblosc~ (bandlimited saw) > vstosc~ (vari-slope triangle, from sawtooth to inverse sawtooth) > circosc~ (circle - square root of cosine) > pulseosc~ (sin(x)/x pulse with variable width) > > > > > > On Fri, 21 Dec 2007 12:43:17 -0800 > Hans-Christoph Steiner <[EMAIL PROTECTED]> wrote: > >> >> There are a number of standard oscillators used in synthesis, I think >> it would be very useful to have a standard library of them. I think >> at this point there are already implementations of all of the >> oscillators that I can think of, what needs to be done now is to >> define a standard interface and naming scheme, and collect them into >> a standard library. >> >> One question I have is whether they should all be bandwidth-limited, >> based on the current sample rate, or whether this library should have >> both versions. >> >> Anyone interested in working on this? I think this would also be a >> building block for the standard synth lib that Ed is proposing. >> >> .hc >> >> --------------------------------------------------------------------- >> --- >> ---- >> >> ¡El pueblo unido jamás será vencido! >> >> >> >> _______________________________________________ >> PD-dev mailing list >> PD-dev@iem.at >> http://lists.puredata.info/listinfo/pd-dev > > > -- > Use the source > > _______________________________________________ > PD-dev mailing list > PD-dev@iem.at > http://lists.puredata.info/listinfo/pd-dev ------------------------------------------------------------------------ ---- As we enjoy great advantages from inventions of others, we should be glad of an opportunity to serve others by any invention of ours; and this we should do freely and generously. - Benjamin Franklin _______________________________________________ PD-dev mailing list PD-dev@iem.at http://lists.puredata.info/listinfo/pd-dev