Skip to content
Voro
  1. Audio
  2. Control

Timeline Derive

Timeline Derive builds a second clock from a first. The child runs at a fixed ratio of the parent’s tempo and can start a set number of beats away. It can also count in its own time signature. Stack several on one parent and you get polytempo layers that stay locked to the same transport.

Wire the master clock into timeline, then set Temporatio and Beatoffset. Wire out into the operators that should live on the derived clock. A ratio of 1.5 makes three beats for every two of the parent. Turn Ownmeter on to give the child its own time signature, such as 7/8 over a 4/4 master.

  • Input 0: timeline the parent clock. Required.
  • Output 0: out the derived clock.
  • Temporatio: child tempo as a multiple of the parent’s, 0.01 to 100. Default 1.
  • Beatoffset: beats added to the child position. Can be negative.
  • Ownmeter: use the meter below instead of the parent’s.
  • Timesignum, Timesigden: the child’s time signature when Ownmeter is on.
  • Stepsperbar: the child’s steps per bar when Ownmeter is on.
  • Child beat = Temporatio × parent beat + Beatoffset. Child tempo = Temporatio × parent tempo.
  • The loop region is scaled and offset the same way, so a looping parent gives a looping child.
  • Seeks and jumps in the parent carry straight through to the child.
  • Play state, seconds, and groove settings pass through unchanged.
  • The child stays in step with the parent by construction. Changing Temporatio moves the child’s position immediately.

Inputs

  • timeline row required
    timeline_state_f32_v1

Outputs

  • out row
    timeline_state_f32_v1
Temporatio (Temporatio) Float op('timeline_derive').par.Temporatio
Default:
1
Range:
0.01 to 100
Beatoffset (Beatoffset) Float op('timeline_derive').par.Beatoffset
Default:
0
Range:
-1000000 to 1000000
Ownmeter (Ownmeter) Toggle op('timeline_derive').par.Ownmeter
Default:
Off
Options:
Off, On
Timesignum (Timesignum) Int op('timeline_derive').par.Timesignum
Default:
4
Range:
1 to 32
Timesigden (Timesigden) Int op('timeline_derive').par.Timesigden
Default:
4
Range:
1 to 64
Stepsperbar (Stepsperbar) Int op('timeline_derive').par.Stepsperbar
Default:
16
Range:
1 to 256