[Sc-devel] Embedding Specs in SynthDefs

felix felix at crucial-systems.com
Wed Jul 25 13:02:41 PDT 2007


On 7/25/07, James Harkins <jamshark70 at gmail.com> wrote:
> One thing is that the InstrSynthDef's name is not the same as the
> Instr name. That wouldn't be too hard to solve using a different
> method.

instr.asSynthDef could by default keep the name the same as the Instr
and
instr.asSynthDef(autoBuildName: true)
would do it as it does now (which is needed to ensure a unique synth
def name although the objects passed in as arguments may cause it to
generate different synth defs)


> There may be things in Instr that you don't need (now), but there are
> things Instr does that are generally useful

to clarify: Instr does not do these things at all.

Instr is very simple

> (which SynthDef would not
> be able to do without major reworking) that you might not discover
> that you want to do until after you spend time putting specs into
> SynthDef. Fixed (constant) arguments (different from ir controls),
> especially the ability to pass in envelopes at the time of synthdef
> building, are tremendously useful and thoroughly underused (mainly
> because the current documentation is so difficult).

hmm...   documentation doesn't seem "difficult" to me.  specific feed
back would be helpful, thanks.

it keeps to the basics of writing Instrs

there is no example of using it .asSynthDef
that is true

>It's a heavyweight tool,

no really: its not heavyweight at all.

neither is InstrSynthDef

its not more heavyweight than SynthDef itself.  not in the least.

it just allows objects to be used as arguments instead of just floats.

the heavyness is all in the objects.

you COULD say that AbstractPlayer is heavy and has lots of things that
assume a certain way of working. that is true, and that's the
intention of the player classes.



> fact
> that seemingly no one but me knows how to use it lightly is a
> documentation problem.

also simply because its in crucial and is assumed to be part of some
monolithic system.

> As long as it doesn't turn into a crippled Instr-lite, I'm OK with it.
> I'll also put it on my to-do list to write a basic document to include
> in the distro to explain how to use Instr like SynthDef

probably the Instr.ar examples are useless and it should just go
directly to explaining how to use it as a synth def builder.

the assumption in the docs is that if you would use Patch


-cx


More information about the Sc-devel mailing list