Projection Mapping for Worship Pt. 2: The Software

I'm going to talk more about the software that we used for the "video wall" for Calvary Church's Immerse Night of Worship last February.  In my previous writing, I talked a little bit about the design and overall signal path. You can check that out here: Projection Mapping for Worship Pt. 1: The Design

We used two pieces of software to achieve our final result. One thing to note, is that all of the software I'm talking about here is Apple OS X based. I apologize in advance to any Windows users.

The first was VDMX by Vidvox. VDMX handled all of our media server duties, effects generation, and masking. The second software was called Madmapper by Garagecube/1024 Architecture. Madmapper took care of all of our geometry corrections. Think of it like keystone correction on steroids. VDMX's output was fed into Madmapper via a protocol called Syphon.


VDMX 5 by Vidvox, Screenshot of interface for the Immerse event at Calvary Church in Greensboro, NC from February 28th 2016.

I started tinkering with VDMX several years ago after hearing about it from my good friend Josh Orton. The church he was attending at the time was using it to feed content into a projector aimed at their upstage wall.  They would mask out areas on the stage they didn't want to show video on, or use it to highlight specific things during their worship sets. I was searching the internet for more information about it one day and found out one of my favorite musicians, Tycho uses it as well. I became pretty smitten with it at that point.

Vidvox's VDMX software is a Mac-based media/video server software.   In fact, their  tagline is "Professional VJ Software."  Think of a VJ as a DJ, but rather than using records, discs, or now audio files, a VJ would use video files. In my humble opinion, calling VDMX VJ software is an understatement. It would be like calling Mount Rushmore a statue, or the Grand Canyon a riverbed.

Think of VDMX as a non-linear video playback and manipulation system. You can load video clips into it much like a video sampler, add many different effects such as blurs, color swaps, flips, cropping, masking, speed changes, reverses, kaleidoscopes, all sorts of effects and plug-ins.  You can almost do anything that you would do in a video editor but in real time.  If you're familiar with Ableton's Live software for audio, in the same way, that you can work in real-time, triggering sound clips and samples, you can do the same thing with VDMX. Live performance is what VDMX does well. 

Most of VDMX's functions like video clip triggers, cross faders, speed control parameters, screen placement can all be assigned to either keys on your Mac's keyboard, a MIDI Controller, or OSC based controller.   There are even plug-ins to enable the use of Nintendo Wiimotes. All of these options present the user with an infinite sea of ways to control their video rig.

VDMX is a remarkably stable software. It's designed to process and render all of its video content on your Mac's graphics processing unit.  The minimum system requirements are a Mac computer with an Intel Processor (pretty much every Mac made at this point,) running OS X 10.10 or later.  Recommended System Requirements include a Nvidia or ATI graphics card and 4+ GB of RAM.

I am about share something that I do not recommend doing.  VDMX 5 will run on my Mid 2010 13" MacBook Pro, 2.4 GHz Intel Core Duo machine with 4 GB RAM.  That machine does have a Nvidia GeForce 320M 256MB graphics card in it.  When I purchased this machine, the 15" MacBook Pros had dual GPUs on board, and would switch to the more powerful card when running video or graphics editing programs. My MacBook Pro has an underpowered GPU for this sort of work.  BUT VDMX runs on it. I've never pushed it super hard or loaded a lot of effects, but I can usually work on an interface setup or get a proof of concept working on it just fine. I just wanted to share this to give you an idea of how stable it is.~ Andy


Screenshot of Madmapper.  The pattern on the left is the input from VDMX, and the Lincoln Memorial is the output side.

Madmapper is software that allows the user to do several things to the output of a projector. The first is geometry adjustments- In a perfect world, we would always have our projectors pointed directly and squarely at the surface that we're trying to project on.  In some cases, that can't happen so we can use Madmapper to correct for that. For example: Trying to project an image onto two adjoining sides of a cube.  Two parts of an image can be picked up from the input side of Madmapper, then "wrapped" around the corner of the cube so that the image is nice and square from the viewers perspective.  For the Immerse project, we had to mount our projectors higher above the projection surface than they were designed to be.  We also didn't have the required space on stage to center the projectors in front of each wall. So we warped the image in Madmapper to stretch it back into the correct alignment.  Sadly I didn't take any screenshots of Madmapper from this project, so the Lego Lincoln Memorial above will have to do.