[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [sc-dev] Event's sustain
- To: sc-dev@xxxxxxxxxxxxxxxx
- Subject: Re: [sc-dev] Event's sustain
- From: yota morimoto <yotamorimoto@xxxxxxxxx>
- Date: Sun, 30 Nov 2014 12:40:31 +0100
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to; bh=awPZyi9Z4U+SiXtRIT0k+FG0RlGHn/hLfZW/cCDIAsQ=; b=HNFB7nBbWpQ1an4X156+GlYiDZWJL/ZKhINhqtYo4EjO4nJMSVKmPxXixoK4Wlq04x bFpWVA0pidb0C2yKuzJss/fhkXOWFqWF95ff5acpV/ypWjcBaApOdlNDJ7VvI5mB7r7D URwSHhRMIIsIPQxUfsHLU7Rvhd1yemeqJHebZELtfnEg5wbRU2Zv/7OGMSrcs9P0AWxr 7jYqiNpo+f/yukU7TiB0W4K6QTcX2dcdgnY3lUdWPe1JknjEYpDgMXENYB56XfaG58LY wdgZ5gbObThA2M/I1j98TS4n9EDeDDxkibwuCnK9y4A8Saz+Bu0Ojgyy/mK9KdM6fRiT RXSw==
- In-reply-to: <87wq6djrxh.wl-jamshark70@qq.com>
- List-id: SuperCollider developers mailing list <sc-devel.create.ucsb.edu>
- References: <84734924-F492-433D-84E7-C9088ADB6FFA@gmail.com> <87wq6djrxh.wl-jamshark70@qq.com>
- Reply-to: sc-dev@xxxxxxxxxxxxxxxx
- Sender: owner-sc-dev@xxxxxxxxxxxxxxxx
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/