Scripting actions and notifications (list): Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
| (75 intermediate revisions by the same user not shown) | |||
| Line 2: | Line 2: | ||
Actions are called by the script itself. So the direction is SCRIPT -> FUTUREDECKS.<br/> | Actions are called by the script itself. So the direction is SCRIPT -> FUTUREDECKS.<br/> | ||
Here is a list of the | Here is a list of the actions you can call: | ||
=== Global actions (sliders/knobs) === | === Global actions (sliders/knobs) === | ||
{| | {|class="wikitable" | ||
! align="left"| Name | |||
! Description | |||
|- | |||
|setCrossfader | |setCrossfader | ||
|- | |- | ||
| Line 19: | Line 22: | ||
|- | |- | ||
|setMasterBalance | |setMasterBalance | ||
|- | |||
|setMasterVolume | |||
|- | |- | ||
|setMasterGain | |setMasterGain | ||
|- | |||
|setMonitorVolume | |||
|- | |- | ||
|setMonitorGain | |setMonitorGain | ||
|- | |- | ||
|setPreview | |setPreview | ||
|- | |||
|setMicVolume | |||
|- | |- | ||
|setMicGain | |setMicGain | ||
| Line 34: | Line 43: | ||
|setMicEqHigh | |setMicEqHigh | ||
|- | |- | ||
|lbMoveCursor | |lbMoveCursor || list/browser move selection (increment) | ||
|list/browser move selection (increment) | |||
|- | |- | ||
|setPitchRange | |setPitchRange || 1 = 4%; 2 = 8%; 3 = 16%; 4 = 24%; 5 = 32%; 6 = 50%; | ||
|1 = 4%; 2 = 8%; 3 = 16%; 4 = 24%; 5 = 32%; 6 = 50%; | |- | ||
|setSamplerMasterVolume | |||
|- | |||
|setBoothVolume | |||
|- | |||
|setMic2OnAir | |||
|- | |||
|setMic2Volume | |||
|- | |||
|setMic2EqLow | |||
|- | |||
|setMic2EqMid | |||
|- | |||
|setMic2EqHigh | |||
|- | |- | ||
|} | |} | ||
=== Global actions (buttons/switches) === | === Global actions (buttons/switches) === | ||
{| | {|class="wikitable" | ||
! align="left"| Name | |||
! Description | |||
|- | |||
|reload_skin || this is very useful when you map a skin and don't want to restart the software everytime you modify/edit the skin xml file (you can even assign a keyboard shortcut for it) | |||
|- | |||
|reload_midi || this is very useful when you map a MIDI/HID hardware controller and don't want to restart the software everytime you modify/edit the controller js file | |||
|- | |||
|minimize | |minimize | ||
|- | |- | ||
| Line 50: | Line 78: | ||
|closeapp | |closeapp | ||
|- | |- | ||
|lbToggleSelect | |lbToggleSelect || list/browser toggle selection | ||
|- | |- | ||
|lbBrowserSelect | |lbBrowserSelect || browser select | ||
|- | |- | ||
|lbListSelect | |lbListSelect || list select | ||
|- | |- | ||
|listInsert | |listInsert | ||
| Line 111: | Line 139: | ||
|- | |- | ||
|reloadSkin | |reloadSkin | ||
|- | |||
|reloadMidi | |||
|- | |- | ||
|phonesSplit | |phonesSplit | ||
| Line 141: | Line 171: | ||
|- | |- | ||
|samplerPlay | |samplerPlay | ||
|- | |||
|samplerStop | |||
|- | |||
|samplerInstant || plays only while you keep the button pressed | |||
|- | |- | ||
|samplerVolume | |samplerVolume | ||
|- | |||
|sampler1 .. sampler8 || these are used to mirror the UI sampler play buttons thus they can work in normal, stutter and instant mode (as configured in the software) | |||
|- | |- | ||
|hidePanel | |hidePanel | ||
| Line 162: | Line 198: | ||
|} | |} | ||
=== Deck actions === | === Deck actions (sliders/knobs) === | ||
{|class="wikitable" | |||
! align="left"| Name | |||
! Description | |||
|- | |||
|setDeckVolume | |||
|- | |||
|setDeckPitch | |||
|- | |||
|setDeckPitchKey | |||
|- | |||
|setDeckPos | |||
|- | |||
|setDeckCutoff | |||
|- | |||
|setDeckGain | |||
|- | |||
|setDeckEqLow | |||
|- | |||
|setDeckEqMid | |||
|- | |||
|setDeckEqHigh | |||
|- | |||
|searchDeckJW || implemented as increments mode (deck,+/-inc,totalPositionsPerCompleteRevolution) | |||
|- | |||
|scratchDeckJW || implemented as increments mode (deck,+/-inc,totalPositionsPerCompleteRevolution) | |||
|- | |||
|moveDeckJogWheel || implemented as increments mode (deck,+/-inc,totalPositionsPerCompleteRevolution) | |||
|- | |||
|holdDeckJogWheel | |||
|- | |||
|moveDeckPitch || implemented as increments mode (deck,+/-inc) | |||
|- | |||
|deckFxPanDW || fx sliders (dry-wet, param1, param2) | |||
|- | |||
|deckFxFlangerDW | |||
|- | |||
|deckFxPhaserDW | |||
|- | |||
|deckFxReverbDW | |||
|- | |||
|deckFxEchoDW | |||
|- | |||
|deckFxDelayDW | |||
|- | |||
|deckFxBeatwawDW | |||
|- | |||
|deckFxPanP1 | |||
|- | |||
|deckFxFlangerP1 | |||
|- | |||
|deckFxPhaserP1 | |||
|- | |||
|deckFxReverbP1 | |||
|- | |||
|deckFxEchoP1 | |||
|- | |||
|deckFxDelayP1 | |||
|- | |||
|deckFxBeatwawP1 | |||
|- | |||
|deckFxPanP2 | |||
|- | |||
|deckFxFlangerP2 | |||
|- | |||
|deckFxPhaserP2 | |||
|- | |||
|deckFxReverbP2 | |||
|- | |||
|deckFxEchoP2 | |||
|- | |||
|deckFxDelayP2 | |||
|- | |||
|deckFxBeatwawP2 | |||
|- | |||
|deckFx1DryWet || toggle effects banks | |||
|- | |||
|deckFx1Param1 | |||
|- | |||
|deckFx1Param2 | |||
|- | |||
|deckFx2DryWet | |||
|- | |||
|deckFx2Param1 | |||
|- | |||
|deckFx2Param2 | |||
|- | |||
|} | |||
=== Deck actions (buttons/switches) === | |||
{|class="wikitable" | |||
! align="left"| Name | |||
! Description | |||
|- | |||
|deckLBLoad || list/browser load | |||
|- | |||
|deckFxSel | |||
|- | |||
|deckFxAdd | |||
|- | |||
|deckSync | |||
|- | |||
|deckMatch | |||
|- | |||
|deckMonitor | |||
|- | |||
|deckBoost | |||
|- | |||
|deckMute | |||
|- | |||
|deckInMaster | |||
|- | |||
|deckEditBpm | |||
|- | |||
|deckSaveBpm | |||
|- | |||
|deckTapBpm | |||
|- | |||
|deckBackToTop | |||
|- | |||
|deckSetCue | |||
|- | |||
|deckCue | |||
|- | |||
|deckPlayPause | |||
|- | |||
|deckCuePlay | |||
|- | |||
|deckBendDown | |||
|- | |||
|deckBendUp | |||
|- | |||
|deckUnload | |||
|- | |||
|deckResetPitch | |||
|- | |||
|deckLoadNext | |||
|- | |||
|deckLoopInEnd | |||
|- | |||
|deckLoopExit | |||
|- | |||
|deckLoopExitOrReloop | |||
|- | |||
|deckLoopReloop | |||
|- | |||
|deckLoopPrev | |||
|- | |||
|deckLoopNext | |||
|- | |||
|deckLoopLess | |||
|- | |||
|deckLoopMore | |||
|- | |||
|deckLoop1_16 | |||
|- | |||
|deckLoop1_8 | |||
|- | |||
|deckLoop1_4 | |||
|- | |||
|deckLoop1_2 | |||
|- | |||
|deckLoop1 | |||
|- | |||
|deckLoop2 | |||
|- | |||
|deckLoop4 | |||
|- | |||
|deckLoop8 | |||
|- | |||
|deckLoop16 | |||
|- | |||
|deckLoop32 | |||
|- | |||
|deckLoopNormal64ths | |||
|- | |||
|deckLoopInstant64ths | |||
|- | |||
|deckLoopSong | |||
|- | |||
|deckSlowBpm | |||
|- | |||
|deckReverse | |||
|- | |||
|deckEqLowKill | |||
|- | |||
|deckEqMidKill | |||
|- | |||
|deckEqHighKill | |||
|- | |||
|deckSearchLeft | |||
|- | |||
|deckSearchRight | |||
|- | |||
|deckScratch | |||
|- | |||
|deckSkipBeatPrev | |||
|- | |||
|deckSkipBeatNext | |||
|- | |||
|deckSkipBarPrev | |||
|- | |||
|deckSkipBarNext | |||
|- | |||
|deckKeyLock | |||
|- | |||
|deckAnalogIn | |||
|- | |||
|deckTimecodeIn | |||
|- | |||
|deckFxEdit1 | |||
|- | |||
|deckFxEdit2 | |||
|- | |||
|deckFxEdit3 | |||
|- | |||
|deckFxEdit4 | |||
|- | |||
|deckFxLoad1 | |||
|- | |||
|deckFxLoad2 | |||
|- | |||
|deckFxLoad3 | |||
|- | |||
|deckFxLoad4 | |||
|- | |||
|deckFxOn1 | |||
|- | |||
|deckFxOn2 | |||
|- | |||
|deckFxOn3 | |||
|- | |||
|deckFxOn4 | |||
|- | |||
|deckFxPan | |||
|- | |||
|deckFxFlanger | |||
|- | |||
|deckFxPhaser | |||
|- | |||
|deckFxReverb | |||
|- | |||
|deckFxEcho | |||
|- | |||
|deckFxDelay | |||
|- | |||
|deckFxBeatwaw | |||
|- | |||
|deckFxTremolo | |||
|- | |||
|deckCueIn | |||
|- | |||
|deckCueOut | |||
|- | |||
|deckCuePos1 | |||
|- | |||
|deckCuePos2 | |||
|- | |||
|deckCuePos3 | |||
|- | |||
|deckCuePos4 | |||
|- | |||
|deckCuePos5 | |||
|- | |||
|deckCuePos6 | |||
|- | |||
|deckCuePos7 | |||
|- | |||
|deckCuePos8 | |||
|- | |||
|deckCuePos9 | |||
|- | |||
|deckCuePos10 | |||
|- | |||
|deckCuePos1Clear | |||
|- | |||
|deckCuePos2Clear | |||
|- | |||
|deckCuePos3Clear | |||
|- | |||
|deckCuePos4Clear | |||
|- | |||
|deckCuePos5Clear | |||
|- | |||
|deckCuePos6Clear | |||
|- | |||
|deckCuePos7Clear | |||
|- | |||
|deckCuePos8Clear | |||
|- | |||
|deckCuePos9Clear | |||
|- | |||
|deckCuePos10Clear | |||
|- | |||
|deckCuePosClear | |||
|- | |||
|deckFx1Prev || toggle effects banks | |||
|- | |||
|deckFx1Next | |||
|- | |||
|deckFx1SetOn | |||
|- | |||
|deckFx1ToggleOn | |||
|- | |||
|deckSetFx1 | |||
|- | |||
|deckFx2Prev | |||
|- | |||
|deckFx2Next | |||
|- | |||
|deckFx2SetOn | |||
|- | |||
|deckFx2ToggleOn | |||
|- | |||
|deckSetFx2 | |||
|- | |||
|setDeckMonitor | |||
|- | |||
|setDeckAnalogIn | |||
|- | |||
|deckSetCFAssign || assign the deck to the crossfader: to the left side, right side or simply skip the crossfader (THRU); input values: 0 (left), 1 (THRU), 2 (right)) | |||
|- | |||
|deckCFAssignToLeft | |||
|- | |||
|deckCFAssignToThru | |||
|- | |||
|deckCFAssignToRight | |||
|- | |||
|deckInstr || only instruments stem(s) | |||
|- | |||
|deckVocal || only vocal stem | |||
|- | |||
|deckStem1 .. 4 || order of stems: vocal, drums, bass, other instruments | |||
|- | |||
|deckStemMomentary1 .. 4 || same as above but only as the button is pressed | |||
|- | |||
|deckSetStem1 .. 4 | |||
|- | |||
|deckKeyDown | |||
|- | |||
|deckKeyUp | |||
|- | |||
|deckSyncKey | |||
|- | |||
|deckSyncKeyReset | |||
|- | |||
|deckQuantize | |||
|- | |||
|deckSlip | |||
|- | |||
|setTempValue | |||
|- | |||
|deckInstantLoad | |||
|- | |||
|deckLoopAdjustLeft | |||
|- | |||
|deckLoopAdjustRight | |||
|- | |||
|deckLoopAdjustBoth | |||
|- | |||
|} | |||
== Notifications == | |||
Notifications are pushed to the script by FutureDecks. So the direction is FUTUREDECKS -> SCRIPT.<br/> | |||
Here is a list of the notifications you will receive: | |||
=== Global notifications === | |||
{|class="wikitable" | |||
! align="left"| Name | |||
! Description | |||
|- | |||
|sampler1 .. sampler8 || normal (classic) notification: 0 if no sample is loaded, 1 if a sample is loaded (optionally, you can also use param2 (float): 0.0 paused, 1.0 playing) | |||
|- | |||
|samplerBlink1 .. samplerBlink8 || same as above but also with automatic blinking: 0 (off) no sample loaded, 1 (on) sample loaded and paused, 0/1 (blinking) sample playing | |||
|- | |||
|onAir || *not in FutureDJ | |||
|- | |||
|talkOver || *not in FutureDJ | |||
|- | |||
|autoDj || *not in FutureDJ | |||
|- | |||
|random || *not in FutureDJ | |||
|- | |||
|recording | |||
|- | |||
|lbMode || 0 current list, 1 browser, 2 sidelist/automix list | |||
|- | |||
|lbBrowsing || signal only (whenever the user browse for tracks using the controller - useful if you want to change to the browser/lists panel in a skin - you can then use the justLoaded notification to go back to the initial panel) | |||
|- | |||
|pitchRange | |||
|- | |||
|} | |||
=== Deck notifications === | |||
{|class="wikitable" | |||
! align="left"| Name | |||
! Description | |||
|- | |||
|beatPos || beat position into the bar (eg. 1,2,3,4) | |||
|- | |||
|play | |||
|- | |||
|cue | |||
|- | |||
|keyLock | |||
|- | |||
|pitchIs0 | |||
|- | |||
|loopSize | |||
|- | |||
|loopIn | |||
|- | |||
|looping | |||
|- | |||
|loopBlink || off (no loopIn, no looping); blink (loopIn, no looping yet); on (no loopIn, looping); | |||
|- | |||
|monitor | |||
|- | |||
|onbeat | |||
|- | |||
|cuepos1 | |||
|- | |||
|cuepos2 | |||
|- | |||
|cuepos3 | |||
|- | |||
|cuepos4 .. cuepos16 || *not in FutureDJ | |||
|- | |||
|cueposin || *not in FutureDJ | |||
|- | |||
|cueposout || *not in FutureDJ | |||
|- | |||
|artist || *not in FutureDJ | |||
|- | |||
|title || *not in FutureDJ | |||
|- | |||
|analogIn || *not in FutureDJ | |||
|- | |||
|timecodeIn || *not in FutureDJ | |||
|- | |||
|justLoaded || *not in FutureDJ -- 1,2 (loading in progress), 4 (loading ended), 8 (progress), 16 (detection started), 32 (detection finished); | |||
|- | |||
|slicepos || slicer / slicer loop positions (what's active 1..8) | |||
|- | |||
|reverse | |||
|- | |||
|fxPan | |||
|- | |||
|fxFlanger | |||
|- | |||
|fxPhaser | |||
|- | |||
|fxReverb | |||
|- | |||
|fxEcho | |||
|- | |||
|fxDelay | |||
|- | |||
|fxBeatwaw | |||
|- | |||
|fxCutoffLP | |||
|- | |||
|fxCutoffHP | |||
|- | |||
|fxBitCrusher | |||
|- | |||
|fxTremolo | |||
|- | |||
|fx1 || the current effect (0-based) index in bank 1 | |||
|- | |||
|fx2 | |||
|- | |||
|fx1On || if the current effect in bank 1 is on or off | |||
|- | |||
|fx2On | |||
|- | |||
|killLow | |||
|- | |||
|killMid | |||
|- | |||
|killHigh | |||
|- | |||
|micKillLow || *not in FutureDJ | |||
|- | |||
|micKillMid || *not in FutureDJ | |||
|- | |||
|micKillHigh || *not in FutureDJ | |||
|- | |||
|sequencer | |||
|- | |||
|stem1 .. 4 | |||
|- | |||
|stemInstr || only instruments | |||
|- | |||
|stemVocal || only vocal | |||
|- | |||
|defaultLoop | |||
|- | |||
|quantize | |||
|- | |||
|slip | |||
|- | |||
|} | |||
== Values (getValue) == | |||
These are like the notifications but instead of the script waiting for them to be sent, it can request their value anytime. So the direction is SCRIPT -> FUTUREDECKS.<br/> | |||
Here is a list of the values you can request (using getValue): | |||
=== Global values === | |||
{|class="wikitable" | |||
! align="left"| Name | |||
! Description | |||
|- | |||
|onAir | |||
|- | |||
|talkOver | |||
|- | |||
|autoDj | |||
|- | |||
|random | |||
|- | |||
|lbMode | |||
|- | |||
|sampler1loaded | |||
|- | |||
|sampler2loaded | |||
|- | |||
|sampler3loaded | |||
|- | |||
|sampler4loaded | |||
|- | |||
|sampler5loaded | |||
|- | |||
|sampler6loaded | |||
|- | |||
|sampler7loaded | |||
|- | |||
|sampler8loaded | |||
|- | |||
|sampler1playing | |||
|- | |||
|sampler2playing | |||
|- | |||
|sampler3playing | |||
|- | |||
|sampler4playing | |||
|- | |||
|sampler5playing | |||
|- | |||
|sampler6playing | |||
|- | |||
|sampler7playing | |||
|- | |||
|sampler8playing | |||
|- | |||
|crossfader | |||
|- | |||
|cfAudio | |||
|- | |||
|cfVideo | |||
|- | |||
|pitchRange | |||
|- | |||
|monitorGain || [-40..0dB] | |||
|} | |||
=== Deck values === | |||
{|class="wikitable" | |||
! align="left"| Name | |||
! Description | |||
|- | |||
|bpm || float | |||
|- | |||
|currentBpm || float | |||
|- | |||
|pitch || 100ths of % [-5000..+5000] | |||
|- | |||
|timeElapsed || float [s] | |||
|- | |||
|timeRemain || float [s] | |||
|- | |||
|timeTotal | |||
|- | |||
|artist-title || string (UTF-8) | |||
|- | |||
|artist || string (UTF-8) | |||
|- | |||
|title || string (UTF-8) | |||
|- | |||
|jogWheelAngle || float [0..359.(9)] | |||
|- | |||
|beatDiff || float [-1..1] | |||
|- | |||
|play | |||
|- | |||
|cue | |||
|- | |||
|keyLock | |||
|- | |||
|pitchIs0 | |||
|- | |||
|loopSize | |||
|- | |||
|looping | |||
|- | |||
|loopIn | |||
|- | |||
|monitor | |||
|- | |||
|cuepos1 | |||
|- | |||
|cuepos2 | |||
|- | |||
|cuepos3 | |||
|- | |||
|cuepos4 | |||
|- | |||
|cuepos5 | |||
|- | |||
|cuepos6 | |||
|- | |||
|cuepos7 | |||
|- | |||
|cuepos8 | |||
|- | |||
|cuepos9 | |||
|- | |||
|cuepos10 | |||
|- | |||
|onbeat | |||
|- | |||
|vumeterDeck || float [dB] | |||
|- | |||
|vumeterDeckL || float [dB] | |||
|- | |||
|vumeterDeckR || float [dB] | |||
|- | |||
|vumeterMic || float [dB] | |||
|- | |||
|vumeterMasterL || float [dB] | |||
|- | |||
|vumeterMasterR || float [dB] | |||
|- | |||
|analogIn | |||
|- | |||
|timecodeIn | |||
|- | |||
|reverse | |||
|- | |||
|micKillLow | |||
|- | |||
|micKillMid | |||
|- | |||
|micKillHigh | |||
|- | |||
|killLow | |||
|- | |||
|killMid | |||
|- | |||
|killHigh | |||
|- | |||
|fxPan | |||
|- | |||
|fxFlanger | |||
|- | |||
|fxPhaser | |||
|- | |||
|fxReverb | |||
|- | |||
|fxEcho | |||
|- | |||
|fxDelay | |||
|- | |||
|fxBeatwaw | |||
|- | |||
|fxPanDryWet | |||
|- | |||
|fxFlangerDryWet | |||
|- | |||
|fxPhaserDryWet | |||
|- | |||
|fxReverbDryWet | |||
|- | |||
|fxEchoDryWet | |||
|- | |||
|fxDelayDryWet | |||
|- | |||
|fxBeatwawDryWet | |||
|- | |||
|fxPanParam1 | |||
|- | |||
|fxFlangerParam1 | |||
|- | |||
|fxPhaserParam1 | |||
|- | |||
|fxReverbParam1 | |||
|- | |||
|fxEchoParam1 | |||
|- | |||
|fxDelayParam1 | |||
|- | |||
|fxBeatwawParam1 | |||
|- | |||
|fxPanParam2 | |||
|- | |||
|fxFlangerParam2 | |||
|- | |||
|fxPhaserParam2 | |||
|- | |||
|fxReverbParam2 | |||
|- | |||
|fxEchoParam2 | |||
|- | |||
|- | |||
|fxDelayParam2 | |||
|- | |||
|fxBeatwawParam2 | |||
|- | |||
|fx1 || current effect for bank 1 | |||
|- | |||
|fx2 || current effect for bank 2 (0 flanger, 1 echo, 2 beatwaw, 3 reverb, 4 delay, 5 pan, 6 phaser; etc. Note that the order or the actual effects list might change.) | |||
|- | |||
|fx1Total || how many effects to choose from in bank 1 | |||
|- | |||
|fx2Total || how many effects to choose from in bank 2 | |||
|- | |||
|fx1DryWet | |||
|- | |||
|fx2DryWet | |||
|- | |||
|fx1Param1 | |||
|- | |||
|fx2Param1 | |||
|- | |||
|fx1Param2 | |||
|- | |||
|fx2Param2 | |||
|- | |||
|originalKey || original musical key index starting with 0 (none, A, A#, B, C, C#, D, D#, E, F, F#, G, G#, Am, A#m, Bm, Cm, C#m, Dm, D#m, Em, Fm, F#m, Gm, G#m) | |||
|- | |||
|currentKey || current musical key index (the same as above if the key was not altered) | |||
|- | |||
|key || current key change (eg. 1 semitone) | |||
|- | |||
|stem1 .. 4 | |||
|- | |||
|markerColor | |||
|- | |||
|markerName | |||
|- | |||
|markerType | |||
|- | |||
|markerPos | |||
|- | |||
|defaultLoop | |||
|- | |||
|quantize | |||
|- | |||
|slip | |||
|- | |||
|originalKeyName | |||
|- | |||
|currentKeyName | |||
|- | |||
|originalKeyColor | |||
|- | |||
|currentKeyColor | |||
|- | |||
|loopInPos | |||
|- | |||
|loopOutPos | |||
|- | |||
|tempValue | |||
|- | |||
|} | |||
Latest revision as of 11:43, 27 April 2024
Actions
Actions are called by the script itself. So the direction is SCRIPT -> FUTUREDECKS.
Here is a list of the actions you can call:
Global actions (sliders/knobs)
| Name | Description |
|---|---|
| setCrossfader | |
| setCFCurve | |
| setCFAudio | |
| setCFVideo | |
| setCuePflMix | |
| setCuePgmMix | |
| setMasterBalance | |
| setMasterVolume | |
| setMasterGain | |
| setMonitorVolume | |
| setMonitorGain | |
| setPreview | |
| setMicVolume | |
| setMicGain | |
| setMicEqLow | |
| setMicEqMid | |
| setMicEqHigh | |
| lbMoveCursor | list/browser move selection (increment) |
| setPitchRange | 1 = 4%; 2 = 8%; 3 = 16%; 4 = 24%; 5 = 32%; 6 = 50%; |
| setSamplerMasterVolume | |
| setBoothVolume | |
| setMic2OnAir | |
| setMic2Volume | |
| setMic2EqLow | |
| setMic2EqMid | |
| setMic2EqHigh |
Global actions (buttons/switches)
| Name | Description |
|---|---|
| reload_skin | this is very useful when you map a skin and don't want to restart the software everytime you modify/edit the skin xml file (you can even assign a keyboard shortcut for it) |
| reload_midi | this is very useful when you map a MIDI/HID hardware controller and don't want to restart the software everytime you modify/edit the controller js file |
| minimize | |
| maximize | |
| closeapp | |
| lbToggleSelect | list/browser toggle selection |
| lbBrowserSelect | browser select |
| lbListSelect | list select |
| listInsert | |
| listInsertAll | |
| listNew | |
| listDelete | |
| listEdit | |
| listExport | |
| listLoad | |
| listSaveAs | |
| listAdd | |
| listAddDir | |
| listRemove | |
| listClear | |
| listRandom | |
| listShuffle | |
| listDragUp | |
| listDragDown | |
| listDragTop | |
| listDragBottom | |
| listSelect | |
| record | |
| mixNext | |
| setAutoDj | |
| previewSong | |
| searchStop | |
| autoDjMore | |
| autoDjLess | |
| limiter | |
| reloadSkin | |
| reloadMidi | |
| phonesSplit | |
| syncLock | |
| masterFxAdd | |
| masterFxSel | |
| samplesSel | |
| micFxSel | |
| micFxAdd | |
| micTalkOver | |
| micOnAir | |
| setMicTalkOver | |
| setMicOnAir | |
| micEqLowKill | |
| micEqMidKill | |
| micEqHighKill | |
| samplerPlay | |
| samplerStop | |
| samplerInstant | plays only while you keep the button pressed |
| samplerVolume | |
| sampler1 .. sampler8 | these are used to mirror the UI sampler play buttons thus they can work in normal, stutter and instant mode (as configured in the software) |
| hidePanel | |
| showPanel | |
| showPrevPanel | |
| showNextPanel | |
| sleep | |
| showHelp | |
| showCfg | |
| setPhonesSplit |
Deck actions (sliders/knobs)
| Name | Description |
|---|---|
| setDeckVolume | |
| setDeckPitch | |
| setDeckPitchKey | |
| setDeckPos | |
| setDeckCutoff | |
| setDeckGain | |
| setDeckEqLow | |
| setDeckEqMid | |
| setDeckEqHigh | |
| searchDeckJW | implemented as increments mode (deck,+/-inc,totalPositionsPerCompleteRevolution) |
| scratchDeckJW | implemented as increments mode (deck,+/-inc,totalPositionsPerCompleteRevolution) |
| moveDeckJogWheel | implemented as increments mode (deck,+/-inc,totalPositionsPerCompleteRevolution) |
| holdDeckJogWheel | |
| moveDeckPitch | implemented as increments mode (deck,+/-inc) |
| deckFxPanDW | fx sliders (dry-wet, param1, param2) |
| deckFxFlangerDW | |
| deckFxPhaserDW | |
| deckFxReverbDW | |
| deckFxEchoDW | |
| deckFxDelayDW | |
| deckFxBeatwawDW | |
| deckFxPanP1 | |
| deckFxFlangerP1 | |
| deckFxPhaserP1 | |
| deckFxReverbP1 | |
| deckFxEchoP1 | |
| deckFxDelayP1 | |
| deckFxBeatwawP1 | |
| deckFxPanP2 | |
| deckFxFlangerP2 | |
| deckFxPhaserP2 | |
| deckFxReverbP2 | |
| deckFxEchoP2 | |
| deckFxDelayP2 | |
| deckFxBeatwawP2 | |
| deckFx1DryWet | toggle effects banks |
| deckFx1Param1 | |
| deckFx1Param2 | |
| deckFx2DryWet | |
| deckFx2Param1 | |
| deckFx2Param2 |
Deck actions (buttons/switches)
| Name | Description |
|---|---|
| deckLBLoad | list/browser load |
| deckFxSel | |
| deckFxAdd | |
| deckSync | |
| deckMatch | |
| deckMonitor | |
| deckBoost | |
| deckMute | |
| deckInMaster | |
| deckEditBpm | |
| deckSaveBpm | |
| deckTapBpm | |
| deckBackToTop | |
| deckSetCue | |
| deckCue | |
| deckPlayPause | |
| deckCuePlay | |
| deckBendDown | |
| deckBendUp | |
| deckUnload | |
| deckResetPitch | |
| deckLoadNext | |
| deckLoopInEnd | |
| deckLoopExit | |
| deckLoopExitOrReloop | |
| deckLoopReloop | |
| deckLoopPrev | |
| deckLoopNext | |
| deckLoopLess | |
| deckLoopMore | |
| deckLoop1_16 | |
| deckLoop1_8 | |
| deckLoop1_4 | |
| deckLoop1_2 | |
| deckLoop1 | |
| deckLoop2 | |
| deckLoop4 | |
| deckLoop8 | |
| deckLoop16 | |
| deckLoop32 | |
| deckLoopNormal64ths | |
| deckLoopInstant64ths | |
| deckLoopSong | |
| deckSlowBpm | |
| deckReverse | |
| deckEqLowKill | |
| deckEqMidKill | |
| deckEqHighKill | |
| deckSearchLeft | |
| deckSearchRight | |
| deckScratch | |
| deckSkipBeatPrev | |
| deckSkipBeatNext | |
| deckSkipBarPrev | |
| deckSkipBarNext | |
| deckKeyLock | |
| deckAnalogIn | |
| deckTimecodeIn | |
| deckFxEdit1 | |
| deckFxEdit2 | |
| deckFxEdit3 | |
| deckFxEdit4 | |
| deckFxLoad1 | |
| deckFxLoad2 | |
| deckFxLoad3 | |
| deckFxLoad4 | |
| deckFxOn1 | |
| deckFxOn2 | |
| deckFxOn3 | |
| deckFxOn4 | |
| deckFxPan | |
| deckFxFlanger | |
| deckFxPhaser | |
| deckFxReverb | |
| deckFxEcho | |
| deckFxDelay | |
| deckFxBeatwaw | |
| deckFxTremolo | |
| deckCueIn | |
| deckCueOut | |
| deckCuePos1 | |
| deckCuePos2 | |
| deckCuePos3 | |
| deckCuePos4 | |
| deckCuePos5 | |
| deckCuePos6 | |
| deckCuePos7 | |
| deckCuePos8 | |
| deckCuePos9 | |
| deckCuePos10 | |
| deckCuePos1Clear | |
| deckCuePos2Clear | |
| deckCuePos3Clear | |
| deckCuePos4Clear | |
| deckCuePos5Clear | |
| deckCuePos6Clear | |
| deckCuePos7Clear | |
| deckCuePos8Clear | |
| deckCuePos9Clear | |
| deckCuePos10Clear | |
| deckCuePosClear | |
| deckFx1Prev | toggle effects banks |
| deckFx1Next | |
| deckFx1SetOn | |
| deckFx1ToggleOn | |
| deckSetFx1 | |
| deckFx2Prev | |
| deckFx2Next | |
| deckFx2SetOn | |
| deckFx2ToggleOn | |
| deckSetFx2 | |
| setDeckMonitor | |
| setDeckAnalogIn | |
| deckSetCFAssign | assign the deck to the crossfader: to the left side, right side or simply skip the crossfader (THRU); input values: 0 (left), 1 (THRU), 2 (right)) |
| deckCFAssignToLeft | |
| deckCFAssignToThru | |
| deckCFAssignToRight | |
| deckInstr | only instruments stem(s) |
| deckVocal | only vocal stem |
| deckStem1 .. 4 | order of stems: vocal, drums, bass, other instruments |
| deckStemMomentary1 .. 4 | same as above but only as the button is pressed |
| deckSetStem1 .. 4 | |
| deckKeyDown | |
| deckKeyUp | |
| deckSyncKey | |
| deckSyncKeyReset | |
| deckQuantize | |
| deckSlip | |
| setTempValue | |
| deckInstantLoad | |
| deckLoopAdjustLeft | |
| deckLoopAdjustRight | |
| deckLoopAdjustBoth |
Notifications
Notifications are pushed to the script by FutureDecks. So the direction is FUTUREDECKS -> SCRIPT.
Here is a list of the notifications you will receive:
Global notifications
| Name | Description |
|---|---|
| sampler1 .. sampler8 | normal (classic) notification: 0 if no sample is loaded, 1 if a sample is loaded (optionally, you can also use param2 (float): 0.0 paused, 1.0 playing) |
| samplerBlink1 .. samplerBlink8 | same as above but also with automatic blinking: 0 (off) no sample loaded, 1 (on) sample loaded and paused, 0/1 (blinking) sample playing |
| onAir | *not in FutureDJ |
| talkOver | *not in FutureDJ |
| autoDj | *not in FutureDJ |
| random | *not in FutureDJ |
| recording | |
| lbMode | 0 current list, 1 browser, 2 sidelist/automix list |
| lbBrowsing | signal only (whenever the user browse for tracks using the controller - useful if you want to change to the browser/lists panel in a skin - you can then use the justLoaded notification to go back to the initial panel) |
| pitchRange |
Deck notifications
| Name | Description |
|---|---|
| beatPos | beat position into the bar (eg. 1,2,3,4) |
| play | |
| cue | |
| keyLock | |
| pitchIs0 | |
| loopSize | |
| loopIn | |
| looping | |
| loopBlink | off (no loopIn, no looping); blink (loopIn, no looping yet); on (no loopIn, looping); |
| monitor | |
| onbeat | |
| cuepos1 | |
| cuepos2 | |
| cuepos3 | |
| cuepos4 .. cuepos16 | *not in FutureDJ |
| cueposin | *not in FutureDJ |
| cueposout | *not in FutureDJ |
| artist | *not in FutureDJ |
| title | *not in FutureDJ |
| analogIn | *not in FutureDJ |
| timecodeIn | *not in FutureDJ |
| justLoaded | *not in FutureDJ -- 1,2 (loading in progress), 4 (loading ended), 8 (progress), 16 (detection started), 32 (detection finished); |
| slicepos | slicer / slicer loop positions (what's active 1..8) |
| reverse | |
| fxPan | |
| fxFlanger | |
| fxPhaser | |
| fxReverb | |
| fxEcho | |
| fxDelay | |
| fxBeatwaw | |
| fxCutoffLP | |
| fxCutoffHP | |
| fxBitCrusher | |
| fxTremolo | |
| fx1 | the current effect (0-based) index in bank 1 |
| fx2 | |
| fx1On | if the current effect in bank 1 is on or off |
| fx2On | |
| killLow | |
| killMid | |
| killHigh | |
| micKillLow | *not in FutureDJ |
| micKillMid | *not in FutureDJ |
| micKillHigh | *not in FutureDJ |
| sequencer | |
| stem1 .. 4 | |
| stemInstr | only instruments |
| stemVocal | only vocal |
| defaultLoop | |
| quantize | |
| slip |
Values (getValue)
These are like the notifications but instead of the script waiting for them to be sent, it can request their value anytime. So the direction is SCRIPT -> FUTUREDECKS.
Here is a list of the values you can request (using getValue):
Global values
| Name | Description |
|---|---|
| onAir | |
| talkOver | |
| autoDj | |
| random | |
| lbMode | |
| sampler1loaded | |
| sampler2loaded | |
| sampler3loaded | |
| sampler4loaded | |
| sampler5loaded | |
| sampler6loaded | |
| sampler7loaded | |
| sampler8loaded | |
| sampler1playing | |
| sampler2playing | |
| sampler3playing | |
| sampler4playing | |
| sampler5playing | |
| sampler6playing | |
| sampler7playing | |
| sampler8playing | |
| crossfader | |
| cfAudio | |
| cfVideo | |
| pitchRange | |
| monitorGain | [-40..0dB] |
Deck values
| Name | Description |
|---|---|
| bpm | float |
| currentBpm | float |
| pitch | 100ths of % [-5000..+5000] |
| timeElapsed | float [s] |
| timeRemain | float [s] |
| timeTotal | |
| artist-title | string (UTF-8) |
| artist | string (UTF-8) |
| title | string (UTF-8) |
| jogWheelAngle | float [0..359.(9)] |
| beatDiff | float [-1..1] |
| play | |
| cue | |
| keyLock | |
| pitchIs0 | |
| loopSize | |
| looping | |
| loopIn | |
| monitor | |
| cuepos1 | |
| cuepos2 | |
| cuepos3 | |
| cuepos4 | |
| cuepos5 | |
| cuepos6 | |
| cuepos7 | |
| cuepos8 | |
| cuepos9 | |
| cuepos10 | |
| onbeat | |
| vumeterDeck | float [dB] |
| vumeterDeckL | float [dB] |
| vumeterDeckR | float [dB] |
| vumeterMic | float [dB] |
| vumeterMasterL | float [dB] |
| vumeterMasterR | float [dB] |
| analogIn | |
| timecodeIn | |
| reverse | |
| micKillLow | |
| micKillMid | |
| micKillHigh | |
| killLow | |
| killMid | |
| killHigh | |
| fxPan | |
| fxFlanger | |
| fxPhaser | |
| fxReverb | |
| fxEcho | |
| fxDelay | |
| fxBeatwaw | |
| fxPanDryWet | |
| fxFlangerDryWet | |
| fxPhaserDryWet | |
| fxReverbDryWet | |
| fxEchoDryWet | |
| fxDelayDryWet | |
| fxBeatwawDryWet | |
| fxPanParam1 | |
| fxFlangerParam1 | |
| fxPhaserParam1 | |
| fxReverbParam1 | |
| fxEchoParam1 | |
| fxDelayParam1 | |
| fxBeatwawParam1 | |
| fxPanParam2 | |
| fxFlangerParam2 | |
| fxPhaserParam2 | |
| fxReverbParam2 | |
| fxEchoParam2 | |
| fxDelayParam2 | |
| fxBeatwawParam2 | |
| fx1 | current effect for bank 1 |
| fx2 | current effect for bank 2 (0 flanger, 1 echo, 2 beatwaw, 3 reverb, 4 delay, 5 pan, 6 phaser; etc. Note that the order or the actual effects list might change.) |
| fx1Total | how many effects to choose from in bank 1 |
| fx2Total | how many effects to choose from in bank 2 |
| fx1DryWet | |
| fx2DryWet | |
| fx1Param1 | |
| fx2Param1 | |
| fx1Param2 | |
| fx2Param2 | |
| originalKey | original musical key index starting with 0 (none, A, A#, B, C, C#, D, D#, E, F, F#, G, G#, Am, A#m, Bm, Cm, C#m, Dm, D#m, Em, Fm, F#m, Gm, G#m) |
| currentKey | current musical key index (the same as above if the key was not altered) |
| key | current key change (eg. 1 semitone) |
| stem1 .. 4 | |
| markerColor | |
| markerName | |
| markerType | |
| markerPos | |
| defaultLoop | |
| quantize | |
| slip | |
| originalKeyName | |
| currentKeyName | |
| originalKeyColor | |
| currentKeyColor | |
| loopInPos | |
| loopOutPos | |
| tempValue |