[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sc-dev] Event's sustain



Thanks James.

Then ~legato is a confusing term here. It is not the musical legato at least.
I'd understand ~legato < 1 as the degree of non-legato-ness expressed independently of tempo.

But the meaning in supercollider can be completely the opposite.
So I need to accept that ~legato = 0.5 can both be staccato and legato depending on tempi.

Indeed, ~sustain is low-level but ~legato is more high-level.

y.

On Nov 30, 2014, at 4:19 AM, James Harkins <jamshark70@xxxxxx> wrote:

> At Sat, 29 Nov 2014 15:02:23 +0100,
> yota morimoto wrote:
>> When using event from Pbind, sustain is calculated as:
>> sustain: #{ ~dur * ~legato * ~stretch  };
>> 
>> which makes legato inconsistent between different tempi.
>> 
>> When TempoClock's tempo is 1,
>> ~legato = 0.5 is staccato,
>> 
>> but in other cases like tempo is 3,
>> ~legato = 0.5 isn't staccato anymore; it overlaps to the next event
>> 
>> To me it is a problem so
>> what I did in Event, to fix this in a crude way is;
>> sustain: #{ ~dur * ~legato * ~stretch * TempoClock.default.tempo.reciprocal }
> 
> Along with Daniel, I'll have to advise against doing this.
> 
> ~sustain defines the time at which the event will send a release message to the node: the release will be sent at the current time + ~sustain. (Time is measured in beats.) It's going to be a mess if ~sustain is calculated differently at different tempi. It's a fairly low-level parameter, whose meaning needs to be clear, simple and consistent.
> 
> (Note also that you might not be playing on the default TempoClock. If you need to refer to a clock, use thisThread.clock.)
> 
> The key point from Daniel's reply is that the default SynthDef has a fairly long release (300 ms). This is unlikely to feel like crisp articulation at any tempo. If you need a staccato feel, then the better approach is to specify the sustain time for the length of note that you want AND provide a SynthDef that releases quickly. (Reductio ad absurdum: I could write a SynthDef for a pad, with a slow attack and release, and then complain that I can't get staccato from it. Blaming it on the default event prototype would be a nonsensical diagnosis.)
> 
> hjh
> 
> _______________________________________________
> sc-dev mailing list
> 
> info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
> archive: https://listarc.bham.ac.uk/marchives/sc-dev/
> search: https://listarc.bham.ac.uk/lists/sc-dev/search/


_______________________________________________
sc-dev mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: https://listarc.bham.ac.uk/marchives/sc-dev/
search: https://listarc.bham.ac.uk/lists/sc-dev/search/