diff options
author | Frank Breitling <frank.breitling@gmx.de> | 2020-11-01 23:19:16 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-01 23:19:16 +0100 |
commit | 81f5e67e21abac0618b57360d60ef306b0cf0325 (patch) | |
tree | e71b697dd210217284b01c8300ea191928d220d5 /res | |
parent | 9a3a1e7c2e025f716b22c2044b6bccb84b001691 (diff) |
Pioneer DDJ-200: Add support for 4 decks (#3193)
Co-authored-by: Jan Holthuis <holthuis.jan@googlemail.com>
Diffstat (limited to 'res')
-rw-r--r-- | res/controllers/Pioneer DDJ-200.midi.xml | 1145 | ||||
-rw-r--r-- | res/controllers/Pioneer-DDJ-200-scripts.js | 344 |
2 files changed, 826 insertions, 663 deletions
diff --git a/res/controllers/Pioneer DDJ-200.midi.xml b/res/controllers/Pioneer DDJ-200.midi.xml index f8f79c6215..16c86be206 100644 --- a/res/controllers/Pioneer DDJ-200.midi.xml +++ b/res/controllers/Pioneer DDJ-200.midi.xml @@ -3,7 +3,7 @@ <info> <name>Pioneer DDJ-200</name> <author>Dan Giddins, Frank.Breitling at gmx.de</author> - <description>2-deck USB and Bluetooth MIDI controller.</description> + <description>2-deck USB and Bluetooth MIDI controller with support for 4-deck mode.</description> <forum>https://mixxx.discourse.group/t/pioneer-ddj-200-mapping/18259</forum> <manual>pioneer_ddj_200</manual> </info> @@ -13,36 +13,133 @@ </scriptfiles> <controls> <control> + <group>[Master]</group> + <key>crossfader</key> + <description>Master crossfader</description> + <status>0xB6</status> + <midino>0x1F</midino> + <options> + <soft-takeover/> + <fourteen-bit-msb/> + </options> + </control> + <control> + <group>[Master]</group> + <key>crossfader</key> + <description>Master crossfader</description> + <status>0xB6</status> + <midino>0x3F</midino> + <options> + <soft-takeover/> + <fourteen-bit-lsb/> + </options> + </control> + + <control> + <group>[Master]</group> + <key>DDJ200.headmix</key> + <description>Headphones master as headMix knob</description> + <status>0x96</status> + <midino>0x63</midino> + <options> + <script-binding/> + </options> + </control> + <control> + <group>[Master]</group> + <key>DDJ200.toggleFourDeckMode</key> + <description>Headphones master + shift</description> + <status>0x96</status> + <midino>0x78</midino> + <options> + <script-binding/> + </options> + </control> + + <control> + <group>[Channel1]</group> + <key>DDJ200.shiftLeft</key> + <description>Deck 1: Shift pressed</description> + <status>0x90</status> + <midino>0x3F</midino> + <options> + <script-binding/> + </options> + </control> + <control> <group>[Channel2]</group> - <key>sync_enabled</key> - <description>Deck 2: Tap to sync tempo (and phase with quantize enabled), hold to enable permanent sync</description> + <key>DDJ200.shiftRight</key> + <description>Deck 2: Shift pressed</description> <status>0x91</status> - <midino>0x58</midino> + <midino>0x3F</midino> <options> - <normal/> + <script-binding/> + </options> + </control> + + <control> + <group>[Channel1]</group> + <key>DDJ200.pfl</key> + <description>Deck 1: Headphone listen (pfl) button</description> + <status>0x90</status> + <midino>0x54</midino> + <options> + <script-binding/> + </options> + </control> + <control> + <group>[Channel1]</group> + <key>DDJ200.toggleDeck</key> + <description>Deck 1: Headphone (pfl) + shift</description> + <status>0x90</status> + <midino>0x68</midino> + <options> + <script-binding/> + </options> + </control> + + <control> + <group>[Channel2]</group> + <key>DDJ200.pfl</key> + <description>Deck 2: Headphone listen (pfl) button</description> + <status>0x91</status> + <midino>0x54</midino> + <options> + <script-binding/> + </options> + </control> + <control> + <group>[Channel2]</group> + <key>DDJ200.toggleDeck</key> + <description>Deck 2: Headphone (pfl) + shift</description> + <status>0x91</status> + <midino>0x68</midino> + <options> + <script-binding/> </options> </control> + <control> <group>[Channel1]</group> - <key>sync_enabled</key> + <key>DDJ200.syncEnabled</key> <description>Deck 1: Tap to sync tempo (and phase with quantize enabled), hold to enable permanent sync</description> <status>0x90</status> <midino>0x58</midino> <options> - <normal/> + <script-binding/> </options> </control> <control> - <group>[Master]</group> - <key>crossfader</key> - <description>Master crossfader</description> - <status>0xB6</status> - <midino>0x3F</midino> + <group>[Channel2]</group> + <key>DDJ200.syncEnabled</key> + <description>Deck 2: Tap to sync tempo (and phase with quantize enabled), hold to enable permanent sync</description> + <status>0x91</status> + <midino>0x58</midino> <options> - <soft-takeover/> - <fourteen-bit-lsb/> + <script-binding/> </options> </control> + <control> <group>[Channel2]</group> <key>DDJ200.seek</key> @@ -63,6 +160,7 @@ <script-binding/> </options> </control> + <control> <group>[AutoDJ]</group> <key>enabled</key> @@ -83,6 +181,7 @@ <normal/> </options> </control> + <control> <group>[Channel2]</group> <key>DDJ200.touch</key> @@ -103,18 +202,44 @@ <script-binding/> </options> </control> + + <control> - <group>[EqualizerRack1_[Channel2]_Effect1]</group> - <key>parameter2</key> - <description>Deck 2: Adjust Mid EQ</description> - <status>0xB1</status> - <midino>0x2B</midino> + <group>[EqualizerRack1_[Channel1]_Effect1]</group> + <!--key>parameter1</key--> + <key>DDJ200.eq</key> + <description>Deck 1: Adjust Low EQ</description> + <status>0xB0</status> + <midino>0x0F</midino> <options> - <fourteen-bit-lsb/> + <script-binding/> + <!--fourteen-bit-msb/--> </options> </control> + <!--control> + <group>[EqualizerRack1_[Channel1]_Effect1]</group> + <key>parameter1</key> + <description>Deck 1: Adjust Low EQ</description> + <status>0xB0</status> + <midino>0x2F</midino> + <options> + <fourteen-bit-lsb/> + </options> + </control--> <control> <group>[EqualizerRack1_[Channel1]_Effect1]</group> + <!--key>parameter2</key--> + <key>DDJ200.eq</key> + <description>Deck 1: Adjust Mid EQ</description> + <status>0xB0</status> + <midino>0x0B</midino> + <options> + <script-binding/> + <!--fourteen-bit-msb/--> + </options> + </control> + <!--control> + <group>[EqualizerRack1_[Channel1]_Effect1]</group> <key>parameter2</key> <description>Deck 1: Adjust Mid EQ</description> <status>0xB0</status> @@ -122,47 +247,122 @@ <options> <fourteen-bit-lsb/> </options> - </control> + </control--> <control> - <group>[EqualizerRack1_[Channel2]_Effect1]</group> - <key>parameter3</key> - <description>Deck 2: Adjust High EQ</description> - <status>0xB1</status> + <group>[EqualizerRack1_[Channel1]_Effect1]</group> + <key>DDJ200.eq</key> + <!--key>parameter3</key--> + <description>Deck 1: Adjust High EQ</description> + <status>0xB0</status> <midino>0x07</midino> <options> - <fourteen-bit-msb/> + <script-binding/> + <!--fourteen-bit-msb/--> </options> </control> - <control> + <!--control> <group>[EqualizerRack1_[Channel1]_Effect1]</group> <key>parameter3</key> <description>Deck 1: Adjust High EQ</description> <status>0xB0</status> - <midino>0x07</midino> + <midino>0x27</midino> <options> - <fourteen-bit-msb/> + <fourteen-bit-lsb/> + </options> + </control--> + + <control> + <group>[QuickEffectRack1_[Channel1]]</group> + <key>DDJ200.super1</key> + <description>Super Knob (msb): control linked effect</description> + <status>0xB6</status> + <midino>0x17</midino> + <!--midino>lsb: 0x37</midino--> + <options> + <script-binding/> + <!--fourteen-bit-msb/--> </options> </control> + <control> - <group>[Channel2]</group> - <key>bpm_tap</key> - <description>Deck 2: BPM tap button</description> - <status>0x91</status> - <midino>0x60</midino> + <group>[EqualizerRack1_[Channel2]_Effect1]</group> + <!--key>parameter1</key--> + <key>DDJ200.eq</key> + <description>Deck 2: Adjust Low EQ</description> + <status>0xB1</status> + <midino>0x0F</midino> <options> - <normal/> + <script-binding/> + <!--fourteen-bit-msb/--> + </options> + </control> + <!--control> + <group>[EqualizerRack1_[Channel1]_Effect1]</group> + <key>parameter1</key> + <description>Deck 2: Adjust Low EQ</description> + <status>0xB1</status> + <midino>0x2F</midino> + <options> + <fourteen-bit-lsb/> + </options> + </control--> + <control> + <group>[EqualizerRack1_[Channel2]_Effect1]</group> + <!--key>parameter2</key--> + <key>DDJ200.eq</key> + <description>Deck 2: Adjust Mid EQ</description> + <status>0xB1</status> + <midino>0x0B</midino> + <options> + <script-binding/> + <!--fourteen-bit-msb/--> + </options> + </control> + <!--control> + <group>[EqualizerRack1_[Channel2]_Effect1]</group> + <key>parameter2</key> + <description>Deck 2: Adjust Mid EQ</description> + <status>0xB1</status> + <midino>0x2B</midino> + <options> + <fourteen-bit-lsb/> + </options> + </control--> + <control> + <group>[EqualizerRack1_[Channel2]_Effect1]</group> + <!--key>parameter3</key--> + <key>DDJ200.eq</key> + <description>Deck 2: Adjust High EQ</description> + <status>0xB1</status> + <midino>0x07</midino> + <options> + <script-binding/> + <!--fourteen-bit-msb/--> </options> </control> + <!--control> + <group>[EqualizerRack1_[Channel2]_Effect1]</group> + <key>parameter3</key> + <description>Deck 2: Adjust High EQ</description> + <status>0xB1</status> + <midino>0x27</midino> + <options> + <fourteen-bit-lsb/> + </options> + </control--> + <control> <group>[QuickEffectRack1_[Channel2]]</group> - <key>super1</key> + <key>DDJ200.super1</key> <description>Quick Effect: Quick Effect Super Knob (control linked effect parameters)</description> <status>0xB6</status> <midino>0x18</midino> <options> - <fourteen-bit-msb/> + <script-binding/> + <!--fourteen-bit-msb/--> </options> </control> + <control> <group>[Channel1]</group> <key>bpm_tap</key> @@ -175,136 +375,171 @@ </control> <control> <group>[Channel2]</group> - <key>volume</key> - <description>Deck 2: Volume Fader</description> - <status>0xB1</status> - <midino>0x33</midino> + <key>bpm_tap</key> + <description>Deck 2: BPM tap button</description> + <status>0x91</status> + <midino>0x60</midino> <options> - <fourteen-bit-lsb/> + <normal/> </options> </control> + <control> <group>[Channel1]</group> - <key>volume</key> + <!--key>volume</key--> + <key>DDJ200.volumeMSB</key> <description>Deck 1: Volume Fader</description> <status>0xB0</status> - <midino>0x33</midino> + <midino>0x13</midino> <options> - <fourteen-bit-lsb/> + <script-binding/> + <!--fourteen-bit-msb/--> </options> </control> <control> - <group>[Channel2]</group> - <key>cue_gotoandstop</key> - <description>Deck 2: Go to cue point and stop</description> - <status>0x91</status> - <midino>0x48</midino> + <group>[Channel1]</group> + <key>DDJ200.volumeLSB</key> + <description>Deck 1: Volume Fader</description> + <status>0xB0</status> + <midino>0x33</midino> <options> - <normal/> + <script-binding/> + <!--fourteen-bit-lsb/--> </options> </control> <control> - <group>[Channel1]</group> - <key>cue_gotoandstop</key> - <description>Deck 1: Go to cue point and stop</description> - <status>0x90</status> - <midino>0x48</midino> + <group>[Channel2]</group> + <key>DDJ200.volumeMSB</key> + <description>Deck 2: Volume Fader</description> + <status>0xB1</status> + <midino>0x13</midino> <options> - <normal/> + <script-binding/> + <!--fourteen-bit-msb/--> </options> </control> <control> - <group>[EqualizerRack1_[Channel2]_Effect1]</group> - <key>parameter1</key> - <description>Deck 2: Adjust Low EQ</description> + <group>[Channel2]</group> + <key>DDJ200.volumeLSB</key> + <description>Deck 2: Volume Fader</description> <status>0xB1</status> - <midino>0x2F</midino> + <midino>0x33</midino> <options> - <fourteen-bit-lsb/> + <script-binding/> + <!--fourteen-bit-lsb/--> </options> </control> + <control> - <group>[EqualizerRack1_[Channel1]_Effect1]</group> - <key>parameter1</key> - <description>Deck 1: Adjust Low EQ</description> - <status>0xB0</status> - <midino>0x2F</midino> + <group>[Channel1]</group> + <key>DDJ200.play</key> + <description>Deck 1: Play button</description> + <status>0x90</status> + <midino>0x0B</midino> <options> - <fourteen-bit-lsb/> + <script-binding/> </options> </control> <control> <group>[Channel2]</group> - <key>play</key> + <key>DDJ200.play</key> <description>Deck 2: Play button</description> <status>0x91</status> <midino>0x0B</midino> <options> - <normal/> + <script-binding/> + </options> + </control> + + <control> + <group>[Channel1]</group> + <!--key>cue_default</key--> + <key>DDJ200.cueDefault</key> + <description>Deck 1: Cue button</description> + <status>0x90</status> + <midino>0x0C</midino> + <options> + <script-binding/> </options> </control> <control> <group>[Channel2]</group> - <key>rate</key> - <description>Deck 2: Playback speed control</description> - <status>0xB1</status> - <midino>0x20</midino> + <key>DDJ200.cueDefault</key> + <description>Deck 2: Cue button</description> + <status>0x91</status> + <midino>0x0C</midino> <options> - <soft-takeover/> - <fourteen-bit-lsb/> + <script-binding/> </options> </control> <control> <group>[Channel1]</group> - <key>play</key> - <description>Deck 1: Play button</description> + <key>DDJ200.cueGotoandstop</key> + <description>Deck 1: Go to cue point and stop</description> <status>0x90</status> - <midino>0x0B</midino> + <midino>0x48</midino> <options> - <normal/> + <script-binding/> + </options> + </control> + <control> + <group>[Channel2]</group> + <key>DDJ200.cueGotoandstop</key> + <description>Deck 2: Go to cue point and stop</description> + <status>0x91</status> + <midino>0x48</midino> + <options> + <script-binding/> </options> </control> + <control> <group>[Channel1]</group> - <key>rate</key> + <key>DDJ200.rateMSB</key> <description>Deck 1: Playback speed control</description> <status>0xB0</status> - <midino>0x20</midino> + <midino>0x00</midino> <options> + <script-binding/> <soft-takeover/> - <fourteen-bit-lsb/> + <!--fourteen-bit-msb/--> </options> </control> <control> - <group>[Channel2]</group> - <key>cue_default</key> - <description>Deck 2: Cue button</description> - <status>0x91</status> - <midino>0x0C</midino> + <group>[Channel1]</group> + <key>DDJ200.rateLSB</key> + <description>Deck 1: Playback speed control</description> + <status>0xB0</status> + <midino>0x20</midino> <options> - <normal/> + <soft-takeover/> + <script-binding/> + <!--fourteen-bit-lsb/--> </options> </control> <control> - <group>[Channel1]</group> - <key>cue_default</key> - <description>Deck 1: Cue button</description> - <status>0x90</status> - <midino>0x0C</midino> + <group>[Channel2]</group> + <key>DDJ200.rateMSB</key> + <description>Deck 2: Playback speed control</description> + <status>0xB1</status> + <midino>0x00</midino> <options> - <normal/> + <script-binding/> + <!--fourteen-bit-msb/--> </options> </control> <control> - <group>[QuickEffectRack1_[Channel1]]</group> - <key>super1</key> - <description>Quick Effect: Quick Effect Super Knob (control linked effect parameters)</description> - <status>0xB6</status> - <midino>0x37</midino> + <group>[Channel2]</group> + <key>DDJ200.rateLSB</key> + <description>Deck 2: Playback speed control</description> + <status>0xB1</status> + <midino>0x20</midino> <options> - <fourteen-bit-lsb/> + <script-binding/> + <!--fourteen-bit-lsb/--> </options> </control> + <control> <group>[Channel2]</group> <key>DDJ200.jog</key> @@ -345,573 +580,361 @@ <script-binding/> </options> </control> - <control> - <group>[Master]</group> - <key>crossfader</key> - <description>Master crossfader</description> - <status>0xB6</status> - <midino>0x1F</midino> - <options> - <soft-takeover/> - <fourteen-bit-msb/> - </options> - </control> - <control> - <group>[Master]</group> - <key>DDJ200.headmix</key> - <description>Headphones master button as headMix knob</description> - <status>0x96</status> - <midino>0x63</midino> - <options> - <script-binding/> - </options> - </control> + + <control> <group>[Channel2]</group> - <key>pfl</key> - <description>Deck 2: Headphone listen (pfl) button</description> + <key>cue_set</key> + <description>Deck 2: Set cue point</description> <status>0x91</status> - <midino>0x54</midino> + <midino>0x47</midino> <options> <normal/> </options> </control> <control> <group>[Channel1]</group> - <key>pfl</key> - <description>Deck 1: Headphone listen (pfl) button</description> + <key>cue_set</key> + <description>Deck 1: Set cue point</description> <status>0x90</status> - <midino>0x54</midino> + <midino>0x47</midino> <options> <normal/> </options> </control> - <control> - <group>[EqualizerRack1_[Channel2]_Effect1]</group> - <key>parameter2</key> - <description>Deck 2: Adjust Mid EQ</description> - <status>0xB1</status> - <midino>0x0B</midino> - <options> - <fourteen-bit-msb/> - </options> - </control> - <control> - <group>[EqualizerRack1_[Channel1]_Effect1]</group> - <key>parameter2</key> - <description>Deck 1: Adjust Mid EQ</description> - <status>0xB0</status> - <midino>0x0B</midino> - <options> - <fourteen-bit-msb/> - </options> - </control> + +<!-- ##### Hotcues ##### --> <control> <group>[Channel1]</group> - <key>hotcue_1_activate</key> - <description>Deck 1: Set, preview from or jump to hotcue 1</description> + <key>DDJ200.hotcueNActivate</key> + <description>Hotcue 1, Deck 1: Set, preview, jump to</description> <status>0x97</status> <midino>0x00</midino> <options> - <normal/> + <script-binding/> </options> </control> <control> <group>[Channel1]</group> - <key>hotcue_2_activate</key> - <description>Deck 1: Set, preview from or jump to hotcue 2</description> + <key>DDJ200.hotcueNActivate</key> + <description>Hotcue 2, Deck 1: Set, preview, jump to</description> <status>0x97</status> <midino>0x01</midino> <options> - <normal/> - </options> - </control> - <control> - <group>[Channel2]</group> - <key>hotcue_1_activate</key> - <description>Deck 2: Set, preview from of jump to hotcue 1</description> - <status>0x99</status> - <midino>0x00</midino> - <options> - <normal/> - </options> - </control> - <control> - <group>[Channel1]</group> - <key>hotcue_1_clear</key> - <description>Deck 1: Clear hotcue 1</description> - <status>0x98</status> - <midino>0x00</midino> - <options> - <normal/> + <script-binding/> </options> </control> <control> <group>[Channel1]</group> - <key>hotcue_3_activate</key> - <description>Deck 1: Set, preview from or jump to hotcue 3</description> + <key>DDJ200.hotcueNActivate</key> + <description>Hotcue 3, Deck 1: Set, preview, jump to</description> <status>0x97</status> <midino>0x02</midino> <options> - <normal/> - </options> - </control> - <control> - <group>[Channel2]</group> - <key>hotcue_1_clear</key> - <description>Deck 2: Clear hotcue 1</description> - <status>0x9A</status> - <midino>0x00</midino> - <options> - <normal/> - </options> - </control> - <control> - <group>[EqualizerRack1_[Channel2]_Effect1]</group> - <key>parameter3</key> - <description>Deck 2: Adjust High EQ</description> - <status>0xB1</status> - <midino>0x27</midino> - <options> - <fourteen-bit-lsb/> - </options> - </control> - <control> - <group>[Channel2]</group> - <key>hotcue_2_activate</key> - <description>Deck 2: Set, preview from of jump to hotcue 2</description> - <status>0x99</status> - <midino>0x01</midino> - <options> - <normal/> + <script-binding/> </options> </control> <control> - <group>[EqualizerRack1_[Channel1]_Effect1]</group> - <key>parameter3</key> - <description>Deck 1: Adjust High EQ</description> - <status>0xB0</status> - <midino>0x27</midino> + <group>[Channel1]</group> + <key>DDJ200.hotcueNActivate</key> + <description>Hotcue 4, Deck 1: Set, preview, jump to</description> + <status>0x97</status> + <midino>0x03</midino> <options> - <fourteen-bit-lsb/> + <script-binding/> </options> </control> <control> <group>[Channel1]</group> - <key>hotcue_2_clear</key> - <description>Deck 1: Clear hotcue 2</description> - <status>0x98</status> - <midino>0x01</midino> + <key>DDJ200.hotcueNActivate</key> + <description>Hotcue 5, Deck 1: Set, preview, jump to</description> + <status>0x97</status> + <midino>0x04</midino> <options> - <normal/> + <script-binding/> </options> </control> <control> - <group>[Channel2]</group> - <key>volume</key> - <description>Deck 2: Volume Fader</description> - <status>0xB1</status> - <midino>0x13</midino> + <group>[Channel1]</group> + <key>DDJ200.hotcueNActivate</key> + <description>Hotcue 6, Deck 1: Set, preview, jump to</description> + <status>0x97</status> + <midino>0x05</midino> <options> - <fourteen-bit-msb/> + <script-binding/> </options> </control> <control> <group>[Channel1]</group> - <key>hotcue_4_activate</key> - <description>Deck 1: Set, preview from or jump to hotcue 4</description> + <key>DDJ200.hotcueNActivate</key> + <description>Hotcue 7, Deck 1: Set, preview, jump to</description> <status>0x97</status> - <midino>0x03</mi |