🔥 Lifetime deal! Get Control Surface Studio for Just £63 👉 Click Here To Get It
Time left... mailtimers.com
⚠️ Lifetime licenses are ending soon, get yours before they're gone ⚠️
Your shopping cart is empty.

Song Position Control / Scrub The Arrangement

Submitted by JohnC on Sat, 11/27/2021 - 18:17
Forum Admin
Control Surface Studio User

We have been asked this a few times via email (and on the forum),
Thought I would start a thread for it as it's now possible with Reactions v2.
So the question is, how can I scrub through the arrangement view / control the arrangement playhead with a knob style control.
You can use 'song > set current song time' Then select 'get value from ranges' for controlling it with a range style control i.e. a knob.

Scrubbing the arrangement playhead position

Import and and use the attached script: scrub_the_arrangement_playhead.json (contains 1 reaction).
In the reaction, make sure to select the correct listener i.e. knob 1
Then in the action, for 'current input value', make sure you select the listener's latest velocity value (i.e. knob 1's latest velocity value).
If you want to extend how far/ the range of the playhead, increase the 'output max' number.

scrub settings

Topic Category: 

1 Responses


Forum Admin

As has been pointed out to me (via an email), the above script isn't really scrubbing as it doesn't start from the current song time. So attached is a version 2 which does start from the current song time.
scrubbing arrangement v2

In this version the Reaction contains 2 Action Blocks. 
You will need to change the condition in each action block so it uses your midi control for:
knob 2's latest velocity value (midi controller > current velocity value > ...)
knob 2's previous velocity value (midi controller > previous velocity value > ...) 

Remember to do this for both Action blocks AND that its the correct knob on your controller template.
Both actions are set to increase/decrease the scrub position by 2.0 (which is half a bar if I'm thinking correcctly). You can change this amount by simply changing these values in each action. 

On a separate note, you can use this reaction to easily create knob based functionality where turning left performs one function, and turning right performs another - they can be related (as in this, right = increasing the 'scub by' value by 2.0, left = decreases it by 2.0