Skip to content
Voro
  1. Audio
  2. Other

Automation Clip

Automation Clip draws a curve out of keyframes and plays it back in step with the timeline. The result is a single control lane, sample-accurate, ready to move any parameter that accepts a control signal. Use one clip per lane and stack as many as you need.

Wire a timeline clock into timeline, write the keys in Doc, and send out to the control input you want to automate. With nothing wired, a clip in the seconds domain runs on its own from the engine clock.

domain beat
length 8
loop 1
key 0 0.0 smooth
key 4 1.0 expo shape 3
key 8 0.0
  • Input 0: timeline timeline clock. Optional.
  • Output 0: out control lane.
  • Enable: turn the curve on or off. When off, out sits at Basevalue.
  • Basevalue: the value while the clip is disabled or has no keys.
  • Gain: multiplies the curve. Default 1.
  • Offsetout: added after Gain.
  • Doc: the curve text. # starts a comment. Changes apply live.
  • Output is curve * Gain + Offsetout.
  • Doc directives: domain beat|seconds, offset <f> (clip start on the timeline), length <f> (loop length), loop 0|1, rate <f> (time multiplier, default 1), seed <u>, and key lines.
  • key <pos> <value> [hold|linear|smooth|expo|bezier] [shape <f>] [spread <f>] [out <dx> <dy>] [in <dx> <dy>]. The interpolation name describes the segment leaving that key. shape is the exponent for expo, default 2.
  • bezier segments use the out handle of one key and the in handle of the next. A key without handles gets a neutral handle, which draws a straight line.
  • spread adds jitter to a key, different on every loop pass. The same seed always gives the same result, so two renders match exactly. Spread 0 locks the key.
  • Up to 64 keys per clip.
  • A beat-domain clip needs a wired timeline. Unwired, it holds the value at position 0.

Inputs

  • timeline row
    timeline_state_f32_v1

Outputs

  • out row
    control_f32_v1
Enable (Enable) Toggle op('automation_clip').par.Enable
Default:
On
Options:
Off, On
Basevalue (Basevalue) Float op('automation_clip').par.Basevalue
Default:
0
Range:
-1000000 to 1000000
Gain (Gain) Float op('automation_clip').par.Gain
Default:
1
Range:
-1000000 to 1000000
Offsetout (Offsetout) Float op('automation_clip').par.Offsetout
Default:
0
Range:
-1000000 to 1000000
Doc (Doc) Str op('automation_clip').par.Doc
Default:
"" (Empty String)