Adding Video to Traktor Pro 2

Adding Video to Traktor Pro 2

This is still in progress, but I am close now.   I will update as progress is made.

I started off with a modest setup.  A refurbished i5 Macbook Pro, a Hercules RMX from Guitar Center, a Pro License for VirtualDJ, and a passion for electronic music.  My setup and skill sets have grown considerably since then, and I now find myself in a position to find my audience and take this hobby more seriously.  It has been quite a journey and I am thankful for the advice, support, and criticism of my friends, but I find myself in a weird space right now.  At some point I made a serious upgrade to my rig and purchased the Native Instruments Traktor Kontrol S4.


These were pretty popular at the time, and it was widely considered the flagship controller.  It is a rugged device with a great onboard sound card and quite faithfully reproduces the feel of a pair of CDJs and a 4 channel mixer.  It also came with it’s own software.  Traktor Pro 2.  The depth of the feature set, clean feel of the interface, and flexibility of the platform make VirtualDJ feel like a child’s toy.  The big thing to me still is the efficiency in the way it meters out precious system resources, and it is very hard to make Traktor Pro crash.  VirtualDJ by comparison used to crash all the time on the same laptop for no reason.  The only drawback I noticed when I switch was that VDJ provided video mixing capabilities, and Traktor doesn’t even know what a video is.  I didn’t care about it years ago, but now I do and needed to find a way to have both, as I am planning to upgrade to the TKS8 this year.  Here is how I usually set up to DJ at home to practice.


Traktor Pro DJing with Saffire Mix Control

Another important consideration I have is that I picked up Ableton and have been working on creating some of my own original productions with it.  It is very powerful and flexible.  It also nicely handles a number of the limitations that Traktor has, allowing me to fix or modify things at will and save them to play back later in my DJ sets.  Ableton is popular enough now that when they provided the new Ableton Link feature to their software suite, Native Instruments quickly picked it up and responded with a Traktor update to fix the timecode sync issues between the two.  In addition to this awesome new development, Max4Live was released allowing Ableton users a sort of Ableton IDE to develop plugins, effects, etc. on their own and some really cool stuff is coming out of it now.  While I am leery of adding more daemons to my already packed setup, this is official Ableton software so I wanted to try it out.  As it turns out I ended up needing it to solve my problem.

Here is what I figured out.

GrandVJ Media Server, Arkaos – $349

I gave up on this one.  The VST plugin for Ableton would not pass MIDI for me, and life is short.  If I can fire up your plugin in the software that I want you to connect to but you still cant pass commands back and forth after a full day of trying different settings then your plugin sucks.  I would rather not find out what else you aren’t very good at, and these licenses are not cheap.  I definitely do appreciate the full trial version these guys offer that I used to make that determination though, and there is probably nothing wrong with this setup, although it seems to lack some nice features.  I just lost patience and moved on.

Resolume 4 Avenue VJ Software – $311 w/o educational discount

Resolume offers 50% student discounts, including upgrades!  I will let you know if DJTechTools students qualify when they respond.  Armin Van Buuren uses this live so it’s good enough for me, although I would like to figure out a way to fire off metadata from Traktor to Ableton, which could then alert over OSC to Resolume which track I am loading.  This apparently doesn’t exist yet, but I suspect there will be a way to use Max for Live and the Traktor Virtual Output to feed an identifier from Traktor to Ableton about what track I just loaded/replaced in each deck.  I could then map specific audio tracks with corresponding video files and Ableton samples/remix loops right?  Anyway, here is what we get from Resolume Avenue 4 out of the gate:

  • OSC in
  • MIDI in
  • No DMX OUT w/this version, $500 upgrade to Arena 5 for DMX support…

Arena 5 cost 799 Euros.  Not something I need at the moment, although it would be nice to have the DMX mapping features.  If I ever start making more money than I spend with this (not really the goal,) then I will have to upgrade when it makes sense.  This software soaks up a lot of resources on the front end load, but adding lots of clips has less impact than you would expect.  One thing to be aware of is that it prefers specially encoded Quicktime files and they provide their preferred codec with the software.  Clip files using this plugin are compressed, but not compressed very much and will chew through a lot more hard drive space than say MPEG4 or even MPEG2 streams do.  The benefit though probably outweighs the cost in storage because the images scale and crop/trim really quickly when you follow the instructions, and the GPU bears the vast majority of the processing load in this manner leaving your CPU free to do other things.

I was able to set this up pretty quickly.  The interface is intuitive, the manual is well written with lots of links to references, and there are a lot of tutorials available to show you how to set things up and demonstrate different people’s setups/use cases.  I will be using my Akai APC40 midi controller specifically in Live to handle all the things I use it for, and am mapping an Akai MPK25 to Resolume.  This gives me the option of having god mode manual control over of the Resolume interface directly when playing live to correct any issues that may arise without having to switch modes completely.

Ableton 9 Suite – Upgrade License $239 till Jan 11th

I already had Ableton Live 8 and needed to update, so I upgraded to 9 ($159.)  My original plan was to simply connect Traktor Pro 2 to the video software, but the MIDI issues I was having led me astray and I got an idea.  Since I wanted to add Ableton to my workflow anyway, and I was already planning to use the APC40 control surface I bought to queue samples and things while I played music in Traktor, why not let Ableton handle the communication to the video system instead of Traktor since I already have it running?  The new Live Sync works way better than the MIDI timecode sync (10,000 timing marks in OSC vs. 127 in MIDI per track.) There are plenty of videos where people are using Ableton Live for audio workflow management so this seemed to fit my requirements.  Ableton Link doesn’t fall out of time ever once it syncs, catches changes in tempo immediately, and is happily keeping track of downbeats on cue point jumps as well.  I just needed one more piece of software to accomplish basic Traktor controlled video outputs…

I have some caveats though.


Ableton Producer Layout

I route my audio from the TKS4 through an effects processor (Kaoss Pad 3) to an external Firewire sound card (Focusrite Pro 24,) which splits out to 2 pairs of monitors (one for Traktor, the other for the Ableton DAW.)  Saffire then sends master outputs to a tube pre-amp which finally routes the resulting signal through and 8-channel rack mounted mixer/splitter. I have my audio from Ableton and Traktor Pro 2 being routed separately and mixed by the Saffire on purpose.  I have full control over ins/out/mixes, it sounds amazing, and I am building this setup again in flight cases to take when I play out because it lets me plug in just about anywhere to just about anything and always have “my sound” intact to the amplifiers with power conditioning to protect my toys.

I am also not interested in a solution where I am unable to load different Ableton projects during the same set without interrupting the show.  I need to be able to go from project to project and be able to play my tracks and samples without breaking audio or video.  I have not played with this much yet, and there is a chance that during Ableton project loads I my encounter some video time sync issues as I drop the current project’s OSC server and fire up a new one, but hopefully it wont be noticeable.


Studio Fun Time

You can here see that in my setup I am not expecting Live to handle all my output processing/mixing since I am using quality external hardware instead. I have never had any of this hardware mess up unless I unplugged it.  I like that.

Max4Live – License $159 standalone or included in Live 9 Suite

This software allows us to feed/control Resolume from Ableton with 3 new plugins.

  • Resolume Clip Launcher – Launches Resolume clips from Ableton, of course.
  • Resolume Parameter Forwarder – Allows linking effects parameters in Ableton tracks with parameters on Resolume clips.
  • Resolume Dispatcher – OSC message bus/server daemon for Ableton.

A few notes about this implementation.  First, you can add these into your existing projects by attaching them to audio or MIDI tracks already in your project (Clip Launcher and Parameter Forwarder) and firing up the OSC service on the Master channel.  Alternatively you can just dump these into the bottom/side of your existing project components and use the mappings to remote control Resolume while playing/improvising in your project like you would a remix deck or stems.  Apparently there is no “Clip Load” or “Clip Remove” logic exposed directly by the OSC interface, but since you are able to map OSC controls step by step you can likely automate this workflow using OSC commands for the UI mouse clicks to perform the same actions.  A lot of the things you can do with OSC are undefined because as far as I can tell it is pretty much wide open with the only restrictions being things that the UI doesn’t expose or aren’t mapped.  If this is the case, and I intend to try it when I get some time, I will be including a macro in each of my Ableton projects for loading banks of clips specific to that project, then unloading them before I switch to another project.



Native Instruments has opened a feature request:

“Hi James,

thanks for your feedback! I have filed a feature request to our developers under the following reference:

TP-11697 Please implement metadata notifications on LOAD and UNLOAD

I have copied all the details from your post to this request. Unfortunately, I can neither say if nor when such a feature set may be realized. We will have to wait and see.”

This is usually where ideas go to die unfortunately.  🙂

I will update this section when I know how to accomplish Ableton project specific Resolume Clip loading/unloading.

Matrox TripleHead2Go Digital SE– $250

Pretty much a requirement if you want to play venues with multiple video screens/projectors.

DVI to HDMI adapter X3 – $27

Just in case.  You need an equipment rider though…

Mini Display to Display cable – $8

Macbook to Matrox cable.

A note about performance – I started running this on my old reliable 15″ Macbook Pro i5 with 8GB RAM.  Ableton and Traktor seem to run just fine on this system and I never have any issues.  After adding Resolume to the stack is is apparent that I should be using a second machine as my Resolume server.  Since I am already using the OSC server functionality and we really shouldn’t need MIDI in/out to the Resolume machine I am going to migrate that workload off to my i7 Macbook Pro with 16GB RAM and a 1TB hard drive.  This will also help with disk space issues, since  expect to be constantly downloading, editing, and converting video clips, Flash animations, Quartz scripts, etc. for the video portion of the stack.

Leave a Reply