Make a Reusable Sprite Component in TouchDesigner

Make a Reusable Sprite Component in TouchDesigner

One of the great strengths of TouchDesigner is its custom component system, where you can make powerful, reusable items. This video goes through creating a 2D sprite with controls for changing its image and modifying its alpha live. It will be a 3D object, so we can move it around in XYZ, rotate it, use [...]

Using the EMIT Quartz Composer Library

Using the EMIT Quartz Composer Library

A screen capture of building a quick visualization using the custom Quartz Composer library EMIT from Rybotron. Music: Four Tet – Love Cry Download EMIT here

Playtime for Selkie and Momo

Playtime for Selkie and Momo

Selkie is the Aerialist who performs with The Glitch Mob. After the LA Show, we got together to play with some realtime projection + dancing stuff. I had only my phone (Samsung Droid Charge) to record with, hence the low-res image. The first video is an openFrameworks visual I’m working on, controlled here with the [...]

New Movie Loader in Quartz Composer for Snow Leopard

New Movie Loader in Quartz Composer for Snow Leopard

Exploring the awesome updates to the Movie Loader patch in the new Quartz Composer for Snow Leopard

Structure in VJ Performance

Structure in VJ Performance

An exploration of Structure – 4 Layers for Visual Performance.

Cut Up Video using Lucifer and Ableton Live

Cut Up Video using Lucifer and Ableton Live

Make realtime AV Cutups the easy way – with Lucifer and Ableton Live

Quartz Composer: 3D Cubes and Audio Input

Quartz Composer: 3D Cubes and Audio Input

A Beginner’s Tutorial on Lighting, Cubes and Audio Input to make an Interactive Toy in Quartz Composer.

AV Challenge 2: Part One, Making the Clips

AV Challenge 2: Part One, Making the Clips

Momo the Monster’s Method for AV Madness

Loop-R VJ Touchscreen System

Loop-R VJ Touchscreen System

Homemade Performance system from visual_basiq

Playsonic: AV Fun with a Game Controller

Playsonic: AV Fun with a Game Controller

From the 2007 Maker Faire – a project where Video Art meets Gaming and DJing

Retinal Rumble

Retinal Rumble

Show Me Yours and I’ll Show You Mine – live Internet Video Battle at the 2007 Maker Faire.

AV Sequencing with Live + VDMX + Monome

AV Sequencing with Live + VDMX + Monome

A solution for hands-on live audiovisual performance

VJ Kung Fu Promo

VJ Kung Fu Promo

See the new VJKUNGFU.TV Promo!

Crossfader Triggering with the NuVJ

Crossfader Triggering with the NuVJ

Using the NuVJ for AudioVisual performance – a remix and demo.

NuVJ Crash Course

NuVJ Crash Course

The basics on the NuVJ – what the buttons do, what it’s like to mix with.

A VJ’s Pet – Lemur

A VJ’s Pet – Lemur

Introduction to the Lemur Multi-Touch Interface device. How to connect it up, some things you can do with it.

Build a Projector Mount that will Go Anywhere

Build a Projector Mount that will Go Anywhere

You can’t count on venues to have a proper place to put your projector. Build one of these and you can go anywhere.

Staring Into The Snow Preview

Staring Into The Snow Preview

Preview of an ambient abstract piece about losing yourself in the holiday season.

Maker Faire VJ Clips

Maker Faire VJ Clips

Free VJ-Ready Clips from the Maker Faire 2006

Play a Movie in Quartz Composer

Play a Movie in Quartz Composer

QC can look daunting at first – here’s how to get started.

How To Install Quartz Composer

How To Install Quartz Composer

Free video processing app from Apple – you may already have it!

Visit the VJ Kung Fu Channel on Vimeo to download the original, high-quality Quicktime.

Structure in VJ Performance

I love improvisation. I was a MAJOR theatre geek in high school – even made Captain of my school’s Varsity Improv Team (no, seriously). So much of Visual Performance is improv – anticipating where things are going and reacting in interesting ways. I was thinking about this recently, and about how I’m always winging it when it comes to preparing for a show (unless it’s one where I’ve gotten to really practice with the Audio artist). I remembered how much easier it was to practice improv comedy through the use of games – with real structure. With a head full of nostalgia (and a healthy dose of MVC and Framework research I’ve been doing recently for work), I set out to create a structure for my performances.

For my first foray, I’m working on a Four Layer system.

  1. Background – Scene-setting clips.
  2. Playground – Video Instruments (Quartz Composer)
  3. Foreground – Elements on black, textures.
  4. Overlay – Logos, text.

Take Control

I’m a gear-hound. It used to take me HOURS to get ready for a gig as I packed every device, cable, work surface, and display device into my poor old ’85 Corolla. One of the advantages to sussing out a system like this is that I get a chance to refine my physical interface.

Software: VDMX

I chose VDMX for this setup because of its tight integration with Quartz Composer, which is integral to this particular structure. It can read my native QTZ files,¬† generates GUI elements for published inputs, and can use QC compositions as pass-through FX. Don’t worry if that’s all gobbledy-gook to you for now. Just trust me when I say it’s the bee’s knees for QC integration.

Faders/Knobs: Evolution UC-33

The (now-discontinued) UC-33 packs a metric tonne (or so) of faders and knobs into a reasonably compact, bus-powered interface. Yes, the knobs are a bit close together and the faders certainly aren’t going to win you the DMC – but it will get this jobbie done.

Buttons: Monome 128

The patron saints of Compactness, Versatility, Minimalism and Sustainability had at each other one wine-filled night, and the Monome is the only earthly record. Or it’s just a box of buttons that can light up. Thanks to some beyond-the-call-of-duty programming by Dave Lublin, I was able to use the Monome to fully control my clips. 4×4 groups of buttons control 4×4 grids of clips, with additional controls for switching Media Bins on the fly and scrolling up and down through larger bins. The Monome also acts as a 12-key MIDI keyboard for the Quartz Composer patches that will be looking for one.

Fun Factor: Logitech Gamepad

I love working with a gamepad. It takes two hands, which can be tricky when you’re trading to fade layers in and out. I’m still working on that part. But it’s a barrel of monkeys¬† to work with (translation: fun), and introduces another interesting structure to work with. Also, it’s hella cheap. No worries about handing one of these to the 5-year-old kid at Maker Faire (just keep yer paws off my Monome).

The Verdict: Oh yeah.

I built this system just in time for the ’08 Decibel Festival. Even though a lot of the programming didn’t come together until the last minute, I had a solid, fun show. It certainly helps that I was playing with an awesome band, but having that structure there really gave me something to focus on. And I’ve got a host of ideas for real 4-layer scenes I want to build. For the sake of the tutorial (and the performance), I just wedged my existing content into this new framework. I think once I’ve had some time to build fresh content for this system, I’m going to have a really solid, extensible show on my hands.

Has anyone else thought through their performances like this?

22 Responses to “Structure in VJ Performance”

  1. JohnHoldun Says:

    A new post! Yes!

    I love what you’ve done here–MVC for a VJ; brilliant! I’ve tried to think about my sets in terms like this but it’s never quite come together. I’ll be reviewing this post often, I think.

  2. Udart Says:

    Thanks for this post. It’s so inspiring to see how other people build a working environment. Would love to see how other people go about it too.
    So far I am mainly using Modul8, but I find that reading the manual and getting to know the interface of any VJ app is only half of it – then you have to find a preferred workflow and that’s where the real work (and the fun) starts.

    I’ve been using Modul8 for years now and still I find new ways to use it that I hadn’t thought of before.

    Best regards Vibeke aka. Udart

  3. Create Digital Motion » Structuring a VJ Set, with VDMX Clip Prep, on the New VJ Kung Fu Says:

    [...] Structure in VJ Performance [...]

  4. muloka Says:

    Neat set up!! Thanks for sharing! Coincidentally I’ve been in the process of setting up a four layer system in VDMX as well and utilising more chain behaviours and FX presets more than I did before.

    …and I have a monome 128 that’s on its way.

    I don’t have a logitech gamepad but I do have a wii controller. I’ve been playing a bit with it and I’ve found that for it to work properly I’ll need to somehow calibrate it a bit. possibly using behaviour chains.

    anyways i’ll let you know when I’ve finalised on this set up. (might be awhile)

  5. Day One of Coachella Prep — Momo the Monster Says:

    [...] the right is the current layout for my station, running my Four-Layer VDMX Setup out to a V-4, which will then be piped through another mixer or two and then out to the [...]

  6. Create Digital Motion » Reflections on Being a VJ at Coachella: Mega VJ, VJ Gear Round-up Says:

    [...] Monster’s Station – I mostly used VDMX [site | cdmo tag] with a slightly updated version of my Four-Layer VJ Setup. I also used some specialized Isadora [site | cdmo tag] patches for doing Live Camera manipulations [...]

  7. NWAV :: Northwest Audiovisualists | NWAV Meeting 0003: Portland Says:

    [...] if you have something you’d like to demo. I’ll definitely talk about updates to my Four-Layer VJ Structure, and can share some tricks for Interactive movies we banged out for Coachella this [...]

  8. muloka Says:

    alright so using the above vdmx 4 layer setup file you provided I managed on my monome 128 to be able to trigger the clips in the media bin, though i’m having a bit of trouble getting vdmx to light up the LEDs on my monome.

    any help would be greatly appreciated as i hope to put this in practice for a show i’m doing on saturday. yes a bit last minute but that’s part of the fun ain’t it.


  9. Momo the Monster Says:

    Hey muloka, getting bi-directional communication between VDMX and the monome is a little tricky. Here’s a zip that may help: There’s the actual VDMX set I used for Coachella, which includes all my funky monome-feedback button sets, and a special version of MonomeSerial put together by David Lublin of Vidvox which outputs OSC in a format that VDMX can more easily read/write.

    You’ll need to set your prefix to /867 to use my setup, and it will probably need some cleanup (it references all my media and whatnot), but hopefully it will help you out.

  10. muloka Says:

    alright i’ve got it sort of working using the Dedicated Controls in the preferences + the OSCOutput plugin, the only that’s not working at the moment is getting the LEDs to stay on while the clip is playing.

  11. muloka Says:

    awesome momo! thanks i’ll try that now.

  12. muloka Says:

    awesome! I got it working! THANKS A LOT!!! this VDMX configuration is hugely educational. it would have taken me awhile to figure out how to make this work.

  13. Momo the Monster Says:

    You’re welcome. I’m glad you were able to make sense of it. I surely don’t think it’s the best or most correct way to make it work, but it works for live performance, that’s about as much as I need for now :)

  14. muloka Says:

    I got it working in time for the Tall Ships Celebration/DJ Skribble show I was playing at last night here in Bermuda. It was awesome. Definitely planning on expanding on this model a little bit. If you’d like I’ll send you the setup file once I’ve arrived at something I like.

    thanks again.

  15. subpixel Says:

    Hello Surya/Momo,

    I use a PC application called Neon (free from and (aside from the hardware controllers) have a similar way of arranging my content. Neon allows 10 layers, but isn't particularly friendly to control. Each layer appears as a column, where the top entry in the column is the layer content, and the elements in the column can be cycled (so the next or previous element becomes the active content for that layer). Each layer has content that serves a kind of "purpose" in the mix – a couple of abstract-ish background layers, a couple of "things going on" layers, a "subtractive" layer, a masking layer, and various overlays (the main one of these is, I suppose, "lights").

    The content is mostly video (shot on various Canon Ixus digital "still" cameras I've owned), but there are also some PNGs used for masking (I nearly always use a "widescreen" matte with red or yellow horizontal edges in about the middle layer), a couple of simple Flash (Action-scripted) animations, and have customised/created some pixel shader effects (such as a masked sobel where regions of outline and fill can be independently controlled). I attach some of the clip/effect parameters to audio levels (unfortunately the only options being 0/1/2/3 for bass/mid/treble/some-weird-calculated-channel) and some of the layers have automated clip change after some number of beats (there is a "metronome" which you can use for beat matching stuff, but which is difficult to keep in time with the music); others are controlled manually.


  16. subpixel Says:

    Oh, and Neon doesn't come with any default key bindings (aside from metronome control). I have keys qwertyuiop mapped to go to the "previous" content item for the 10 layers (layer 1 is base, layer 10 is top); I don't use the number keys because even when typing numbers in parameters, this unfortunately triggers the key bindings, and that can be inconvenient. I've also used a small number of other key bindings to trigger particular clips (such as an overlay for the DJ name). The only other controller I use is my laptops inbuilt trackpad, and I plug in a cheap (and slightly badly treated) USB webcam just for the microphone input it provides; Neon can use live video input, but performance is bad, seems to be crashy, and the webcam gets an awful picture anyhow! :o)

  17. Matt St. Gelais' - Blog. Says:

    [...] structuring vj sets – [...]

  18. gabe Says:

    hey momo, I met you at pdx decom, I'm using a trigger finger with vdmx to create interactive illustrations that can be layered over video signals.
    I use 5-7 layers, each layer is assigned to a different patch on the trigger finger and each patch only sends midi on 1 channel. Then I group the layers so I can apply effects across the board.
    I use the knobs and faders to control position, color and keying, and the pads for effects. I use my computer keyboard to control clip triggering.
    I'm using ableton's midi sequencer to record my improvisations as loops, which return to vdmx and loop the effects.
    two layers are set up on a cross fader, and I use those for video clips. then I have a layer above those that uses udart's brilliant dv over firewire technique to bring in a collaborator's signal as a video source.
    the fourth layer uses vade's screen capture plugin to sample the right side of my screen, where I use applications like alchemy, animata and particle illusion with a wacom tablet. the other three layers I use for png files that I collage together, and qc patches.
    In some situations I use the multiplexer to toggle between midi, audio and wiimote control over effects. The wiimote has been a lot of fun and real popular to hand out to kids.
    I'm interested in using osc more, I'm in portland too, maybe sometime we can get together and do a skill share.
    here is a link to the vdmx set-up:
    the ableton set up isn't much to look at, but here it is, you can see each midi track sends and receives midi on only one channel:

  19. Tron Says:

    will you do a video about interactive effects?

  20. johnbartmann Says:

    yeah, some inspirational stuff goin on here. thanks monster momo

  21. Steve MacD Says:

    Great post. Intersting to see where peeps are coming from.

    For me, coming from a motion graphics background I use a similar set up in Resolume –

    4 layers, Btm layer is background, next is an overlay layer to liven it up, beat control etc. The next is generally used for triggers – stuff like lyrics, flash etc, one off events that can be triggered by the dj if necessary – very handy for lyrics so i don't have to guess when they're coming up. The final layer is a effects layer – like an adjustment layer in After effects. This effects all of what's going on beneath it greatly multiplying the amount of variations of the compositions I make. Very handy if combined with masks to create unexpected results. Ah happy accidents how i love you!

    Hope to see you in Portland later this year!

  22. momothemonster Says:

    Sounds cool! Any interest in making a little video to share? I'd be happy to post it here.

Leave a Reply

You must be logged in to post a comment.