Announcing the .TSI file format documentation (I’ve reverse-engineered it)
I’ve reverse-engineered the .tsi binary file format specification, which Traktor Pro by Native Instruments uses to store its Controller Mappings. I am hoping this should open the gates to new power tooling for MIDI controller mapping power tools (Traktor’s own being rather sub-optimal).
Next step now is to validate. I am going to make a simple tool to read a mapping and write it back to a new file and test that the new file works the same as the old one.
Anyone willing to help out? I need your mapping .tsi file - I will then give you back one, which the tool has produced and you will have to check if it works the same way as before?
Do you guys use Windows or Mac OS X out of interest?
I don’t have the full list yet, because I haven’t gone through and extracted them all just yet. Once I do - will post them. (BTW those numbers are internal Traktor thing - not really useful for anything but messing around with the internals of the mapping files)
Why would you want an app for android do? To do what exactly? I see no use case personally.
Also in Europe it’s legal to reverse-engineer binary file formats for interoperatiblity. I have not touched or decompiled/disassembled Traktor code or any NI other intellectual property in any way.
That’s not what I was addressing if that was responding to my statement. If you were to develop an android application (for what use I don’t know), I’d be very surprised if NI didn’t have an issue with it.
Great to hear there is no IP infringement, anything would be usefull compared to what traktor has.
As far as the android app is concerned; I currently have more free time at work than I do at home. I have mainly used my tablet for editing ClyphX as well as python scripts for ableton (due to the nature of my work I cant use 4g or wifi, which ironicaly makes me infinitely more productive).
Just a quick update on this one. We are now almost 95% complete on the documentation of the file format. There is also a reference implementation in C#.