link-time module reference
link-time module reference
Musical time with Ableton Link.
index
- Attack-Decay enveloper from bang!.
- Create a clock source.
- Decay envelope from bang!.
- Emit events regularly.
- Low-frequency oscillator.
- Get phase.
- Get normalized phase.
- Integrate impulses using easing
- Count ticks.
details
- Attack-Decay enveloper from bang!.
(ad [clock] attack decay trigger)Ramp from
0to1and back ontrigger.clockshould be alink/clock~stream. This argument can be omitted and the stream be passed as a dynamic definition in*clock*instead.attackanddecayshould be num~ streams.triggershould be a bang! stream.
- Create a clock source.
(clock [synced] [bpm] [fps])Creates a new
link/clock~stream.The clock event stream is an IO that triggers other operators at a fixed frame rate.
syncedhas to be a bool~ constant and defaults tofalse.bpmshould be a num~ stream and defaults to120.fpshas to be a num= constant and defaults to60if omitted.
- Decay envelope from bang!.
(decay [clock] dur trigger)Ramp from
1to0indurbeats ontrigger.clockshould be alink/clock~stream. This argument can be omitted and the stream be passed as a dynamic definition in*clock*instead.durshould be a num~ stream.triggershould be a bang! stream.
- Emit events regularly.
(every [clock] period [phase] [evt])Emits
evtas an event once everyperiodbeats.clockshould be alink/clock~stream. This argument can be omitted and the stream be passed as a dynamic definition in*clock*instead.periodshould be a num~ stream.phaseshould be a num~ stream and defaults to 0.evtcan be a value of any type. It defaults tobang.- the return type will be an event stream with the same type as
evt.
- Low-frequency oscillator.
(lfo [clock] period [phase] [wave])Oscillates betwen
0and1once everyperiodbeats.clockshould be alink/clock~stream. This argument can be omitted and the stream be passed as a dynamic definition in*clock*instead.freqshould be a num~ stream.phaseshould be a num~ stream and defaults to 0.waveselects the wave shape from one of the following:'sin'(the default)'saw''tri'
- Get phase.
(tick [clock] period [phase])Ramps from
0toperiodonce everyperiodbeats.clockshould be alink/clock~stream. This argument can be omitted and the stream be passed as a dynamic definition in*clock*instead.periodshould be a num~ stream.phaseshould be a num~ stream and defaults to 0.
- Get normalized phase.
(ramp [clock] period [phase])Ramps from
0to1once everyperiodbeats.clockshould be atime/clock!stream. This argument can be omitted and the stream be passed as a dynamic definition in*clock*instead.periodshould be a num~ stream.phaseshould be a num~ stream and defaults to 0.
- Integrate impulses using easing
(spring [clock] evt0 [evt1…])Every arriving
evttriggers an impulse that is integrated asclockticks. Returns a num~ stream that starts at 0.clockshould be alink/clock~stream. This argument can be omitted and the stream be passed as a dynamic definition in*clock*instead.evt!are !-streams of structs. The following struct keys can be specified:amp: amplitude of the impulsedur: duration of the impulse (beats)
- Count ticks.
(tick [clock] period [phase])Counts upwards by one every
periodbeats.clockshould be alink/clock~stream. This argument can be omitted and the stream be passed as a dynamic definition in*clock*instead.periodshould be a num~ stream and defaults to 1.phaseshould be a num~ stream and defaults to 0.- returns a
num~stream that increases by 1 everyperiod.