Quick Sign In:  

Forum: VirtualDJ Technical Support

Topic: mimic a safe/emergency-loop (like in Rekordbox)

This topic is old and might contain outdated or incorrect information.

What I want to achieve is:
automatically set a loop, when reaching a dedicated point in the track (and never leave this loop until I do that)

this can be used for two scenarios:
1) load-loop: when loading a new track: goto cue1 (solved) and enable a loop to sync to the new track
That's the way I mix tracks...so why not scriping this? ;)
2) emergency-loop: reaching the end of a track this loop will be enabled to help you mixing in the next track properly

I think both can be done using the same kind of script, right?

For the first sceanrio I tried to do so with action points:
moving (lets say) 50 ms right to cue 1 and set an action point with "loop active ? : loop 8"
first time this action point is reached it should enable the loop of eight bars and (with quantize on) it should start the loop right at cue1 :) - works!
When passing this point the second time it should do nothing...doesn't work as planned: disables the loop again :-O
What did I miss? please give me a hint! :)


so I gave it another try: use a saved loop :D
set a saved loop starting at cue 1 with 8 bars and called it cue 10 (I don't want to see this little work-around in the cue-section of the skin)
again, set a cue right next cue 1 (like mentioned above: 50 ms) as an action point calling "pad 10"

but again...this will not work! I have to use a pad from 1 to 8 (to get it to work properly)...which is then visible in my skin and can't be used for other purposes :(
Please give me a hint what is the cause of this problem (not enable me to use a pad out of the range of those visible in the skin)?

Thanks in advance for any hint that directs me to a suitable solution!
:)
 

Posted Wed 01 Feb 17 @ 1:46 pm
Not sure if I have understood correctly, but have you tried using script loop_load_prepare (SavedLoopNumber)

If you put that script on a deck assigned button, or custom button and activate it on each track, the track will automatically enter a loop when it hits the point and will stay in loop until you turn it off. You will have to create saved loops for each track though.

I did do all this myself when i started out, but to be honest, once i got relatively good at mixing it becomes too much of a hassle and i just do it on the fly if i have to.
 

Posted Wed 01 Feb 17 @ 2:02 pm
meinereinerseiner wrote :
What I want to achieve is:
automatically set a loop, when reaching a dedicated point in the track (and never leave this loop until I do that)

Create an action POI with the following action:
loop ? nothing : loop

You can set a number of beats if you like:

loop ? nothing : loop 8

meinereinerseiner wrote :
For the first sceanrio I tried to do so with action points:
moving (lets say) 50 ms right to cue 1 and set an action point with "loop active ? : loop 8"
first time this action point is reached it should enable the loop of eight bars and (with quantize on) it should start the loop right at cue1 :) - works!
When passing this point the second time it should do nothing...doesn't work as planned: disables the loop again :-O
What did I miss? please give me a hint! :)

loop active is not a valid VDJ Script command / action / verb
meinereinerseiner wrote :
so I gave it another try: use a saved loop :D
set a saved loop starting at cue 1 with 8 bars and called it cue 10 (I don't want to see this little work-around in the cue-section of the skin)
again, set a cue right next cue 1 (like mentioned above: 50 ms) as an action point calling "pad 10"

but again...this will not work! I have to use a pad from 1 to 8 (to get it to work properly)...which is then visible in my skin and can't be used for other purposes :(
Please give me a hint what is the cause of this problem (not enable me to use a pad out of the range of those visible in the skin)?


Saved loops are independent from hot cues. You can transform a hot cue to be a saved loop as well, but I don't think that's what you want.
Pads offer various "modes"
One of them is "Saved Loops".
Use that pad mode to store and recall your saved loops

PS: The "super duper automagic" way to always enter a loop is to use an action POI with the script I gave you above.
Saved loops must be loaded even instantly (loop_load) or automatically (loop_load_prepare) every time you load the track on the deck.
So, if you want a "secure loop" near the end of your track just set action POI

Hint: Personally I have set all my action POI's to work this way:

var_equal '$ExecMacro' 1 ? loop ? nothing : loop

The difference here is the variable in the beginning of the script . It allows me to toggle on the fly whether or not the action POI's will do their thing or not...
For instance if you put a few songs on automix you don't want these auto-loops to be triggered. Therefore you toggle the variable off and the action POIs will not trigger their actions once reached.

Finally I use a custom button on the skin to toggle this variable on/off:
toggle '$ExecMacro'
 

Posted Wed 01 Feb 17 @ 2:29 pm
wow...I didn't expect to get an answer that fast! :)

I tried a little bit different type of command "loop_load 1" and this works like a charme! Thanks in advance!
so I have to set up a "saved loop" and put this on slot 1 (never minded the "slot" EVER before!) and create an "action point" that will enable the loop.
Done!

but my goal is to create a kind of "one-button to rule'em all" ;) so I did the following:
Go to the point of the track where I want to have my mix (to the new track) finished and hit the button with the following command:

set_cue 2 & cue_name 2 IN & goto -16 & set_cue 1 & cue_name 1 START_16 & goto -16 & set_cue 3 & cue_name 3 START_32 & set_cue 98 & goto +10ms & quantize_setcue 0 & set_cue 99 & quantize_setcue 1

by using a shift-key you can decide, if you want a amount of 16 bars for mixing instead:

var '$SHIFT1' 1 ? set_cue 2 & cue_name 2 IN & goto -16 & set_cue 1 & cue_name 1 START_16 & set_cue 98 & goto +10ms & quantize_setcue 0 & set_cue 99 & quantize_setcue 1 : set_cue 2 & cue_name 2 IN & goto -16 & set_cue 1 & cue_name 1 START_16 & goto -16 & set_cue 3 & cue_name 3 START_32 & set_cue 98 & goto +10ms & quantize_setcue 0 & set_cue 99 & quantize_setcue 1

now I have two cue-points (98 and 99) that I have to search for in the database....
with the help of a little bit of "search & replace magic" I have to convert this two cues into a saved loop and a action point (hopefully!)
to prevent this kind of work I have to discover, if it is possible to create a saved loop and action point by using a (scripting)button...but that's a question for a different thread.

Big thanks for pointing at the right command!!!
 

Posted Wed 01 Feb 17 @ 2:52 pm
@PhantomDeejay:
I'm mightily impressed by this solution! *thumbs up*
thanks in advance!
 

Posted Wed 01 Feb 17 @ 2:59 pm


(Old topics and forums are automatically closed)