Hello!
I have a question about the display behavior of buttons or pads. (on/off)
I tried creating pads with these:
(browser_window 'remixes' && show_splitpanel 'sideview')
(browser_window 'automix' && show_splitpanel 'sideview')
If the remixes tab is active, then my remixes pad will be on, and the automix one will be off as expected.
Unfortunately, the action is not exactly what I wanted so I did this instead:
(browser_window 'remixes' && show_splitpanel 'sideview') ? show_splitpanel 'sideview' off : (show_splitpanel 'sideview' on & browser_window 'remixes' on)
(browser_window 'automix' && show_splitpanel 'sideview') ? show_splitpanel 'sideview' off : (show_splitpanel 'sideview' on & browser_window 'automix' on)
The action is now fine but the pad status is now reversed?? I don't undersant why and I'm running in circles trying to fix it.
Thanks in advance for your help!
I have a question about the display behavior of buttons or pads. (on/off)
I tried creating pads with these:
(browser_window 'remixes' && show_splitpanel 'sideview')
(browser_window 'automix' && show_splitpanel 'sideview')
If the remixes tab is active, then my remixes pad will be on, and the automix one will be off as expected.
Unfortunately, the action is not exactly what I wanted so I did this instead:
(browser_window 'remixes' && show_splitpanel 'sideview') ? show_splitpanel 'sideview' off : (show_splitpanel 'sideview' on & browser_window 'remixes' on)
(browser_window 'automix' && show_splitpanel 'sideview') ? show_splitpanel 'sideview' off : (show_splitpanel 'sideview' on & browser_window 'automix' on)
The action is now fine but the pad status is now reversed?? I don't undersant why and I'm running in circles trying to fix it.
Thanks in advance for your help!
Posted Mon 28 Jul 25 @ 12:06 pm
locoDog wrote :
deck 'side' will work, best practice depends on case.
Thanks!
Posted Mon 28 Jul 25 @ 12:07 pm
(browser_window 'remixes' && show_splitpanel 'sideview') ? on & show_splitpanel 'sideview' off : off & (show_splitpanel 'sideview' on & browser_window 'remixes' on)
common mistake when first dealing with button led logic, the reply to the query to turn the thing off should first tell the led to be on [because it is on], LED queries happen constantly, unlike button press triggered queries that only happen when button pressed.
Posted Mon 28 Jul 25 @ 12:34 pm
@Yan Duval:
A lot of times it's easier (and preferable) to "unlink" the led query (when the led is on) from the action of the pad.
Take a look at these examples:
A lot of times it's easier (and preferable) to "unlink" the led query (when the led is on) from the action of the pad.
Take a look at these examples:
<pad1 name="`get_effect_name 1`" color="effect_active 1 on ? var_equal 'FX1MomPush' 0 ? color 'green' : color 'blue' : color 'blue'" query="var_equal 'FX1MomPush' 0 ? effect_active 1" autodim="false">effect_active 1</pad1>
<pad5 name="^ MP" color="effect_active 1 on ? var_equal 'FX1MomPush' 1 ? color 'green' : color 'blue' : color 'blue'" query="var_equal 'FX1MomPush' 1 ? effect_active 1" autodim="false">effect_active 1 on while_pressed & set 'FX1MomPush' 1 while_pressed</pad5>
Posted Mon 28 Jul 25 @ 1:04 pm
Thank you both for your help.
I'll try these and come back to you!
I'll try these and come back to you!
Posted Mon 28 Jul 25 @ 4:15 pm
This works fine, thanks again. It brings more questions:
1- When part of a "query=...", are the actions actually performed or are they simply muted and used only as queries?
2- "A ? B" used above is the same as "A or B" if "or" was available in VDJ script?
3- Can "A ? B" used in any context without the ":" or does it sometimes need to be: "A ? B : nothing"
4- If an action is quite complex, can it be useful for performance reasons to modify a variable in the action in order to have a very simple query? I assume that if a query is available, the action stops being queried and is only performed when the button is presse?
With extras:
5- I sometimes see $myvar used without the ''. Like "set_var $myvar" instead of "set_var '$myvar'" Does it have a special meaning, or is it only that it's tolerated by VDJ in certain situations?
6- When used with a varialbe, is there any difference between "set" and "set_var".
Thanks!!
1- When part of a "query=...", are the actions actually performed or are they simply muted and used only as queries?
2- "A ? B" used above is the same as "A or B" if "or" was available in VDJ script?
3- Can "A ? B" used in any context without the ":" or does it sometimes need to be: "A ? B : nothing"
4- If an action is quite complex, can it be useful for performance reasons to modify a variable in the action in order to have a very simple query? I assume that if a query is available, the action stops being queried and is only performed when the button is presse?
With extras:
5- I sometimes see $myvar used without the ''. Like "set_var $myvar" instead of "set_var '$myvar'" Does it have a special meaning, or is it only that it's tolerated by VDJ in certain situations?
6- When used with a varialbe, is there any difference between "set" and "set_var".
Thanks!!
Posted Sun 07 Sep 25 @ 3:39 pm
5 tolerated, I have a topic quite recently on when " ' or ` can be omitted. Not sure if I added it to the first page index.
[I haven't yet it's a few pages back Posted Sun 20 Apr 25 @ 11:00 pm
6 Generally no difference for values, although set_var makes strings easier, example
set a 1 & set b a, both a & b will be set to 1, because that's how the set verb has worked forever, b is set to the same value as a.
set a 1 & set_var b a, a will be 1 as you'd expect but b will be set to the literal text "a"
1 LED/skin queries perform no actions they don't set variables they don't cause actions like "play" to happen, they just query
Other questions I'm not following your meaning.
[I haven't yet it's a few pages back Posted Sun 20 Apr 25 @ 11:00 pm
6 Generally no difference for values, although set_var makes strings easier, example
set a 1 & set b a, both a & b will be set to 1, because that's how the set verb has worked forever, b is set to the same value as a.
set a 1 & set_var b a, a will be 1 as you'd expect but b will be set to the literal text "a"
1 LED/skin queries perform no actions they don't set variables they don't cause actions like "play" to happen, they just query
Other questions I'm not following your meaning.
Posted Sun 07 Sep 25 @ 7:31 pm
Thanks for answers 1, 5 and 6.
For questions 2 and 3, I was refering to the following
I am perplexed by the fact that there is no ":" That is "A ? B" instead of "A ? B : nothing"
Question 3 can also be reformulated as: Is "A ? B" valid not only in "query" but also in "action"? Does it mean the same as "A ? B : nothing" , or "A ? B : false" ?
Question 2 answer was no, I made an error. But I guess " A or B" can be written as "A ? true : B" in vdj script. Is that right?
Question 4 was not too important.
Thanks again!
For questions 2 and 3, I was refering to the following
query="var_equal 'FX1MomPush' 0 ? effect_active 1"
I am perplexed by the fact that there is no ":" That is "A ? B" instead of "A ? B : nothing"
Question 3 can also be reformulated as: Is "A ? B" valid not only in "query" but also in "action"? Does it mean the same as "A ? B : nothing" , or "A ? B : false" ?
Question 2 answer was no, I made an error. But I guess " A or B" can be written as "A ? true : B" in vdj script. Is that right?
Question 4 was not too important.
Thanks again!
Posted Sun 07 Sep 25 @ 10:48 pm
same thing for a LED logic.
Posted Mon 15 Sep 25 @ 1:05 pm
Build 8741 (2025-09-14) padfx improvements
padfx, a big verb that may appear confusing, it's not there's just quite a bit to it, we're going to do some verb history, strap in.
So what is it? what does it do?
It's basically a shorter way to call an effect with all the sliders and buttons in the state you want, press it again and all the sliders go back to where they where.
It's had an improvement recently that completes it in my opinion but let's go back to before padfx was a thing.
If we wanted something like this before padfx we had to write, a lot, I'll use stock echo fx as an example, but let's get on the same page
looking at the echo fx gui [ effect_show_gui echo ]
we see dials
1 strength
2 length
3 lowpass
4 highpass
and we see buttons
1 mute source
2 trailing stop
that's it if you want the parameters an effect has, just look at effect_show_gui %YOURDESIREDFX
So on to how it was done the old painful way
so first we need some logic because first press we want to do something, then we want to undo it of the second press
toggle varForLongExample & var varForLongExample 1 ? we just switched it on : we just switched it off
so just switched on, we need to save our current state of everything to variables, after that we need to set everything to the new settings
set fxOn `effect_active echo` & set slider1 `effect_slider echo 1` & set slider2 `effect_slider echo 2` ... [more variables to cover all 4 dials] & set button1 `effect_button echo 1` & ... [button 2]
already getting long and that's just saving the state, then you have to set everything and if you've followed early topics about effect_button & effect_slider there's nothing fancy here, just long.
This was kind of painful and it's only the true reply to the query. The 2nd reply is just as long, getting variables and casting to dials/buttons something like
the true/save and set reply : get_var slider1 & param_cast & effect_slider echo 1 ... [all the other sliders/buttons]
Then if you wanted a while_pressed kind of button, the script was a bit easier but different.
So the devs decided, "let's make this way easier"
So this is before stems, before effect_beats were a thing too I think,
you just listed stuff in order as seen in the fx gui and it set everything, buttons you used a syntax like this 'button name:STATE'
padfx echo 0.75 0.5 0.1 0.5 'mute source:off' 'trailing stop:on'
just like that, strength at 75% length dial at the half way position, lowpass at 0.1 position, highpass at 0.5 position, mute source off, trailing stop on
if you wanted it as a while_pressed kind of button
padfx echo 0.75 0.5 0.1 0.5 'mute source:off' 'trailing stop:on' while_pressed
just like that,
then the devs decided, "what if single press was on/off toggle but holding worked like while_pressed, that would be cool"
padfx echo 0.75 0.5 0.1 0.5 'mute source:off' 'trailing stop:on' smart_pressed
And that's that, no big mystery just a shorter script
Then effect_beats became a thing so instead of knowing where the 2nd dial position is for a length you could just specify the length
padfx echo 0.75 0.25bt 0.1 0.5 'mute source:off' 'trailing stop:on'
a more recent addition, is effect_beats with ms time, odd use but possible,
padfx echo 0.75 125ms 0.1 0.5 'mute source:off' 'trailing stop:on'
then we got stems and stemfx, so it had to be improved again
padfx echo 0.75 0.25bt 0.1 0.5 'mute source:off' 'trailing stop:on' 'stemfx:vocal'
padfx applies to just vocals
also kill a stem while using
padfx echo 0.75 0.25bt 0.1 0.5 'mute source:off' 'trailing stop:on' 'mutestem:vocal'
also solo a stem while using
padfx echo 0.75 0.25bt 0.1 0.5 'mute source:off' 'trailing stop:on' 'solostem:vocal'
All fine and good, but there's a problem,
what if you don't want to list all the dials, what if you want to leave dial 1 strength to a hardware dial?
It just didn't work that way. You had to list from slider 1, stop listing dials when you want but you can't miss any before you stop.
This is why I never really 'got along' with padfx before.
So very recently I'm explaining padfx [again] to somebody who's over-complicating it in their head, "it's just dials in order and buttons by name"
I asked "Hey devs could we do dials by name too?"
So now the newest version of the padfx verb solves this, by using named sliders
padfx echo 'strength:0.9' 'length:0.25bt' 'lowpass:0.1' 'highpass:0.5' 'mute source:off' 'trailing stop:on'
by calling by name you can now miss sliders, write them in any order you want, full control, I'd say for the moment the verb is feature complete.
That's everything, should I done an explainer on padfx before? probably, but I just didn't like the limitations, now those limitations are gone and I only had to write it up once [until they invent something else]
One final thing, an unusual but not impossible use,
a padfx off call only turns the fx off
if
1 all the dials and buttons listed are in the states as called, otherwise it just sets the states
AND 2 the fx was off when you made the setting call
*note about button names, I am using 'mute source:off' 'trailing stop:on'
these are the retrieved long form names when calling
get_effect_button_name echo 1 & param_cast & debug
but you can also use the short name as retrieved by calling
get_effect_button_shortname echo 1 & param_cast & debug
so the shortname versions
'mute:off' 'trail:on'
padfx, a big verb that may appear confusing, it's not there's just quite a bit to it, we're going to do some verb history, strap in.
So what is it? what does it do?
It's basically a shorter way to call an effect with all the sliders and buttons in the state you want, press it again and all the sliders go back to where they where.
It's had an improvement recently that completes it in my opinion but let's go back to before padfx was a thing.
If we wanted something like this before padfx we had to write, a lot, I'll use stock echo fx as an example, but let's get on the same page
looking at the echo fx gui [ effect_show_gui echo ]
we see dials
1 strength
2 length
3 lowpass
4 highpass
and we see buttons
1 mute source
2 trailing stop
that's it if you want the parameters an effect has, just look at effect_show_gui %YOURDESIREDFX
So on to how it was done the old painful way
so first we need some logic because first press we want to do something, then we want to undo it of the second press
toggle varForLongExample & var varForLongExample 1 ? we just switched it on : we just switched it off
so just switched on, we need to save our current state of everything to variables, after that we need to set everything to the new settings
set fxOn `effect_active echo` & set slider1 `effect_slider echo 1` & set slider2 `effect_slider echo 2` ... [more variables to cover all 4 dials] & set button1 `effect_button echo 1` & ... [button 2]
already getting long and that's just saving the state, then you have to set everything and if you've followed early topics about effect_button & effect_slider there's nothing fancy here, just long.
This was kind of painful and it's only the true reply to the query. The 2nd reply is just as long, getting variables and casting to dials/buttons something like
the true/save and set reply : get_var slider1 & param_cast & effect_slider echo 1 ... [all the other sliders/buttons]
Then if you wanted a while_pressed kind of button, the script was a bit easier but different.
So the devs decided, "let's make this way easier"
So this is before stems, before effect_beats were a thing too I think,
you just listed stuff in order as seen in the fx gui and it set everything, buttons you used a syntax like this 'button name:STATE'
padfx echo 0.75 0.5 0.1 0.5 'mute source:off' 'trailing stop:on'
just like that, strength at 75% length dial at the half way position, lowpass at 0.1 position, highpass at 0.5 position, mute source off, trailing stop on
if you wanted it as a while_pressed kind of button
padfx echo 0.75 0.5 0.1 0.5 'mute source:off' 'trailing stop:on' while_pressed
just like that,
then the devs decided, "what if single press was on/off toggle but holding worked like while_pressed, that would be cool"
padfx echo 0.75 0.5 0.1 0.5 'mute source:off' 'trailing stop:on' smart_pressed
And that's that, no big mystery just a shorter script
Then effect_beats became a thing so instead of knowing where the 2nd dial position is for a length you could just specify the length
padfx echo 0.75 0.25bt 0.1 0.5 'mute source:off' 'trailing stop:on'
a more recent addition, is effect_beats with ms time, odd use but possible,
padfx echo 0.75 125ms 0.1 0.5 'mute source:off' 'trailing stop:on'
then we got stems and stemfx, so it had to be improved again
padfx echo 0.75 0.25bt 0.1 0.5 'mute source:off' 'trailing stop:on' 'stemfx:vocal'
padfx applies to just vocals
also kill a stem while using
padfx echo 0.75 0.25bt 0.1 0.5 'mute source:off' 'trailing stop:on' 'mutestem:vocal'
also solo a stem while using
padfx echo 0.75 0.25bt 0.1 0.5 'mute source:off' 'trailing stop:on' 'solostem:vocal'
All fine and good, but there's a problem,
what if you don't want to list all the dials, what if you want to leave dial 1 strength to a hardware dial?
It just didn't work that way. You had to list from slider 1, stop listing dials when you want but you can't miss any before you stop.
This is why I never really 'got along' with padfx before.
So very recently I'm explaining padfx [again] to somebody who's over-complicating it in their head, "it's just dials in order and buttons by name"
I asked "Hey devs could we do dials by name too?"
So now the newest version of the padfx verb solves this, by using named sliders
padfx echo 'strength:0.9' 'length:0.25bt' 'lowpass:0.1' 'highpass:0.5' 'mute source:off' 'trailing stop:on'
by calling by name you can now miss sliders, write them in any order you want, full control, I'd say for the moment the verb is feature complete.
That's everything, should I done an explainer on padfx before? probably, but I just didn't like the limitations, now those limitations are gone and I only had to write it up once [until they invent something else]
One final thing, an unusual but not impossible use,
a padfx off call only turns the fx off
if
1 all the dials and buttons listed are in the states as called, otherwise it just sets the states
AND 2 the fx was off when you made the setting call
*note about button names, I am using 'mute source:off' 'trailing stop:on'
these are the retrieved long form names when calling
get_effect_button_name echo 1 & param_cast & debug
but you can also use the short name as retrieved by calling
get_effect_button_shortname echo 1 & param_cast & debug
so the shortname versions
'mute:off' 'trail:on'
Posted Mon 15 Sep 25 @ 1:05 pm
Hey scripting gurus :-)
I like having a visual notification on my controller if the VDJ limiter kicks in. As of now, I have a single LED that stays ON for 1000ms if the limiter is triggered:
That works fine, but I'd like something even more noticeable. I am trying to get ALL my pads to turn RED for 1000ms when it happens, but for some reason, I am unable to. The only thing that works is if I do not put the "pulse" timer, which basically just flashes RED very fast on the limiter:
If I do something like this, the LED just turns off, no RED:
I must be missing something very obvious. Can anyone help ?
I like having a visual notification on my controller if the VDJ limiter kicks in. As of now, I have a single LED that stays ON for 1000ms if the limiter is triggered:
get_limiter & pulse 1000ms
That works fine, but I'd like something even more noticeable. I am trying to get ALL my pads to turn RED for 1000ms when it happens, but for some reason, I am unable to. The only thing that works is if I do not put the "pulse" timer, which basically just flashes RED very fast on the limiter:
get_limiter ? color red : pad_button_color 1
If I do something like this, the LED just turns off, no RED:
get_limiter ? color red & pulse 1000ms : pad_button_color 1
I must be missing something very obvious. Can anyone help ?
Posted Mon 15 Sep 25 @ 8:01 pm
not param_equal `get_limiter` 0.0 & pulse 1000ms ? color red : normal colour stuff here
Posted Mon 15 Sep 25 @ 8:35 pm
locoDog wrote :
not param_equal `get_limiter` 0.0 & pulse 1000ms ? color red : normal colour stuff here
Wow that works great, thanks ! I just realized what's needed to be done for it to work. I still have a lot to learn !
Posted Mon 15 Sep 25 @ 8:45 pm
i have created this script
browser_window 'songs' ? show_splitpanel 'sideview' on & sideview sampler & wait 33ms & sideview remixes & browser_window 'remixes' & sideview_sort 'artist' & wait 1000 ms & sideview_sort 'bpm' & browser_scroll 'top' & browser_scroll +1 : show_splitpanel 'sideview' off & browser_window 'songs'
for switching browser views from the normal library to opening the sidepanel to linked tracks and sort by bpm(had to add a wait script because on there is bit of delay in the background)
Firstly,is there an easier and more efficient script to achieve this?
Secondly...sometimes when i trigger the script...no tracks or even history appears in the linked tracks(and i sure there are linked tracks for the playing track)
nothing fixes it beside vdj restart
when this happens,the track being played does not appear next to the "LINKED TRACKS" header in the side panel
browser_window 'songs' ? show_splitpanel 'sideview' on & sideview sampler & wait 33ms & sideview remixes & browser_window 'remixes' & sideview_sort 'artist' & wait 1000 ms & sideview_sort 'bpm' & browser_scroll 'top' & browser_scroll +1 : show_splitpanel 'sideview' off & browser_window 'songs'
for switching browser views from the normal library to opening the sidepanel to linked tracks and sort by bpm(had to add a wait script because on there is bit of delay in the background)
Firstly,is there an easier and more efficient script to achieve this?
Secondly...sometimes when i trigger the script...no tracks or even history appears in the linked tracks(and i sure there are linked tracks for the playing track)
nothing fixes it beside vdj restart
when this happens,the track being played does not appear next to the "LINKED TRACKS" header in the side panel
Posted 6 days ago @ 7:11 am
I want to be able to operate either the jog dial or play/stop button on the DJ controller, and have that operation applied to both the left and right song videos. My motivation is to load English conversation videos with Japanese and English subtitles on the left and right, and switch only the video using the crossfader. By doing so, I think I can switch only the subtitles using the crossfader, and fast forward, rewind, and stop playback on both sides simultaneously.
So how do we write Action for the custom mapping of my DJ controller?
So how do we write Action for the custom mapping of my DJ controller?
Posted 6 days ago @ 11:37 am
@twaga
possibly deck all specifier before the script; deck all play_button
or duplicate the script with deck left/right specified; deck left play_button & deck right play_button
possibly deck all specifier before the script; deck all play_button
or duplicate the script with deck left/right specified; deck left play_button & deck right play_button
Posted 6 days ago @ 11:59 am
@LOCODOG
Thank you very much, your suggestion worked for the play_button, but not for the fast forward and rewind of the motorized Hercules Impulse T7 platter.
Thank you very much, your suggestion worked for the play_button, but not for the fast forward and rewind of the motorized Hercules Impulse T7 platter.
Posted 6 days ago @ 12:58 pm
Hi everyone,
I'm hoping someone can help me with a VDJScript syntax problem that I'm stuck on.
My goal is to create a script that shifts all cue points on a deck backwards by exactly 8 beats.
I have successfully written the first part of the script, which calculates the correct negative millisecond value based on the track's BPM and stores it in a variable named $msShift.
The debug logs confirm that the calculation is working perfectly. For a 120 BPM track, it correctly calculates the shift as -4000ms.
Here is the code that I used:
This is the part that fails to execute:
deck right shift_all_cues '`get_var '$msShift' & param_cast 'ms'`'
And here is the successful debug output:
Val: -4000.00
Text: shift(ms) = -8 beats
Val: 500.00
Text: ms/beat
Val: 120.00
Text: BPM(right)
The Problem:
I cannot figure out the correct syntax to make the shift_all_cues command use the value stored in my $msShift variable. The cue points do not move.
I know that a hardcoded command like deck right shift_all_cues -4000ms works, so the issue is definitely with passing the variable.
Here are the syntaxes I have already tried without success:
1. String interpolation with `param_cast` inside backticks:
shift_all_cues `get_var '$msShift' & param_cast 'ms'`
2. String interpolation with the unit appended outside the backticks:
shift_all_cues `get_var '$msShift'`ms
3. Command chaining without `param_cast`:
get_var '$msShift' & deck right shift_all_cues
4. Command chaining with `param_cast`:
get_var '$msShift' & param_cast 'ms' & deck right shift_all_cues
5. Using the `set` verb:
deck right set 'shift_all_cues' `get_var '$msShift'`ms
6. String interpolation wrapped in single quotes:
shift_all_cues '`get_var '$msShift' & param_cast 'ms'`'
Am I doing something completely wrong, or is the shift_all_cues command simply not capable of receiving a value stored in a variable?
I'm hoping someone can help me with a VDJScript syntax problem that I'm stuck on.
My goal is to create a script that shifts all cue points on a deck backwards by exactly 8 beats.
I have successfully written the first part of the script, which calculates the correct negative millisecond value based on the track's BPM and stores it in a variable named $msShift.
The debug logs confirm that the calculation is working perfectly. For a 120 BPM track, it correctly calculates the shift as -4000ms.
Here is the code that I used:
deck right get_bpm & param_bigger 0 ?
( debug 'BPM(right)' &
deck right get_bpm & param_cast & debug &
deck right get_bpm & param_1_x & param_multiply 60000 & set_var '$msBeat' &
debug 'ms/beat' & get_var '$msBeat' & param_cast & debug &
get_var '$msBeat' & param_multiply 8 & param_multiply -1 & set_var '$msShift' &
debug 'shift(ms) = -8 beats' & get_var '$msShift' & param_cast & debug &
deck right shift_all_cues '`get_var '$msShift' & param_cast 'ms'`' ) :
debug 'No BPM on right deck – shift aborted'
This is the part that fails to execute:
deck right shift_all_cues '`get_var '$msShift' & param_cast 'ms'`'
And here is the successful debug output:
Val: -4000.00
Text: shift(ms) = -8 beats
Val: 500.00
Text: ms/beat
Val: 120.00
Text: BPM(right)
The Problem:
I cannot figure out the correct syntax to make the shift_all_cues command use the value stored in my $msShift variable. The cue points do not move.
I know that a hardcoded command like deck right shift_all_cues -4000ms works, so the issue is definitely with passing the variable.
Here are the syntaxes I have already tried without success:
1. String interpolation with `param_cast` inside backticks:
shift_all_cues `get_var '$msShift' & param_cast 'ms'`
2. String interpolation with the unit appended outside the backticks:
shift_all_cues `get_var '$msShift'`ms
3. Command chaining without `param_cast`:
get_var '$msShift' & deck right shift_all_cues
4. Command chaining with `param_cast`:
get_var '$msShift' & param_cast 'ms' & deck right shift_all_cues
5. Using the `set` verb:
deck right set 'shift_all_cues' `get_var '$msShift'`ms
6. String interpolation wrapped in single quotes:
shift_all_cues '`get_var '$msShift' & param_cast 'ms'`'
Am I doing something completely wrong, or is the shift_all_cues command simply not capable of receiving a value stored in a variable?
Posted 5 days ago @ 9:01 pm
needs to be cast to the verb as ms and needs to be relative too, so almost 4
get_var $msShift & param_cast ms & param_cast relative & deck right shift_all_cues
you won't ever get a 'no bpm reading' as it will default to 120
you can skip all the maths and variable setting if it's a known constant,
constant, cast as beats, cast as time, cast as relative time to verb
deck right constant -8 & param_cast beats & param_cast ms & param_cast relative & shift_all_cues.
get_var $msShift & param_cast ms & param_cast relative & deck right shift_all_cues
you won't ever get a 'no bpm reading' as it will default to 120
you can skip all the maths and variable setting if it's a known constant,
constant, cast as beats, cast as time, cast as relative time to verb
deck right constant -8 & param_cast beats & param_cast ms & param_cast relative & shift_all_cues.
Posted 5 days ago @ 10:43 pm
@LOCODOG
Solved. I had to add “deck all “ to both MOTOR_JOG and MOTOR_TIMESTAMP.
Solved. I had to add “deck all “ to both MOTOR_JOG and MOTOR_TIMESTAMP.
Posted 5 days ago @ 6:12 am