[PD-dev] oscillator lib
Andy Farnell
padawan12 at obiwannabe.co.uk
Sat Dec 22 02:07:21 CET 2007
Two quick thoughts;
Watch out for clashes with square~ (as in x^2) - I thinkk I've seen patches
with that trivial abstraction, but it might have been [squared~]
Maybe truncate trianglebl~ and varitriangle~ to tribl~ varitri~ (good to keep
names less than 8 chars)
On Fri, 21 Dec 2007 16:36:03 -0800
Hans-Christoph Steiner <hans at eds.org> wrote:
>
> 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 <hans at eds.org> 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 at iem.at
> >> http://lists.puredata.info/listinfo/pd-dev
> >
> >
> > --
> > Use the source
> >
> > _______________________________________________
> > PD-dev mailing list
> > PD-dev at 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
>
>
--
Use the source
More information about the Pd-dev
mailing list