TJShow: an interactive show controller

TJShow is show controller software to create highly interactive and highly integrated shows. With the easy-to-use interface, you can create rich multimedia timelines and interaction, and control a plethora of devices and media using industry standard protocols. TJShow is the result of a research project I performed in 2006 together with Joost Wijgers.

Screenshot of TJShow

Using TJShow, you can control a plethora of devices and other software using industry standard protocols, such as MIDI, DMX512, OSC, MSC and many more. Using the powerful input engine (which allows input from devices such as MIDI-sensors) and the powerful 3D-video and interaction engine, people can interact with your show. With multiple concurrent timelines, you can create complex shows in a matter of minutes. Using variables and conditional cues, you can implement even the most complex logic in your show. And if that’s not enough, you can hook up TJShow to a database.

TJShow is designed to be run in a network environment. It allows you to control devices over a network (even wirelessly) and to distribute parts of your show to different computers. With a single click, you can play back a track on a different computer. It is also possible to use devices that are connected to another computer, or even uses input that is sent to another computer. This also means that you can use TJShow’s stunning, high-quality graphics on visitor terminals. And should your show controller server ever fail (possibly due to a hardware computer), you can set up a fallback server. Show must go on!

Deploying and maintaining the show you designed has never been easier. Want to make changes or check the status of something while you walk through your show? No problem, just use a PDA or even an iPhone and a Wi-Fi connection. Want to move the show from your testing environment to production use? Piece of cake: with the advanced patching system, your devices are connected and recognized automatically, and TJShow automatically distributes necessary files over the network.



  • Timeline-based show control with a virtually unlimited number of channels
  • High-precision multithreaded timing engine
  • Instancing of timelines allow for the creation of components
  • Running speedĀ of timeline can be changed flexibly
  • Support for named cues with actions
  • Extendable through plug-ins (SDK available)


Logic and programming

  • Support for variables and mutual exclusion guards for safe show execution
  • Cues can influence variables, trigger scripts, require mutual exclusion
  • Timelines can be scripted for added flexibility
  • Database connectivity from scripts



  • Supports distribution of timelines to different computers (client/server)
  • Automatic distribution of required resources (media etc.) to clients
  • Automatic discovery of clients on the network
  • Runs on Windows XP and later
  • Ability to link cues to input events from various sources

User interface

  • Dark and light user interface theme
  • Flexible interface suitable for multi-monitor set-ups
  • Support for the creation of hotkeys


  • Multi-channel audio and video playback
  • Plays all audio and video formats recognized by Windows Media Player
  • DirectX, hardware accelerated video transforms and compositioning
  • Displayed media elements can be made interactive and control timelines
  • Support for multiple sound cards and video output screens




  • High-performance DMX channel engine, supporting up to 48 universes
  • Macros (channel groups), submixes, grand master and submasters supported
  • Compatible with Ent-Tec, LanBox, SoundLight and other USB DMX devices
  • Supports ArtNet output
  • Support for compound channels (pan/tilt, coarse/fine values)
  • Integrated DMX viewers can be created providing an instant overview of a show’s state
  • Ability to create and export patch sets


  • Support for discrete as well as continuous MIDI parameter channels
  • Detailed programming of MIDI commands (program change, note on, note off)
  • Support for MIDI MMC and MSC
  • Support for OSC (OpenSoundControl)

More information

Download TJShow at

TJShow is open source as of March 2017! – fork on GitHub.