How To Read A MIDI Mapping File

Have you ever looked at a MIDI controller mapping and thought “what is is this foreign language?” Many people don’t even attempt to edit and customize mappings because they don’t understand how the files work. In today’s article, we give you the basics of understanding a mapping so you’ll be able can read the file and understand what it does with ease.

Many of us are now DJing with controllers and laptops, which offer plug and play performance but also deep customizability. Every single one of these setups have something between the controller and computer called a mapping. It’s a mapping that determines how each button, knob and slider effects the software. Controllers are fairly basic electronic devices and just send simple messages, but it’s the mapping which really defines the magic.

90% of people probably never touch their mappings and are fine with the default behavior, which is fine – but some aspiring creators are often just intimated by the prospect and never even try.

In today’s video, I will break down what to look for in a mapping and how to understand what you are looking at so anyone can at least open their MIDI mapping, and easily know at least how to read it.

Looking for new MIDI mappings for your controller or setup? We’ve got a great community of amazing MIDI mappings on the section of the site.
controllerMappingsmidi filemidi mapping
Comments (34)
Add Comment
  • shootdaj

    Misleading title – this is not about how to read the MIDI Mapping *FILE* – it’s about reading the MIDI Mapping. The MIDI Mapping File has an extension of .tsi and it is undecipherable other than by Traktor. I know OSX has a program that can read the maps which can be downloaded from, but Windows has no such program. MIDI Mapping in Traktor needs to made scriptable. It’s a horrendous process just to change the behavior of let’s say, a single modifier. I hope they have this feature in works.

  • noofny

    For OSX users, this tool ain’t a bad alternative to editing in Traktor, however it has it’s downsides and doesn’t properly open some maps.

  • Pieter Paßmann

    So does anybody have some hints about .tsi files and what they actually are? The .nml files for playlists and libraries are normal XML files.
    What is .tsi and could we possibly make an editor for them?

    • Marco Hooghuis

      They’re encrypted (for whatever reason), so you’d first have to decrypt the tsi before you could make an editor.

  • vdj8 user

    traktor midi language is for kids!please give us a post like this about VDJ8!!thats scripting!!!!

    • CUSP

      Yeah, and you can use VSTs with Virtual DJ… Traktor and Serato don’t really let you do much controller mapping.

    • Mike

      Funny I’ve never seen Virtual DJ being used by anyone other than novices.

      • Marco Hooghuis

        Just take a look at the mappings, that’s actual programming. Not the point and click commands you see in Traktor.

  • Old Grey Cat

    You know what’s crazy? Controller manufacturers tout the “buttons” they have on their latest releases. Like, Model XYZ has a “flux” button, now! This sounds patently insane, to me! “Flux button”??? 99% of all settings are a MIDI mapping away in Traktor! Now, for platter integration, I understand, but for buttons… amazes me.

    (Equally amazing that NI got away with cordoning off their remix decks…)

    Goes to show you, the one-eye man can be king.

    • CUSP

      I think the Remix Deck debacle hurt Native Instruments more than you might think. A lot of people experimented and even moved to other software simply because NI locked out a feature to anyone without their controller. I know Virtual DJ, Deckadance, Mixxx and the One DJ have all seen spikes in interest as has Ableton, simply because they enable creativity, and don’t say “you can’t get there from here” which Traktor and Serato have been guilty of.

  • Toontown

    Mapping in Traktor is pretty easy if you are mapping basic functions like jog wheels, play/pause, cue points, and the mixer section. It’s when you get into multiple functions for the same button/knob that complicates it.

    Mapping in Ableton is much easier. It will be a shame if the next version of the Controller Editor doesn’t come with a mapping option similar to Ableton’s. Advanced controller mapping doesn’t need to be complicated.

    • CUSP

      I know! I’ve been wanting to use a command for a “blinky button” for a long time now. I know that’s part of the HID commands, so I guess I’m hoping HID mode (and HID editing) will be available (for at least more controllers) soon.

  • Lee S

    Thanks for jumping into this topic Ian. I’ll check it out for sure when I get home from work! peace!

  • killmedj

    I’ve made a bunch of Mappings over the last few years and for some reason I STILL get stumped on how to implement modifiers! And yes I’ve watched all the videos =). Could you do and even more dumbed down video explaining it again? Or possibly could someone suggest a tutorial that explains it at a 5 year old’s pace? (I am WAY older than 5 btw!) Thanks for the vid Ean!

    • Marco Hooghuis

      There was a tutorial on modifiers just a few weeks ago, right here on djtt. Dubspot has one that’s pretty easy as well. I wonder why you’re having problems with it, it seems pretty easy to me. What is it that you’re stumped about?

      • killmedj

        I’m gonna revisit the tutorials you suggest. I’m pretty sure I’ll have a “Penny Drop” moment if I just practise the functionality a bit more. It really is ridiculous that I haven’t gotten the hang of it yet =/. Thanks for the reply. all the best.

        • TYLR

          Yeah it’s the penny drop moment for sure, it will click.. and then things will be epic.

          • CUSP

            Don’t feel too bad, there are some things that are just not implemented yet. Documentation isn’t as good as it should be. This is still DIY country.

      • CUSP

        Modifiers (well using more than one) starts making things a lot more complicated, especially when you use the same button as a multi-function toggle (with the behavior of an incrementer that maps different functions to keys).

        I recommend using a pad of paper to write down all of your assignments (both custom and default) to manage unexpected behavior. Normally, the problems come down to “I forgot to turn off that behavior” or “I accidentally assigned two (or more) things to that button/knob/slider/LED/anything else.”

        There must be a lot of people are interested in blinking lights / other dynamic LED behaviors (like assigning the intensity, or color to an LED as per the meters output), but that’s more of an HID set of controls.

        I’ve had a lot of fun with this on my Twitch, I hope HID mode editing comes soon.

        • killmedj

          Great advice

        • killmedj

          Cheers Dan!

  • Marco Hooghuis

    “90% of people probably never touch their mappings and are fine with the default behavior, which is fine – but some aspiring creators are often just intimated by the prospect and never even try.”

    This is the main problem. People don’t even try to alter default mappings. If you’ve never tried it because it looks difficult, how can you possibly say it’s not for you?

    • Lee S

      I agree and I want to learn MIDI mapping not only for Traktor, but also for Ableton. I would like to know how to do bank patch changes from Ableton to a synth for like performances. Most of the controller changes can be recorded by turning knobs, but there are hidden functions that don’t consist of turning a knob and pressing a key that I want to learn about.

      • Marco Hooghuis

        Start of with some easy stuff so you get to grips with how a command is supposed to work. Once you get those basics right, the rest will come much more easily and you won’t be frustrated when it doesn’t work.

        • CUSP

          Also, don’t forget to save your mapping somewhere before you edit it. You might want to come back to a “previous revision” when things don’t work out as you’d hoped.

    • noxxi

      its actually pretty easy once you get stuck into it, its fairly straight forward. i think the reason 90% of people never touch their mappings is partly due to the fact that traktors mapping window is an abomination

      • CUSP

        I did it out of interest… I have a lot of buttons available to me on my Twitch, and I was a little miffed that the EQs didn’t have push-kills… so I made the unused buttons (the bottom row, under the effects button tab) act as push-kills… which work great BTW.

        • noxxi

          not bad, it bugs me when a controller doesnt have eq kills on it in a convenient place, my old ddm4000 had them and i used them constantly, they really should be a standard feature, just like the obligatory low res pitch faders on shitty controllers, that are next to useless, give me eq kills over them any day!