Mixxx  est un logiciel libre de DJing. La Numark DJ2GO est une console DJ USB bon marché.

Mixxx est un logiciel libre de DJing très complet; il permet par exemple de gérer deux sorties audio différentes (pour peu que l'on ait deux cartes sons): une pour la sono, l'autre pour le casque. La Numark DJ2GO est une console DJ USB bon marché; elle offre les contrôleurs de base sous un format très compact.

Malheureusement, le logiciel propriétaire fourni avec la DJ2GO est une version "light" bien moins intéressante que Mixxx, et aucun fichier de "mapping" n'existe pour ce contrôleur au niveau du logiciel Mixxx.

Supporter les développeurs

Après quelques essais et erreurs, en partant d'un fichier fourni par la communauté d'utilisateurs pour un autre modèle Numark, et de l'outil d'édition inclus à Mixxx 1.10.0, j'ai pu créer un fichier de "mapping" qui permet d'utiliser le contrôleur sans difficulté.

J'ai donc complété la page wiki de mix décrivant les contrôleur supportés, et créé une page dédiée à la DJ2GO en y plaçant le contenu du fichier de mapping.

Liens utiles

Page wiki

Presentation

This is the .midi.xml file for the Numark DJ2GO affordable DJ midi controller (http://www.numark.com/product/dj2go). The file is a modification of the Numark NS7 provided with Mixxx 1.10.0 Mac (10.6.x) and modified using the Midi wizard.

Customisation

I remove several parameters related to the original file and not suited to the DJ2GO, but not (yet) all

I made some choices related to my preferences:

  • Pitch - of each channel has been mapped to Low filter (on / off)
  • Pitch + of each channel has been mapped to Low filter (on / off)
  • Cue of each channel has been mapped to Flanger (on / off)

XML file installation for MacOSX

  • Copy paste the XML file below in a text editor, save it with the following name: “Numark DJ2GO (OSX).midi.xml”
  • Go to the Application folder, right-clik on the Mixxx.app and select “Open the packet” a new Finder window will open
  • Move the xml file to the new open window under “Contents > Resources > midi”
  • Start Mixx, go to preferences: you should be able to see and select the mapping

XML file

<MixxxMIDIPreset mixxxVersion=“1.10.0+” schemaVersion=“1”>

  <controller id="Numark DJ2Go">
      <scriptfiles>
          <file functionprefix="NumarkMixTrack" filename="Numark-MixTrack-scripts.js"/>
      </scriptfiles>
      <controls>
          <control>
              <status>0xb0</status>
              <midino>0x17</midino>
              <group>[Master]</group>
              <key>volume</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0xb0</status>
              <midino>0x18</midino>
              <group>[Channel2]</group>
              <key>NumarkMixTrack.jogWheel</key>
              <description></description>
              <options>
                  <script-binding/>
              </options>
          </control>
          <control>
              <status>0xb0</status>
              <midino>0x19</midino>
              <group>[Channel1]</group>
              <key>NumarkMixTrack.jogWheel</key>
              <description></description>
              <options>
                  <script-binding/>
              </options>
          </control>
          <control>
              <status>0xb0</status>
              <midino>0x1a</midino>
              <group>[Playlist]</group>
              <key>NumarkMixTrack.selectKnob</key>
              <description></description>
              <options>
                  <script-binding/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x63</midino>
              <group>[Channel1]</group>
              <key>flanger</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x64</midino>
              <group>[Channel2]</group>
              <key>flanger</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x65</midino>
              <group>[Channel1]</group>
              <key>pfl</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x66</midino>
              <group>[Channel2]</group>
              <key>pfl</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x69</midino>
              <group>[Playlist]</group>
              <key>NumarkMixTrack.toggleDirectoryMode</key>
              <description></description>
              <options>
                  <script-binding/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x33</midino>
              <group>[Channel1]</group>
              <key>flanger</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x34</midino>
              <group>[Channel2]</group>
              <key>LoadSelectedTrack</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x3b</midino>
              <group>[Channel1]</group>
              <key>play</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x3c</midino>
              <group>[Channel2]</group>
              <key>flanger</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x40</midino>
              <group>[Channel1]</group>
              <key>beatsync</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x42</midino>
              <group>[Channel2]</group>
              <key>play</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x43</midino>
              <group>[Sampler2]</group>
              <key>play</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x44</midino>
              <group>[Sampler1]</group>
              <key>play</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x45</midino>
              <group>[Sampler4]</group>
              <key>play</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x46</midino>
              <group>[Sampler3]</group>
              <key>play</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x47</midino>
              <group>[Channel2]</group>
              <key>beatsync</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x4b</midino>
              <group>[Channel1]</group>
              <key>LoadSelectedTrack</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x33</midino>
              <group>[Channel1]</group>
              <key>flanger</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x34</midino>
              <group>[Channel2]</group>
              <key>LoadSelectedTrack</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x3b</midino>
              <group>[Channel1]</group>
              <key>play</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x3c</midino>
              <group>[Channel2]</group>
              <key>flanger</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x40</midino>
              <group>[Channel1]</group>
              <key>beatsync</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x42</midino>
              <group>[Channel2]</group>
              <key>play</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x65</midino>
              <group>[Channel1]</group>
              <key>pfl</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x80</status>
              <midino>0x66</midino>
              <group>[Channel2]</group>
              <key>pfl</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x43</midino>
              <group>[Channel1]</group>
              <key>filterHighKill</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x44</midino>
              <group>[Channel1]</group>
              <key>filterLowKill</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x45</midino>
              <group>[Channel2]</group>
              <key>filterHighKill</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x46</midino>
              <group>[Channel2]</group>
              <key>filterLowKill</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x47</midino>
              <group>[Channel2]</group>
              <key>beatsync</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x48</midino>
              <group>[Channel1]</group>
              <key>NumarkMixTrack.toggleScratchMode</key>
              <description></description>
              <options>
                  <script-binding/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x4a</midino>
              <group>[Channel1]</group>
              <key>NumarkMixTrack.playFromCue</key>
              <description></description>
              <options>
                  <script-binding/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x4b</midino>
              <group>[Channel1]</group>
              <key>LoadSelectedTrack</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0xb0</status>
              <midino>0x8</midino>
              <group>[Channel1]</group>
              <key>volume</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x4f</midino>
              <group>[Playlist]</group>
              <key>NumarkMixTrack.toggleDirectoryMode</key>
              <description></description>
              <options>
                  <script-binding/>
              </options>
          </control>
          <control>
              <status>0xb0</status>
              <midino>0x9</midino>
              <group>[Channel2]</group>
              <key>volume</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x50</midino>
              <group>[Channel2]</group>
              <key>NumarkMixTrack.toggleScratchMode</key>
              <description></description>
              <options>
                  <script-binding/>
              </options>
          </control>
          <control>
              <status>0xb0</status>
              <midino>0xa</midino>
              <group>[Master]</group>
              <key>crossfader</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0xb0</status>
              <midino>0xb</midino>
              <group>[Master]</group>
              <key>headVolume</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0xb0</status>
              <midino>0xc</midino>
              <group>[Master]</group>
              <key>headMix</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0xb0</status>
              <midino>0xd</midino>
              <group>[Channel1]</group>
              <key>rate</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0xb0</status>
              <midino>0xe</midino>
              <group>[Channel2]</group>
              <key>rate</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
          <control>
              <status>0x90</status>
              <midino>0x5a</midino>
              <group>[Channel1]</group>
              <key>filterLowKill</key>
              <description></description>
              <options>
                  <normal/>
              </options>
          </control>
      </controls>
      <outputs>
          <output>
              <group>[Channel2]</group>
              <key>filterLowKill</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x5e</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel1]</group>
              <key>pfl</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x65</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel1]</group>
              <key>flanger</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x63</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel1]</group>
              <key>filterLowKill</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x5a</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel1]</group>
              <key>filterLowKill</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x5a</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel2]</group>
              <key>flanger</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x64</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel2]</group>
              <key>filterHighKill</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x60</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel2]</group>
              <key>rate</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>-0.1</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x71</midino>
              <on>0x64</on>
              <off>0x0</off>
          </output>
          <output>
              <group>[Channel2]</group>
              <key>filterMidKill</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x5f</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel2]</group>
              <key>play</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x42</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel1]</group>
              <key>cue_default</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x33</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel1]</group>
              <key>beatsync</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x40</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel1]</group>
              <key>filterHighKill</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x5c</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel1]</group>
              <key>rate</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>-0.1</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x70</midino>
              <on>0x64</on>
              <off>0x0</off>
          </output>
          <output>
              <group>[Channel1]</group>
              <key>filterMidKill</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x5b</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel1]</group>
              <key>play</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x3b</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel2]</group>
              <key>beatsync</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x47</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel2]</group>
              <key>pfl</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x66</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
          <output>
              <group>[Channel2]</group>
              <key>cue_default</key>
              <description></description>
              <options>
                  <normal/>
              </options>
              <minimum>0</minimum>
              <maximum>0.1</maximum>
              <status>0x90</status>
              <midino>0x3c</midino>
              <on>0x0</on>
              <off>0x64</off>
          </output>
      </outputs>
  </controller>

</MixxxMIDIPreset>