Ask Your Question
0

tidal communicates \dur param from pattern to synthdef?

asked 2016-11-02 11:08:41 -0500

Chanof gravatar image

updated 2016-12-16 02:22:22 -0500

lennart gravatar image

Hi everyone, tidal communicates \dur param from pattern to synthdef? Can i end a synth at the end of the step? Like \dur parameter for sc patterns? Thanks a lot

edit retag flag offensive close merge delete

3 answers

Sort by ยป oldest newest most voted
0

answered 2016-11-02 11:47:52 -0500

this post is marked as community wiki

This post is a wiki. Anyone with karma >1 is welcome to improve it.

Tidal communicates the delta, and if you set it, thesustainor legato, parameter, which is what is the same name in standard SuperCollider patterns. By default, every synth ends at the end of every step (legato = 1). If you set legato to > 1 you get overlap, if it is < 1, you get gaps.

The calculation looks like this:

sustain = ~sustain ?? { if(~legato.notNil) { ~delta * ~legato } { unitDuration } };

In other words, normally, the unitDuration is used as a sustain parameter for each event, and in the case of synths (unlike samples), it uses a legato of 1 (one sound ends when another one starts). If you supply # legato in tidal, you can control the relative overlap between subsequent synths. If you supply # sustain in tidal, you can control sustain independently of the duration (delta) between subsequent synth starting moments.

edit flag offensive delete link more
0

answered 2016-11-02 12:47:32 -0500

bgold gravatar image

Also, if you're looking for ideas on how to write the SynthDef itself, try looking at the tutorial-synths.scd in the synths folder. It has some examples of one way to incorporate the sustain parameter.

edit flag offensive delete link more
0

answered 2016-11-02 13:53:21 -0500

Chanof gravatar image

updated 2016-11-02 16:59:23 -0500

Hi, i tried the tutorial synth, and also experiments with sustain but i don't find something that end the note when one another come's out, like a monophonic synth, To controll something like this overall:

EnvGen.ar(Env.new([0,1,1,0],[0,dur,0]),doneAction:2)

How can i get the ms between two step?

I don't understand how to get the delta, i think this one must be the difference between two step: the duration of one step

edit flag offensive delete link more

Comments

There is a `cut` parameter in Tidal that will force another note to end when a new one starts, maybe that's what you're looking for?

bgold gravatar imagebgold ( 2016-11-02 19:35:39 -0500 )edit

It can create glitch clicks between notes, if i can get the duration ms of each step i can end the synth smoothly: in a gate that do not create glitch clicks.

Chanof gravatar imageChanof ( 2016-11-03 12:00:47 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2016-11-02 11:08:41 -0500

Seen: 47 times

Last updated: Nov 02 '16