
VDJscript verbs in VirtualDJ v7.0.5
- play : start the deck.
- play_stutter : if paused, start the deck. if playing, restart from last stutter point.
- play_pause : if paused, start the deck. if playing, pause the deck.
- pause_stop : if playing, pause the deck. if stopped, rewind to begining of the song, then cycle through all cue points each time pressed.
- cue_stop : if playing, pause and go to the last cue point. if paused, set the current position as cue point, and preview the cue as long as pressed. you can specify a number ('cue_stop 1', 'cue_stop 57') to work with several cues. number 0 or no number works on the last used cue.
- cue_play : if playing, pause and go to the last cue point. if paused, set the current position as cue point, and preview the cue as long as pressed. if you kept pressed more than 2s (or the time specified), it will continue playing once you release. syntax: 'cue_play 1 1000ms'.
- cue : if playing, go to the last cue point and continue playing. if paused, set the current position as cue point, and preview the cue as long as pressed. if in loop, change loop_in to the cue point but keep the loop's length. you can specify a number ('cue 1', 'cue 57') to work with several cues. number 0 or no number works on the last used cue.
- hot_cue : if no cue point is set, set one at the current position. otherwise go to the cue point and start or continue playing. if in loop, set the cue point as new loop_in but keep loop_length. you can specify a number ('hot_cue 1', 'hot_cue 57') to work with several cues. number 0 or no number works on the last used cue.
- cue_select : Select the nth cue point as default cue point for cue, hotcue, etc.. actions.
- stop : stop to the last cue point, then on second press to the begining of the song, then cycle through the cue points.
- pause : pause the deck.
- play_button : depending on the play_mode, act like play_stutter (Numark way) or play_pause (Pioneer way).
- stop_button : depending on the play_mode, act like pause_stop (Numark way) or stop (Pioneer way).
- cue_button : depending on the play_mode, act like cue_stop (Numark way) or cue (Pioneer way).
- crossfader : move the crossfader. crossfader 0% will only let the left deck out, crossfader 100% will only let the right deck out.
- volume : set the volume of the deck.
- pitch : set the pitch of the deck. used with a number, it gives the position on the slider (and therefore account for pitch_range). used with a percent it gives an absolute position. 'pitch 112%' set pitch at +12%, 'pitch 0.25' set pitch at -10% if pitch_range is 20.
- pitch_slider : set the pitch of the deck, to be used by hardware controllers. if the pitch is changed by the software, the hardware slider will be unlinked from the real pitch until it reaches the actual pitch position again.
- pitch_relative : set the pitch of the deck, to be used by hardware controllers if you prefere the change to be relative to the software pitch position.
- volume_slider : set the volume of the deck, but can be 'unlinked' from the actual volume if the slider position does not match the software volume position.
- volume_relative : set the volume of the deck, relative to the software volume position.
- crossfader_slider : move the crossfader, but can be 'unlinked' from the actual crossfader if the slider position does not match the software crossfader position.
- crossfader_relative : move the crossfader, relative to the software crossfader position.
- gain_slider : change the gain, but can be 'unlinked' from the actual gain if the slider position does not match the software gain position.
- gain_relative : change the gain, relative to the software gain position.
- jogwheel : used for a jogwheel without touch sensitivity. 'jogwheel +1.0' means a full rotation of the wheel.
- touchwheel : used for a jogwheel with touch sensitivity. 'touchwheel +1.0' means a full rotation of the wheel.
- touchwheel_touch : use when the touchwheel is touched, to hold the song and start to scratch.
- speedwheel : used for a precision touchwheel that reports both position and speed. 'speedwheel +1.0 1.5' means a full rotation of the wheel, at 150% speed.
- speedwheel_touch : use when the speedwheel is touched, to hold the song and start to scratch.
- motorwheel : used for a motorized jogwheel. Each time the jogwheel moves, send 'motorwheel "move" +1.0' followed by 'motorwheel "timestamp" 1000.0'. 'move +1.0' means a full platter rotation. 'timestamp 1.0' means 1ms since last message. You should query 'motorwheel' and turn the motor on when it returns true and off when false.
- motorwheel_instant_play : when set to on, the song will start instantly, bypassing the ramp up time the motor takes to reach its full rotation speed (the drawback is that then you cannot hold the disc still when your start the motor)
- select : select this deck as 'working deck'. the beat of the working deck will be shown in front in the display, and shortcuts and actions with no specified deck will affect this deck.
- masterdeck : select/unselect this deck as 'master deck'. When a master deck is set, all synchronization operations will take the master deck as reference. (for skins with more than 2 decks)
- pfl : select if this deck is sent to the headphones. (can be used with a slider or a % to specify the volume: 'pfl 75%')
- leftdeck : select this deck to be the left deck: "deck 3 leftdeck" or "leftdeck +1"
- rightdeck : select this deck to be the right deck: "deck 3 rightdeck" or "rightdeck +1"
- leftcross : assign this deck to the left of the crossfader: "deck 3 leftcross"
- rightcross : assign this deck to the right of the crossfader: "deck 3 rightcross"
- cross_assign : assign this deck to a side of the crossfader: "deck 3 cross_assign 'left'" or "deck 3 cross_assign 'thru'"
- leftvideo : assign this deck to the left of the video crossfader: "deck 3 leftvideo" or "leftvideo +1" or "leftvideo 'auto'".
- rightvideo : assign this deck to the right of the video crossfader: "deck 3 rightvideo" or "rightvideo +1" or "rightvideo 'auto'".
- overvideo : force this deck's video output on the video master
- leftvideo_button : simple button to control the left video source: "deck 3 leftvideo_button".
- rightvideo_button : simple button to control the right video source: "deck 3 rightvideo_button".
- sync : synchronize the song with the other deck.
- play_sync : play the song instantly synchronized with the other deck.
- play_sync_onbeat : instantly synchronize the song with the other deck, using local beat information instead of the global beatgrid.
- play_onbeat : instantly synchronize the song with the other deck, using local beat information instead of the gloabl beatgrid, but don't change the pitch.
- goto : change the position in the song. 'goto +10ms' jumps 10ms forward. 'goto -4' jumps 4 beats backward. 'goto 20%' goes at 20% of the song's length.
- goto_bar : put the song on its nth beat after the downbeat without loosing sync: 'goto_bar 4'
- song_pos : position in the song. (the difference between song_pos and goto is that song_pos can be used as a slider).
- loop : set or remove a loop. 'loop 4', 'loop 0.5' set a loop in beats. 'loop 10ms' set a loop in ms. 'loop 200%' multiply by 2 the size of the loop. 'loop 50%' divides by 2. 'loop' alone set a loop at the actual position with the same beat size as the last set loop.
- loop_in : if not in loop, set the begining of a loop. if in loop, jump back to the begining of the loop.
- loop_out : if not in loop, set the deck in loop, starting from the last set loop_in point or stutter point. if in loop, exit the loop.
- loop_length : change the length of the loop. 'loop_length 15ms' set the length in ms, 'loop_length 0.5' set the length in beats, 'loop_length +100%' set the length in percentage of the actual length.
- loop_move : move the loop without changing its length. 'loop_move +10ms' set the distance in ms, 'loop_move +2' set the distance in beats, 'loop_move +50%' set the distance in percentage of the actual length.
- loop_double : double the size of the loop.
- loop_half : halve the size of the loop.
- loop_exit : remove the loop.
- loop_select : set the loop size (or default loop size if no loop is active). If no parameter is provided, a popup list of loop values to choose from will be displayed.
- reloop : jump to the loop_in point.
- reloop_exit : if in loop, remove the loop. otherwise, reactivate the last used loop.
- loop_button : one-button smart loop: Set the loop in on the first press, set the loop out on second press, remove the loop on third press.
- set_cue : store the current position in the cue. if one parameter is given, it's the number of the cue to use. if two parameters are given, the second is the position to store, in ms, in beats, or in percentage of the song length.
- goto_cue : jump to the specified cue.
- delete_cue : delete the cue. a cue number can be specified.
- cue_name : change the name of the cue. if one parameter is given, it's the number of the cue to use. if two parameters are given, the second is the name to give to the cue. If no second parameter is given, a window will popup to ask for the name.
- goto_first_beat : automatically goes to the first beat in the song.
- filter : apply a resonant filter (Use 'filter 50%' to reset/turn off the filter.)
- eq_high : set the treble equalizer.
- eq_mid : set the medium equalizer.
- eq_low : set the bass equalizer.
- eq_kill_high : mute the treble.
- eq_kill_mid : mute the medium.
- eq_kill_low : mute the bass.
- eq_crossfader_high : crossfade the treble between both decks.
- eq_crossfader_mid : crossfade the medium between both decks.
- eq_crossfader_low : crossfade the bass between both decks.
- eq_reset : reset the equalizer.
- fake_crossfader : move the crossfader on the skin without changing the sound.
- fake_level : move the volume fader on the skin without changing the sound.
- fake_eq_high : move the equalizer on the skin without changing the sound.
- fake_eq_mid : move the equalizer on the skin without changing the sound.
- fake_eq_low : move the equalizer on the skin without changing the sound.
- gain : set the gain, up to -30dB in the negative, and up to +7.5dB in the positive.
- power_gain : set the gain, allowing up to +30dB in the positive.
- match_gain : set the gain to match the other deck.
- set_gain : set the gain in order to bring the song to the specified dBA (with 0dBA being the maximum level outputable by the soundcard without compression): 'set_gain 0'
- match_bpm : set the pitch to match the BPM of the other deck.
- key : change the key of the song, from -12 (one octave down) to +12 (one octave up), only in multiple of semitones.
- key_smooth : change the key of the song, from -12 (one octave down) to +12 (one octave up), allowing not only multiple of semitones.
- key_move : move the key up or down from the given amount of semitones.
- match_key : change the key of the song to match the given key. you can use standard notation ('set_key "A#m"') or numeric ('set key "03A"'). if no given key, it will use the other deck. the change will be the smallest change to make it compatible with the given key.
- set_key : change the key of the song to match the given key. you can use standard notation ('set_key "A#m"') or numeric ('set key "03A"'). if no given key, it will use the other deck. the change will match the exact key.
- pitch_reset : slowly brings the pitch back to 0%. you can specify the speed in % per second (default 1% per second): 'pitch_reset 5%'
- pitch_range : set the range for the pitch slider. 'pitch 12%' set the range from -12% to +12%. 'pitch +1' scrolls through the defaut pitch ranges. 'pitch "12,16,25" +1' scrolls through the provided list of pitch ranges.
- pitch_bend : slow down or speed up the song: 'pitch_bend +3%'. you can make the bend to increase slowly by specifying a second time parameter: 'pitch_bend +1% 500ms' will start at +1% and will double every 500ms.
- master_tempo : activate/deactivate the master tempo (to make the pitch slider change the speed of the song, but keep the original key of the song).
- key_lock : activate/deactivate the key lock (to make the pitch slider change the speed of the song, but keep the key of the song like it is now).
- seek : move into the song while the button is pressed. 'seek +2' moves beat by beat, skipping 2 beats every 10ms. 'seek +420ms' moves from 420ms every 10ms. using skip with a beat number keep the song playing correctly while moving inside.
- reverse : play the song backward
- dump : reverse the playback direction while dump is active, then when deactivated, start again forward from where the song should have been if it had been playing forward during the dump.
- minimize : minimize the application in the taskbar.
- maximize : maximize the application full screen, or back to normal.
- close : close the application.
- settings : open the configuration window.
- page : change the page displayed in the browser window. 'page "browser"', 'page "sampler"', 'page "effects"', 'page "record"' set a specific page. 'page +1', 'page -1' scroll through the pages.
- booth_volume : change the volume of the booth output.
- master_balance : change the left/right balance on the master output.
- master_volume : change the volume of the master output.
- headphone_volume : change the volume of the PFL output.
- headphone_gain : change the gain of the PFL output (from -30dB to +30dB)
- headphone_mix : change the mix of the PFL (0% is only the cued deck, 100% is the master output).
- headphone_crossfader : change the PFL fader (0% is only the left deck, 100% is only the right deck).
- zoom : set the zoom level on the rhythm display. use 'zoom "near"', 'zoom "default"', 'zoom "far"' for the pre-set zoom levels, or use 'zoom 42%' to get to a precise zoom level.
- smart_loop : when smart_loop is activated, loop are automagically adjusted to sound perfect.
- smart_play : when smart_play is activated, songs are automagically synchronized when played.
- smart_cue : when smart_cue is activated, songs are automatigically re-synchronized when jumped to a new position or cue.
- smart_scratch : when smart_scratch is activated, backward scratching is automatically muted, only forward scratching will be heard.
- vinyl_mode : set the jogwheel in vinyl mode (with scratch), or in cd mode (with pitchbend). 1 is vinyl mode (default), 0 is cd mode.
- wheel_mode : change the mode of the jogwheel between: "jog", "search", "loop_move", "loop_out", "loop_in", "browser", or use +1 and -1 to cycle through all modes. You can select from a subset using a syntax like 'wheel_mode "loop_move,loop_in,loop_out" +1'.
- play_mode : set the mode for play/stop/cue buttons: 'play_mode "numark"', or 'play_mode "pioneer"'.
- display_time : set the mode to display time: "total", "remain", "elapsed", +1 or -1.
- auto_cue : set the auto_cue mode: "off", "on", "always".
- beatlock : activate/deactivate the beatlock (to keep the songs always in sync, even while moving the pitch).
- pitchlock : lock the pitch sliders on both decks so both will move together.
- auto_crossfade : automatically crossfade to the other deck. You can specify the duration of the crossfade in ms: 'auto_crossfade 2000ms'
- scratch : 'scratch +120ms' to scratch 120ms forward.
- scratch_hold : 'scratch_hold on' or 'scratch_hold off' (or 'scratch_hold toggle') to stop the disc for scratching, or release it.
- nudge : 'nudge +120ms' to nudge the song 120ms forward (using mastertempo if it's activated).
- linein : activate or desactivate the linein on this deck. You can also specify a linein number to assign another linein: "deck 1 linein 2 on". Or you can assign the microphone input: "deck 3 linein 'mic' on".
- linein_rec : record the linein input on this deck.
- mic : activate or desactivate the microphone input
- mic_volume : set the volume of the microphone
- mic_rec : record the microphone input on this deck
- timecode_active : active or unactive the action of the timecoded vinyl.
- timecode_bypass : bypass the timecoded input and play the vinyl directly through the soundoutput. all gain, RIAA and stereo correction are still applied. this mode works only if both the input and the output are on the same ASIO soundcard.
- timecode_mode : set the timecode mode: "smart", "absolute", "relative".
- timecode_config : open the timecode config window.
- nothing : do nothing.
- true : return true.
- false : return false.
- on : turn on the LED.
- off : turn off the LED.
- blink : turn on and off the LED, once per second. You can specify the speed: 'blink 1000ms'
- var : syntax: 'var "my_var" ? my_action1 : my_action2'. execute my_action1 if my_var is true (non zero), execute my_action2 otherwise.
- var_equal : syntax: 'var_equal "my_var" 42 ? my_action1 : my_action2'. execute my_action1 if my_var equals 42, execute my_action2 otherwise.
- var_not_equal : syntax: 'var_not_equal "my_var" 42 ? my_action1 : my_action2'. execute my_action1 if my_var doesn't equal 42, execute my_action2 otherwise.
- var_smaller : syntax: 'var_smaller "my_var" 42 ? my_action1 : my_action2'. execute my_action1 if my_var is smaller than 42, execute my_action2 otherwise.
- var_greater : syntax: 'var_greater "my_var" 42 ? my_action1 : my_action2'. execute my_action1 if my_var is greater than 42, execute my_action2 otherwise.
- set : syntax: 'set "my_var" 42'. set my_var to 42. if the variable name starts with '$', the variable is global (ie the same for all decks): 'set "$myglobalvar"'.
- toggle : syntax: 'toggle "my_var"'. toggle my_var between true and false.
- cycle : syntax: 'cycle "my_var" 42'. increment my_var, and goes back to 0 when it reaches 42. 'cycle "my_var" -42' decrements my_var, and goes to 41 after it reached 0.
- param_equal : check if the value of the calling slider/encoder/button is equal to something: 'param_equal 50% ? key_lock off : pitch'
- param_greater : check if the value of the calling slider/encoder/button is greater than something: 'param_greater 0% ? sampler loop 200% : sampler loop 50%'
- param_smaller : check if the value of the calling slider/encoder/button is smaller than something: 'param_smaller 0% ? sampler loop 200% : sampler loop 50%'
- param_multiply : multiply the value of the calling slider/encoder/button by the given value: 'param_multiply 300% & effect slider'
- param_add : add the given value to the value of the calling slider/encoder/button
- param_invert : invert the value of the calling slider/encoder/button: 'param_invert & pitch_slider'
- param_mod : wrap the value of the calling slider/encoder if more than the given value
- param_pingpong : transform the value of the calling slider/encoder from a linear scale to a forth-and-back scale
- param_cast : cast the value of the previous query action into a new type: 'pitch_range & param_cast "percentage"'. Valid types are 'integer', 'float', 'percentage', 'ms', 'boolean', 'text'.
- action_deck : return true if the button calling this action is on the specified deck: 'action_deck 1 ? actionA : actionB'
- device_side : assign a different action for a button or slider of a device depending on which side of the device it is on: "device_side 'left' ? action_for_left : action_for_right". For more than 2-deck controllers, you can use "device_side 1 ? action1 : device_side 2 ? action2 ? device_side 3 ? action3 : etc..."
- loaded : return true if a song is loaded on the deck
- load_pulse : return a brief false then true again when a new song is loaded
- repeat : repeat the actions every x ms as long as the key is pressed: 'repeat 1000ms & browser_scroll +1' (default is 500ms if no speed is specified. Second parameter can specify a delay before repeating the next time, e.g: repeat 100ms 500ms & effect slider
- holding : execute different actions depending if the key is pressed for a long time or not: 'holding ? automix : mix_now'. you can specify the time ('holding 1000ms'), by default it's 500ms.
- up : execute different actions depending if the key if pressed or released: 'up ? action1 : action2'
- down : execute different actions depending if the key if pressed or released: 'down ? action1 : action2'
- isrepeat : execute different actions depending if the key is being repeated or if it's the first message (only keyboard shortcuts are repeated while held down): 'isrepeat ? nothing : goto_cue')
- video : open or close the video window
- video_crossfader : set the position of the video crossfader
- video_crossfader_link : link or unlink the video crossfader to the audio crossfader
- video_crossfader_auto : move the video crossfader automatically according to which side is playing, cueing, scratching, etc...
- video_transition : launch a transition from one video deck to the other. you can specify the duration of the transition: 'video_transition 1000ms'
- video_transition_select : select the plugin used for video transitions. you can specify by name ('video_transition_select "my_plugin"'), relative ('video_transition_select +1') or without parameters to open a popup window listing the available plugins
- video_transition_slider : move the n-th slider of the video transition plugin
- video_transition_button : push the n-th button of the video transition plugin
- video_fx : activate/deactivate the selected video effect
- video_fx_select : select a video effect plugin. you can specify by name ('video_fx_select "my_plugin"'), relative ('video_fx_select +1') or without parameters to open a popup window listing the available plugins
- video_fx_slider : move the n-th slider of the video effect plugin
- video_fx_button : push the n-th button of the video effect plugin
- video_fx_clear : deactivate all the active video effects
- video_fadetoblack : activate/deactivate fade-to-black on volume sliders
- videofile_link : link a new video to be used as image for the audio song currently on the specified deck. you can specify a filename ('videofile_link "my_video"'). if you don't give a parameter, the file currently selected in the browser is used. use 'videofile_link off' to remove the link.
- add_favoritefolder : make the selected folder a favorite folder (monitored folders).
- add_filterfolder : create a new filter folder.
- add_virtualfolder : create a new virtual folder (unmonitored folder).
- goto_last_folder : go back to the last browsed folder.
- browser_scroll : scroll through the songs or folders.
- browser_enter : if focus is on songs, load the selected song. if focus is on folders, change focus to songs.
- browser_folder : if focus is on songs, change focus to folders. if focus is on folders, open or close the subfolders of the selected folder.
- browser_window : change the active browser zone. 'browser_window "folders"', 'browser_window "songs"', 'browser_window "playlist"', 'browser_window "sidelist"', or 'browser_window +1'.
- search : put the keyboard focus in the search zone, or, if a text parameter is specified, search for this text.
- clear_search : clear the search string.
- edit_search : put the keyboard focus in the search zone but keep the actual search string.
- log_search : log the current search in the SearchLog.txt file, so you can easily search for your failed requests once the gig is over.
- browser_zoom : zoom or unzoom the browser to be displayed on the whole window.
- automix : start or stop the automatic playlist mixing.
- automix_skip : if automix is active, skip the actual song and mix to the next one in the playlist.
- playlist_options : display a drop-down with the list of options for the playlist.
- playlist_randomize : shuffle the order of the songs in the playlist.
- playlist_remove_played : remove from the playlist all the songs that have already been played since the software was launched.
- playlist_repeat : repeat (or stop to repeat) the playlist while automixing.
- playlist_clear : empty the playlist.
- playlist_save :save the playlist in a file.
- playlist_remove_duplicates : remove duplicate songs from the playlist.
- create_virtualfolder_from_playlist : save the playlist in a virtual folder.
- playlist_add : add to the playlist the songs selected in the browser.
- playlist_load_and_keep : load the first song in the playlist on the deck, but keep it in the playlist.
- playlist_load_and_remove : load the first song in the playlist on the deck, and remove it from the playlist.
- switch_sidelist_playlist : exchange the content of the playlist and the sidelist.
- sidelist_clear : clear the sidelist.
- sidelist_add : add to the sidelist the songs selected in the browser.
- sidelist_load_and_keep : load the first song from the sidelist.
- sidelist_load_and_remove : load the first song from the sidelist, and remove it from the sidelist.
- virtualfolder_add : add to the specified virtualfolder the songs selected in the browser. 'virtualfolder_add "my_vfolder"'. if no folder name is given, add to the last one.
- load : load the selected song on the deck. you can also specify a fullpath to load 'load "path_to_my_song"'.
- save_deck_set : set the current configuration (which song is loaded on which deck) in a file.
- load_deck_set : reload a previously saved deck_set file.
- file_info : open a window to edit many informations about the selected track.
- browsed_file_info : open a window to edit many informations about the selected track.
- prelisten : pre-listen the selected track.
- prelisten_output : set this deck to be used for the prelisten. Use 'prelisten_output "menu"' to display a context menu with the available outputs.
- prelisten_pos : move the position of the prelistening.
- edit_comment : open a window to edit the comment on the selected track.
- browser_sort : sort the browser files on the specified column name, e.g: 'browser_sort "bpm"' - Column names: Icon, Title, Author (Artist), Album, Genre, BPM, Key, Length, Bitrate, Year, Comment, PlayCount, FirstSeen, FirstPlay, LastPlay, Drive, Filepath, Filename, Filetype, Filesize, Filedate, LinkedVideo, KeyNumeric, Composer, BPMCompat, KeyCompat, Stars, User1, User2, LoadedOn
- browser_gotofolder : 'browser_gotofolder' goes to the folder containing the current file. 'browser_gotofolder "/my_path/my_folder"' goes to the specified folder. 'browser_gotofolder 4' goes to the fourth virtual/favorite folder.
- recurse_folder : display the content of both the selected folder and all its subfolders in the browser list.
- search_options : popup the list of search options. to set one directly, you can use 'search_options "composer" toggle' etc...
- view_options : popup the list of view options. to set one directly, you can use 'view_options "showkaraoke" on' etc...
- lock_panel : 'lock_panel "folders"' or 'lock_panel "playlist"'.
- beat_tap : tap on a few beats to set a new bpm for the song if the application didn't got it right on the first time.
- set_bpm : set the bpm of the song to the set value: 'set_bpm 129.3', or relative to the actual value: 'set_bpm 50%'.
- edit_bpm : open a window with tools to fine-tune the bpm of the song.
- adjust_cbg : adjust the beat grid. 'adjust_cbg +2' moves the start bar from 4:4. 'adjust_cbg +10%' moves the actual bars.
- goto_mixpoint : go to the specified mix point, from "StartTempo", "EndTempo", "StartCut", "EndCut", "StartFade", "EndFade".
- set_mixpoint : set the specified mix point to the actual pos, or to the specified pos.
- record : start recording the session.
- record_cut : cut the current recording to a new file (or new track if recording to CD)
- record_config : open the record configuration panel
- crossfader_curve : select the curve of the crossfader. enter a value to adjust the slope from a X curve (0%) to a inverted-U curve (100%). you can also specify common curves by name ("smooth", "full", "scratch", "cut", "disabled"). or you can draw your own curve, using a syntax like 'crossfader_curve "0=[1,0]/0.5=[1,1]/1=[0,1]"'.
- crossfader_hamster : invert the crossfader.
- show_pluginpage : show the specified plugin page: "Sound Effects", "Video Effects", "Video Transitions", "Others".
- unload : unload the song from the deck.
- not_played : don't mark the song on this deck as 'played'.
- clone_deck : clone the deck (load the same song on the other deck, and play it from the same position, ready for beat-juggling). You can specify which decks to clone from and to, e.g: deck 2 clone_deck 1 (Clones the song from deck 2 onto deck 1)
- clone_deck_nopitch : clone the deck (load the same song on the other deck, and play it from the same position, ready for beat-juggling), but do not match the pitch (for timecode turntable pitching).
- skin_panel : show or hide the named panel from the skin: 'skin_panel "my_panel" on'.
- multibutton : click on the named multibutton: 'multibutton "my_button"'.
- multibutton_select : open the selection menu for the named multibutton. if a second text parameter is provided after the name, use it as the new action to load in the multibutton: 'multibutton_select "my_button" "goto_cue 2 & play"'.
- mix_now : Smoothly crossfade from one side to the other, using beatsync if both songs have enough beat.
- mix_now_nosync : Smoothly crossfade from one side to the other.
- mix_next : if the non-playing deck has a song loaded that's already been played, load a new one from the playlist. then, smoothly crossfade from the playing deck to the other, using beatsync if both songs have enough beat.
- mix_next_sidelist : if the non-playing deck has a song loaded that's already been played, load a new one from the sidelist. then, smoothly crossfade from the playing deck to the other, using beatsync if both songs have enough beat.
- automix_dualdeck : enable or disable automix using both decks (deprecated).
- relay_play : enable or disable the decks to automatically start playing when the opposite deck reached its end
- fader_start : enable or disable fader start
- beat_juggle : alternatively jumps one beat forward and backward
- assign_controller : assign a specific controller to this deck. Example: 'deck 1 assign_controller "CDJ400" 2' assigns the second CDJ400 to deck 1.
- invert_controllers : invert the deck of the controllers.
- rescan_controllers : rescan for newly connected controllers.
- refresh_controller : refresh the display of the specified controller (or all if none specified).
- reinit_controller : reinit the specified controller (or all if none specified), going through the exit and init sequences (you can specify a delay between exit and init: 'reinit_controllers "mycontroller" 200ms'.
- menu : display a menu on the controller's screen, that allows to change the behaviour of the menu_buttons. you can navigate through the menu using the browser_scroll action'.
- menu_button : defines a button whose behaviour can be changed by a menu. Syntax: 'menu_button 1 "hotcue,sampler,effect,loop"'.
- show_text : display the text provided for a limited time (default 3 seconds). '$myvar$' in the text are replaced by the value of myvar. '$?myvar$' are replaced by 'on' or 'off'. '|' goes to new line. syntax: 'show_text "Shift:|Value=$?shift$" 5000ms'
- songpos_remain : get the remaining time in %. if used with a parameter (in % or ms), returns true if the time left is less or equal than the value: 'songpos_remain 500ms blink'.
- getfood : because no DJ should work on an empty stomach!
- open_help : open the user guide.
- is_pc : return true if the computer is a PC, false if it's a MAC (example: <panel visible="is_pc" />)
- is_mac : return true if the computer is a MAC, false if it's a PC
- dmx : show/hide the lights control window
- dmx_color : set the color program
- dmx_chase : set the chase program
- dmx_black : black all lights
- dmx_strobe : activate/deactivate the strobe
- dmx_flash : flash all lights
- dmx_setvalue : Set an individual dmx value. first parameter is channel, second is value
- sampler play : play the selected sample. syntax 'sampler play' plays the default sample. 'sampler 4 play' plays the fourth sampler slot.
- sampler play_stutter : play the selected sample. if already playing, restart from begining.
- sampler play_stop : play the selected sample if it's not already playing, or stop it if it's already playing.
- sampler stop : stop the selected sample. syntax 'sampler stop' stops the default sample. 'sampler 4 stop' stops the fourth sampler slot. 'sampler all stop' stops all samples.
- sampler volume : change the volume of the selected sample.
- sampler rec : on first press, start to record a new sample in the selected slot. on second press, stop to record.
- sampler start_rec : start to record a new sample in the selected slot.
- sampler stop_rec : stop to record the new sample.
- sampler abort_rec : abort the recording of the sample.
- sampler loop : put the sample in loop, or change the size of the loop: 'sampler default loop on' or 'sampler default loop 50%'.
- sampler pitched : lock or unlock the pitch of the sample on the current song.
- sampler beatlock : lock or unlock the phase of the sample on the current song.
- sampler options : popup the sample menu.
- sampler select : select which sample is the default sampler slot for that deck. syntax 'sampler select 5' selects the fifth sampler slot. 'sampler select +1' scrolls through the sampler slots. 'sampler select' open a popup menu to select the new default sampler slot.
- sampler load : load a new sample in the selected slot. 'sampler load "my_sample.vds"' loads a specified file. 'sampler load' open a selection window.
- sampler save : save the current sample in a file. 'sampler save "my_sample.vds"' saves in a specified file. 'sampler_save' open a selection window.
- sampler position : get the current position of the sample
- effect active : start or stop the effect. you can also specify an effect by name ('effect "my_effect" active on'), or use a different effect slot ('effect 3 active').
- effect select : select a new effect. you can specify the effect by name ('effect select "my_effect"'), or relative to the current effect ('effect select +1'). with no parameters ('effect select'), it will open a popup under the mouse with the list of available effects. you can also specify a different effect slot ('effect 4 select "my_effect"').
- effect slider : move the n-th slider on the given effect
- effect button : push the n-th button on the given effect
- get text : get some text. You can use the inverted apostrophe to query VDJScript results within the text: "get text 'You are listening to `get loaded_song "title"` at `volume` volume.". VDJScript returning booleans (buttons) will be displayed as "on" or "off". VDJScript returning values (sliders) will be displayed as a percentage. (you can also (but it's being deprecated in VDJ7) use % shortcuts for some common queries: "get text 'you are listening to %title by %author'")
- get display : get some text to display. depending on the latest action, it can be the name of an effect, the folder being browsed, the title of the current song, etc... for multiline displays, you can add the line number: "get display 1", "get display 2".
- get time : get the elapsed time (or remaining or total depending on "display_time"), in milliseconds. Use 'get time 1000' to get another unit than ms (1000=ms, 25=1/25th of seconds, 44100=frames, etc). Use "absolute" not to take the pitch into account. Use "elapsed", "remain" or "total" to bypass the setting of display_time. You can also return the position of cue points using 'get time "cue"' (Current cue point), 'get time "cue1"' (Cue point #1), etc. Or the loop in/out positions using 'get time "loopin"' or 'get time "looout"'
- get time_min : get the minutes of the elapsed time (or remaining or total, depending on "display_time"). use 'get time_min "absolute"' if you don't want to take the pitch variations in account.
- get time_sec : get the seconds of the elapsed time (or remaining or total, depending on "display_time").
- get time_ms : get the miliseconds of the elapsed time (or remaining or total, depending on "display_time").
- get totaltime_min : get the minutes of the length of the song.
- get totaltime_sec : get the seconds of the length of the song.
- get totaltime_ms : get the miliseconds of the length of the song.
- get pitch : get the pitch from -100% to +100%, centered on 0%
- get pitch_value : get the pitch from 0% to 200%, centered on 100%
- get pitch_zero : is true if the pitch is zero, with an optional precision parameter: "get pitch_zero 0.1%"
- get bpm : get the bpm of the song.
- get beat : get the intensity of the beat at the current position (0% to 100%).
- get beat2 : get the intensity of the beats from both decks at the same time.
- get beatgrid : get the intensity of the beat based on the beatgrid (100% if on the beat, 0% if halfway between to beats).
- get beatpos : get the current position in beatgrid coordinate (27.5 would mean halfway between the 27th and 28th beats in the song).
- get beatdiff : get the distance between the beat from this deck and the beat from the master deck. 50% means the deck are aligned, 0% means this deck is late half a beat, 100% means is ahead half a beat.
- get level : get the value of the incoming vu-meter. don't specify a deck if you want the master mix vu-meter.
- get level_left : get the value of the incoming vu-meter for the left balance.
- get level_right : get the value of the incoming vu-meter for the right balance.
- get vu_meter : get the value of the outgoing vu-meter. don't specify a deck if you want the master output vu-meter.
- get vu_meter_left : get the value of the outgoing vu-meter for the left balance.
- get vu_meter_right : get the value of the outgoing vu-meter for the right balance.
- get rotation : get the angle of the disc
- get arm : get the position of the turntable arm
- get position : get the position in the song
- get cpu : get the CPU usage
- get automix : get the position of the automix crossfader
- get volume : get the volume applied by both the volume sliders and the crossfader
- get timecode_quality : get the timecode quality
- get deck : get the number of the deck.
- get defaultdeck : get the number of the default deck
- get leftdeck : get the number of the left deck
- get rightdeck : get the number of the right deck
- get activedeck : get the number of the sync master deck
- get decks : get the total number of decks of the current skin (can also be used with argument to compare: 'get decks 4' returns true if 'get decks' would return 4, false otherwise)
- get var : get the numeric value of the specified variable
- get active_loop : get the number of beats in the current loop
- get loop : get the number of beats in the current loop or the default loop size if no loop is active
- get cue : get the number of the last used cue
- get key_modifier : get the number of semitone up or down currently applied to the song
- get beat_num : get the number of the current beat in the 4:4 bar. 'get beat_num' returns the beat number from 1 to 4. 'get beat_num 2' return true if the song is on a second beat. 'get beat_num 2 16' returns true if the song is on the second beat of a 4:16 bar.
- get beat_bar : get the position in % in the 4:4 bar (or in 4:16 if called with 'get beat_bar 16')
- get filepath : get the filepath of the song on the deck
- get filesize : get the filesize of the song on the deck
- get songlength : get the length in seconds of the song on the deck
- get version : get the version of VirtualDJ (in text)
- get build : get the version of VirtualDJ (in numeric)
- get membershp : return 1 if the user is a premium member
- get hwnd : return the Windows handle to VirtualDJ's window
- get vdj_folder : return the home folder of VirtualDJ.
- get browsed_folder : get the name of the folder selected in the browser
- get browsed_song : get a property from the currently browsed file: "get browsed_song 'title'", "get browsed_song 'playcount'", etc...
- get loaded_song : get a property from the song loaded on the deck: "deck 2 get loaded_song 'album'" - Properties: Icon, Title, Author (Artist), Album, Genre, BPM, Key, Length, Bitrate, Year, Comment, PlayCount, FirstSeen, FirstPlay, LastPlay, Drive, Filepath, Filename, Filetype, Filesize, Filedate, LinkedVideo, KeyNumeric, Composer, BPMCompat, KeyCompat, Stars, User1, User2, LoadedOn
- get automix_song : get a property from the next song in automix: "get automix_song 'title'"
- get sampler_slot : get the number of the sampler slot selected on this deck
- get constant : return the given constant: 'get constant 75%' always returns 75%
- get sampler_used : get the number of active sampler slots
- get effects_used : get the number of active effect plugins
- get effect_name : get the name of the currently selected effect
- get effect_button_name : get the name of the xth button of the current selected effect
- get effect_slider_name : get the name of the xth slider of the current selected effect
- get sample_name : get the name of the currently selected sample
- get sample_slot_name : get the name of the sample in slot X: "get sample_slot_name 7"
- get videofx_name : get the name of the currently selected video effect
- get videotrans_name : get the name of the currently selected video transition
- get record_message : get the message displayed on the record page
- get record_min : get the minutes of the recording time
- get record_sec : get the seconds of the recording time
- get record_ms : get the milliseconds of the recording time
- get hastimecode : returns true if the current soundconfig includes some timecode inputs
- get haslinein : returns true if the current soundconfig includes some linein inputs
- get hasmic : returns true if the current soundconfig includes a mic input
- get hasinput : returns true if the current soundconfig includes any input (mic, linein or timecode)
- get controller_name : return the name(s) of the controller(s) assigned to this deck, e.g: deck 1 get controller_name
Specific Verbs:
- djc_button : Press the Nth DJ Console button, e.g: djc_button 2
- djc_button_slider : Adjust the parameter of the effect, sample or loop assigned to the last used DJ Console button (Or Nth parameter, e.g: djc_button_slider 2)
- djc_button_popup : Show menu to select the action assigned to the Nth DJ Console button, e.g: djc_button_popup 6 (For a skin, use format="%djc_button6")
- djc_button_select : 'djc_button_select', ' djc_button_select "deckA" ', ' djc_button_select "deckB" '
- djc_shift : Toggle the state of the SHIFT button on the DJ Console (Also toggles the skin panel of the DJ Console skins)
- djc_panel : Toggle the button panel of the DJ Console skins between non-shifted and shifted buttons.
- denon_platter : 'denon_platter 1', 'denon_platter 2'
- get denon_platter : 'get denon_platter "on" ', ' get denon_platter "reverse" ', ' get denon_platter "speedup" ', ' get denon_platter "speeddown" '
- ns7_platter : 'ns7_platter', 'ns7_platter "timestamp" '
- get ns7_platter : 'get ns7_platter "on" ', ' get ns7_platter "reverse" ', ' get ns7_platter "speed" ', ' get ns7_platter "rpm" '
Back to VDJscript
Wiki HOME