Forum: General Discussion

About VirtualDJ and DJing in general

If you need extended support, contact our Support Team.
Forum Guidelines  (*) The moderators hold the rights to move or modify posts in order to keep the discussions clear or to facilitate the search.
Topic: start deck A (paused) when deck B (playing) reaches the same beat
I would like to ask advice to set up the following scenario:
-------------------------------------------------------------------
1. Deck A is paused on a specific beat, say for example n.7 (out of 16, i.e. third beat of the second bar). Deck B is playing.
2. I press a predefined key (on keyboard or controller)
3. Nothing happens until Deck B is on a beat different from n.7
4. When deck B reaches beat n.7 then deck A starts playing
-------------------------------------------------------------------
is there anything like that existing on VdJ? Any suggestions on how to implement such functionality?
Thanks in advance!

Posted Tue 25 Jun 19 @ 9:25 am
locodogPRO InfinityModeratorMember since 2013
Sure vdj can do that,

repeat_start_instant "rsiDelayPlay" 32ms & var '$dpflag' 0 ? param_smaller "deck default get_beat_bar 16" "deck active get_beat_bar 16" ? set '$dpflag' 1 : nothing : param_bigger "deck default get_beat_bar 16" "deck active get_beat_bar 16" ? deck default play & sync & repeat_stop "rsiDelayPlay" & set '$dpflag' 0 : nothing

I think that should do it but haven't tested

Posted Tue 25 Jun 19 @ 4:19 pm
That is great! Works almost perfectly! There are just a couple of issues, I was obviously not clear enough in my request:

1. The script should work symmetrically, i.e. if deck B is paused and deck A is running, deck B will only start when deck A reaches the same beat of deck B. BUT should also work the opposite way i.e. if deck A is paused and deck B is running, deck A will only start when deck B reaches the same beat of deck A. I think it should be possible to do that conditioning to the crossfader position, but I am not sure I am able to implement this

2. The script you suggest works the fist time. But if -once the decks run toghether- I stop deck B then B starts again the next time A meets the same beat of B. Instead I would like that after the first time the condition is met the script stop working.

I hope I have been clear enough, I really appreciate any help on this matter!

Posted Tue 25 Jun 19 @ 9:49 pm
locodogPRO InfinityModeratorMember since 2013
I'll have a poke at it this evening, I made that script theoretically (was on a building site at the time) I'm sure we can work the kinks out when I'm at my machine.

Posted Wed 26 Jun 19 @ 4:55 pm
Thank you so much, I look forward to it!!

Posted Wed 26 Jun 19 @ 7:43 pm
locodogPRO InfinityModeratorMember since 2013
deck 1 pause ? deck master repeat_start_instant "rsiDelayPlay" 32ms & var '$dpflag' 0 ? param_smaller "deck 1 get_beat_bar 16" "deck 2 get_beat_bar 16" ? set '$dpflag' 1 : nothing : param_bigger "deck 1 get_beat_bar 16" "deck 2 get_beat_bar 16" ? deck 1 play & sync & deck master repeat_stop "rsiDelayPlay" & set '$dpflag' 0 : nothing : deck 2 pause ? deck master repeat_start_instant "rsiDelayPlay" 32ms & var '$dpflag' 0 ? param_smaller "deck 2 get_beat_bar 16" "deck 1 get_beat_bar 16" ? set '$dpflag' 1 : nothing : param_bigger "deck 2 get_beat_bar 16" "deck 1 get_beat_bar 16" ? deck 2 play & sync & deck master repeat_stop "rsiDelayPlay" & set '$dpflag' 0 : nothing : nothing



deck 1 pause
..? deck master repeat_start_instant "rsiDelayPlay" 32ms & var '$dpflag' 0
....? param_smaller "deck 1 get_beat_bar 16" "deck 2 get_beat_bar 16"
......? set '$dpflag' 1
......: nothing
....: param_bigger "deck 1 get_beat_bar 16" "deck 2 get_beat_bar 16"
......? deck 1 play & sync & deck master repeat_stop "rsiDelayPlay" & set '$dpflag' 0
......: nothing
..: deck 2 pause
....? deck master repeat_start_instant "rsiDelayPlay" 32ms & var '$dpflag' 0
......? param_smaller "deck 2 get_beat_bar 16" "deck 1 get_beat_bar 16"
........? set '$dpflag' 1
........: nothing
......: param_bigger "deck 2 get_beat_bar 16" "deck 1 get_beat_bar 16"
........? deck 2 play & sync & deck master repeat_stop "rsiDelayPlay" & set '$dpflag' 0
........: nothing
....: nothing

Posted Thu 27 Jun 19 @ 4:36 am
TOP TOP TOP!!!!!!!!
Works like a charm, thank you so much!

Posted Thu 27 Jun 19 @ 6:53 am