Taken the plunge and decided to map the RMX more to my style of VDJ use. Pretty much got it as I want, but having a few final issues which I think maybe down to my 'limited' understanding of scripting.
The first thing I've done is remapped the SCRATCH button as a SHIFT button using the following script:
deck 1 toggle 'shift' & deck 2 toggle 'shift'
This script came from another user (can't remember who now - sorry) but I'm sure it pre-dates v7. Is this the most efficient script for this?
This has allowed me to give each of the 6 buttons two actions, allow me to load and unload from the LOAD button and play with different actions on the TRACK- and TRACK+ buttons.
However I am having issues with trying to remap the UP, DOWN, LEFT and RIGHT buttons as they don't appear to acknowledge the 'shift' variable. Is this because they are not 'deck' specific?
The same wth the BALANCE button. This script does not appear to recognise the 'shift' action:
var 'shift' ? effect slider 2 : effect slider 1
Also, if I want to map different actions to the same button on each deck do I use the following script:
device_side left ? var 'shift' ? <shift left action> : <normal left action> : device_side right ? var 'shift' ? <shift right action> : <normal right action>
Thanks in advance...
Roy
The first thing I've done is remapped the SCRATCH button as a SHIFT button using the following script:
This script came from another user (can't remember who now - sorry) but I'm sure it pre-dates v7. Is this the most efficient script for this?
This has allowed me to give each of the 6 buttons two actions, allow me to load and unload from the LOAD button and play with different actions on the TRACK- and TRACK+ buttons.
However I am having issues with trying to remap the UP, DOWN, LEFT and RIGHT buttons as they don't appear to acknowledge the 'shift' variable. Is this because they are not 'deck' specific?
The same wth the BALANCE button. This script does not appear to recognise the 'shift' action:
Also, if I want to map different actions to the same button on each deck do I use the following script:
Thanks in advance...
Roy
Inviato Mon 13 Dec 10 @ 2:43 am
Do you want this Shift button to be global or affect just one deck ?
Basically dont use deck 1, deck 2 etc for mapping buttons. Use just the action, and if you need to specify different action for left and right use the device_side.
Note also that a var like 'shift' is refered to only oine side (one deck), and '$shift' is global (for both sides)
Basically dont use deck 1, deck 2 etc for mapping buttons. Use just the action, and if you need to specify different action for left and right use the device_side.
Note also that a var like 'shift' is refered to only oine side (one deck), and '$shift' is global (for both sides)
Inviato Mon 13 Dec 10 @ 6:03 am
Thaks for that, so are you saying my shift action should be just: toggle $shift ?
By default, the actions I already have are left/right sided the the RMX without me having to do anything. For example, there is only one BUTTON1 but if I assign the action loop_half, it only does it on the appropriate deck which is just what I want for those 6 buttons.
However for the TRACK+ and - I was hoping to do something different on each side: video_transition_select +/- for the left and video_fx_select /- for the right. Hence the reason for asking about querying the left/right deck.
Cheers,
Roy
By default, the actions I already have are left/right sided the the RMX without me having to do anything. For example, there is only one BUTTON1 but if I assign the action loop_half, it only does it on the appropriate deck which is just what I want for those 6 buttons.
However for the TRACK+ and - I was hoping to do something different on each side: video_transition_select +/- for the left and video_fx_select /- for the right. Hence the reason for asking about querying the left/right deck.
Cheers,
Roy
Inviato Mon 13 Dec 10 @ 7:31 am
It depends on what you need to do.
This Shift button are actually 2? one at each side?
I will give you an example to understand the difference between "shift" and "$shift"
Lets say this SHIFT button makes an FX selector (rotary) to behave like a browser scroller. In that case if you map this SHIFT button as "shift" by pressing on the left side, you will be able to scroll trhrough songs but also be able to select (or activate) an effect at the other (playing deck).
If this button is mapped as "$shift" then by pressing that button (left OR right doesnt matter) both rotaries (FX selectors) become Browser scrollers ON BOTH decks.
So you have to decide what behaviour do you want for this SHIFT button.
This Shift button are actually 2? one at each side?
I will give you an example to understand the difference between "shift" and "$shift"
Lets say this SHIFT button makes an FX selector (rotary) to behave like a browser scroller. In that case if you map this SHIFT button as "shift" by pressing on the left side, you will be able to scroll trhrough songs but also be able to select (or activate) an effect at the other (playing deck).
If this button is mapped as "$shift" then by pressing that button (left OR right doesnt matter) both rotaries (FX selectors) become Browser scrollers ON BOTH decks.
So you have to decide what behaviour do you want for this SHIFT button.
Inviato Mon 13 Dec 10 @ 1:16 pm
Ok that's easy to describe:
Now the RMX duplicates the controls per deck apart from a few in the centre. So by using a global I should be able to shift these central controls right?
var $shift ? effect slider 2 : effect slider 1
Now VDJ recognises that the other buttons are left/right already, so although the action is the same, VDJ only applies it to the relative deck - nothing for me to do here.
For example, var $shift ? loop_half : loop_in works for both decks but only applies the action to the relative deck.
However, and this is where I need the left/right side syntax, I want a couple of these deck buttons to do different things when shifted. The left side I want to rotate the video transitions and the right I want to rotate the clipbank videos by cycling the effect button.
So in psuedo code I see this as:
Which translates to:
Is this correct?
Roy
- The button I am using to shift is a central on/off button - hence the toggle
- Once shifted it will stay that way until I press again - no need for "while pressed"
- While shifted it will affect buttons on both decks as well as central controls - it's not side relative
Now the RMX duplicates the controls per deck apart from a few in the centre. So by using a global I should be able to shift these central controls right?
Now VDJ recognises that the other buttons are left/right already, so although the action is the same, VDJ only applies it to the relative deck - nothing for me to do here.
For example, var $shift ? loop_half : loop_in works for both decks but only applies the action to the relative deck.
However, and this is where I need the left/right side syntax, I want a couple of these deck buttons to do different things when shifted. The left side I want to rotate the video transitions and the right I want to rotate the clipbank videos by cycling the effect button.
So in psuedo code I see this as:
Psuedo Code wrote :
TRACK-
IF left_deck THEN
...IF shifted THEN
......previous_video_transition
...ELSE
......seek_back
...ENDIF
ELSEIF right_deck THEN
...IF shifted THEN
......previous_effect_button
...ELSE
......seek_back
...ENDIF
ENDIF
IF left_deck THEN
...IF shifted THEN
......previous_video_transition
...ELSE
......seek_back
...ENDIF
ELSEIF right_deck THEN
...IF shifted THEN
......previous_effect_button
...ELSE
......seek_back
...ENDIF
ENDIF
Which translates to:
VDJScript wrote :
device_side left ? var $shift ? video_transition_select -1 : seek -4 : device_side right ? var $shift ? *cycle code* : seek -4
Is this correct?
Roy
Inviato Mon 13 Dec 10 @ 2:00 pm
Or is this more efficient?
Which translates to:
Less decision code and noduplication of actions. Should be more efficient right?
Roy
Psuedo Code wrote :
TRACK-
IF shifted THEN
...IF left_deck THEN
......previous_video_transition
...ELSEIF right_deck THEN
......previous_effect_button
...ENDIF
ELSE
...seek_back
ENDIF
IF shifted THEN
...IF left_deck THEN
......previous_video_transition
...ELSEIF right_deck THEN
......previous_effect_button
...ENDIF
ELSE
...seek_back
ENDIF
Which translates to:
VDJScript wrote :
var $shift ? device_side left ? video_transition_select -1 : *cycle code* : seek -4
Less decision code and noduplication of actions. Should be more efficient right?
Roy
Inviato Mon 13 Dec 10 @ 2:10 pm
Since that SHIFT button is just one (no left or right side) then i think that naming the var shift or $shift will have the same result.
All the above codes seem correct. I think it's time to test them yourself !
All the above codes seem correct. I think it's time to test them yourself !
Inviato Mon 13 Dec 10 @ 4:33 pm
Great... Just wanted to make sure I was heading in the right direction...
I'm of the play ;-)
Roy
I'm of the play ;-)
Roy
Inviato Mon 13 Dec 10 @ 4:47 pm
Made some great progress tonight on my mapper. Before I turn in for the night though I thought I'd ask another question as I've reached another block!!!
I have now changed my mapping so the when shifted the left high_eq knob is effect slider 1 and the right high_eq knob is effect slider 2.
The problem I am having is limiting the slider to the active deck. When ever I turn adjust the slider on the left deck, it also adjusts it on the right deck.
Not only that, but if each deck has a different effect and one of them doesn't have a second slider, I am unable to adjust the second slider on the opposite deck unless I make it the same effect on both.
So is there a way of using the active deck in the action script.
Cheers,
Roy
I have now changed my mapping so the when shifted the left high_eq knob is effect slider 1 and the right high_eq knob is effect slider 2.
The problem I am having is limiting the slider to the active deck. When ever I turn adjust the slider on the left deck, it also adjusts it on the right deck.
Not only that, but if each deck has a different effect and one of them doesn't have a second slider, I am unable to adjust the second slider on the opposite deck unless I make it the same effect on both.
So is there a way of using the active deck in the action script.
Cheers,
Roy
Inviato Mon 13 Dec 10 @ 7:33 pm
You dont want to do this..lol
Imagine the mess! Once you press shift and adjust the slider 1 or 2, by releasing the shift then the eq_knob will be at the wrong place according to software.
You can assign different actions for buttons, but for sliders i wouldnt reccomend you. You can use relative for some of them but again its tricky.
Imagine the mess! Once you press shift and adjust the slider 1 or 2, by releasing the shift then the eq_knob will be at the wrong place according to software.
You can assign different actions for buttons, but for sliders i wouldnt reccomend you. You can use relative for some of them but again its tricky.
Inviato Mon 13 Dec 10 @ 8:12 pm
Okay... good point... may go back to mapping the balance button for effect slider 1/2 via shift.
Just wanted find somewhere to map the built in filter to that's all...
Think I'm done then... I'll share my results shortly...
Cheers,
Roy
Just wanted find somewhere to map the built in filter to that's all...
Think I'm done then... I'll share my results shortly...
Cheers,
Roy
Inviato Tue 14 Dec 10 @ 1:32 am