Quantcast
Channel: Tutorials - VDMX - MAC VJ SOFTWARE
Viewing all 154 articles
Browse latest View live

Making and Installing GLSL Composition Modes for VDMX

$
0
0

Download the completed tutorial project including sample GLSL shaders and VDMX setup.​

To get the best performance out of using the Hap video codec within VDMX we also recently added another new feature making it possible to use GLSL shaders to perform composition between layers. While the standard 'OpenGL- Add' and 'OpenGL- Over' modes are the most efficient options when it comes to rendering, when more complex composition modes such as 'Difference' or 'Multiply' are needed shaders are the best alternative when playing back movie files, particularly when you're not using CoreImage or Quartz Composer based FX on the layer.​

One of the other benefits of using GLSL shaders for composition is that it is very easy to write your own and add them to VDMX as a way to further customize your output to your own visual style.

In this two part tutorial we'll look first at the basics of adding new 3rd party shaders to the VDMX assets folder on your Mac, and then move on to the intermediate level step of creating new custom blend modes.​


Two layer VDMX project using GLSL shader based 'Threshold' composition mode.

Basics: Installing and using new GLSL Composition Modes

First download the example set of GLSL shaders created for this tutorial.

From the 'Help' menu within VDMX, you can quickly access the special directory where the GLSL shaders are installed. Copy the downloaded .fs files ('Threshold' and 'ThresholdRGB') into the 'glslCompModes' sub-folder.

​Launch VDMX and choose the new option from the Layer Composition Mode pop-up menu.


​Choosing the 'Show Assets Folder in Finder' menu option.


Viewing the contents of the glslCompModes assets folder in the Finder.


Installed ​GLSL shaders listed in the Composition Mode menu.

Intermediate: Creating your own GLSL Composition Modes for VDMX

To create a new GLSL composition mode, first create a new plain text file in TextEdit, BBEdit, or any other plain text editor. Save the file with the path extension ".fs" to the assets folder as indicated in the earlier part of this tutorial.​

When creating a composition shader for VDMX, only three functions are needed, one for each potential render situation between the layers: top only, bottom only, top and bottom mix.

In this example we'll be making a basic 'threshold' style composition mode in which pixels in the top layer whose brightness is above the 'topAlpha' input variable show through to the background. To begin first create a "Threshold.fs" file and place it in the assets folder.​

Then in your text editor, enter the GLSL code below, or replace with your own.


Editing 'Threshold.fs' in BBEdit.

For reference a complete list of available functions and more information on the GLSL specification can be found on the OpenGL.org website here: http://www.opengl.org/documentation/glsl/​​

/*

Discussion: 'Threshold.fs'

// Fill in this function to composite the top layer over the bottom layer
vec4 CompositeBottomAndTop(vec4 bottom, float bottomAlpha, vec4 top, float topAlpha)

// Fill in this function for conditions when top layer is invisible / ignored (opacity = 0)
vec4 CompositeBottom(vec4 bottom, float bottomAlpha)

// Fill in this function for conditions when bottom layer is invisible / ignored (opacity = 0)
vec4 CompositeTop(vec4 top, float topAlpha)

// Incoming variables
vec4 bottom - bottom pixel color (RGBA)
vec4 top - top pixel color (RGBA)
float bottomAlpha - opacity of bottom layer
float topAlpha - opacity of top layer

*/

vec4 CompositeBottomAndTop(vec4 bottom, float bottomAlpha, vec4 top, float topAlpha)
{
// Get the brightness of the top pixel
float brightTop = top.a * (top.r + top.g + top.b) / 3.0;
vec4 darkenedBottom = vec4(bottomAlpha) * bottom;

// Use topAlpha is our threshold- anything brighter than it should appears as the bottom image
vec4 returnMe = (topAlpha < brightTop) ? (bottom * bottomAlpha) : (top);
returnMe = mix(darkenedBottom, returnMe, top.a);
returnMe.a = top.a;
return returnMe;

}

vec4 CompositeBottom(vec4 bottom, float bottomAlpha) {
vec4 returnMe = vec4(bottomAlpha)*bottom;
return returnMe;
}

vec4 CompositeTop(vec4 top, float topAlpha) {
vec4 returnMe = vec4(topAlpha)*top;
return returnMe;
}

Finally, test all the shader within VDMX by creating a test project with two layers and setting the composition mode of the top layer to your new blend mode. Load some sample movies or Quartz Composer patches and try setting the opacity of each layers to a variety of different values including both on, both off, top visible, bottom visible, and both at 50% opacity to see how it behaves at different settings.


Receiving MIDI SMPTE Time Code (MTC) in VDMX

$
0
0

Download the completed project file and sample media for this tutorial.​

MIDI Time Code (MTC) is a specification for sending SMPTE values from a master playback application such as QLab or Apple Logic to keep the play time of other real-time music and visuals software in sync over MIDI.​ While MTC has a few drawbacks it can be very useful when setting up live performances where VDMX is being used alongside audio software that can send it.

In this tutorial we'll look at how to receive MTC ​in VDMX in two ways: First, the classic example of syncing the time position of a QuickTime movie to the incoming timecode.

In the second case instead of a traditional movie, a simple Quartz Composer patch will receive the MTC and render a real-time animated read out of the values in standard SMPTE format.

Since MTC can be accessed anywhere, it can also be used to control the time position in the LFO and Step Sequencer plugins, or sent back out over OSC to other software that can not directly receive timecode.


Movie 'Time Slider' in VDMX slave to MTC from QLab.​


Materials and Prerequisites:

  1. Download QLab, or other software capable of sending MTC.
  2. Read the tutorial on MIDI setup in VDMX.

Step 1: Send 'MTC' from QLab.

  1. Double click or drag 'MTC' in the sidebar to add a new 'MTC Cue' to the project.
  2. Select ​the MTC Cue and under 'Settings' in the MIDI Destination menu choose 'To VDMX'.
  3. If needed, set the SMPTE Format to your movie frame rate.

Once the MTC Cue is set up in QLab, start sending ​timecode by clicking the 'Load' button and then the 'GO' button.


QLab with an active MTC Cue sending 'To VDMX'

Step 2: Sync sliders in VDMX to the MTC source.

Setting up a slider or other UI item to receive MTC works just like any other MIDI data-source. You can either use the 'Detect MIDI' option from the right-click menu or enter the appropriate address path (eg. '/MIDI/ch. 0/MTC') in the UI Inspector window as shown below.​

When MIDI Time Code is received by a slider in VDMX it is interpreted in number of seconds. Unlike other MIDI data such as note velocity or control values, MTC may not have an explicit maximum value- as such, sliders receiving MTC will automatically attempt to set their ranged value to this exact value in seconds- this differs from the normal default slider behavior which is to  scale to the incoming MIDI data to the range of the min and max envelopes on the slider.​

 

Using the 'UI Inspector' to manually set up MTC receiving on the 'Time Slider' of 'Layer 1'


Quartz Composer composition with 'MTC Input' slider to set the rendered SMPTE time.

 

The Quartz Composer Interaction object and VDMX Preview Windows

$
0
0

Download the completed project file and example compositions for this tutorial.​

One of the newer features added to Quartz Composer is a new 'Interaction' object which allows for mouse clicks in the QC Viewer, as well as Preview Window plugins within VDMX, to be detected when billboard and sprites are clicked, making it possible to control patches in a variety of ways not possible with standard ​input splitters.

For this tutorial we'll first create a basic Quartz Composer composition that makes use of the 'Interaction' object ​and then import it into VDMX where it can be manipulated directly from a Preview Window plugin.

After this tutorial check out the example project for Visual FX Basics which demonstrates using the preview window mouse click x/y position as a regular data-source to control non-Quartz Composer based FX through sliders and 2-d point pickers.

Notes:


​Example 'Interaction Test' Patch - click and drag the square.


​Two layer setup with click-and-drag previews in VDMX.

Create a Quartz Composer composition with the 'Interaction' or 'Mouse' object.

​Add the 'Interaction' object and connect it to the top of the 'Sprite' to create the association between the two. Then use the x and y values provided by the object to set the position of the sprite.

Load the onto a layer and click on its preview window to interact.

​When a Preview Window is displaying a layer or other QC generator, any mouse clicks received by the preview are treated the same as when using the Viewer window in the Quartz Composer editor application. ​Multiple previews can be used at a time for different layers.

Setting up Media Bin Sync with TouchOSC

$
0
0

Download the completed VDMX project and example TouchOSC template for this tutorial.

Over the last few years one of the most exciting developments for Mac VJs has been the adoption of Open Sound Control (OSC) by software and hardware makers as an alternative to the MIDI and DMX standards for sending control information between physical instruments, music, video, and lighting applications.

One of the first and most popular apps on iOS for remotely controlling the visuals running on your Mac is TouchOSC from Hexler which allows for customizing which controls are accessible from your iPhone, iPad, or iPod Touch, and configure their layout much like you can using the Control Surface plugin within VDMX.​

In this tutorial we look at the 'Sync UI' option in the Media Bin for updating the display of buttons and button grids in TouchOSC as movies are triggered in VDMX. The example template also makes use of two-way talkback with other movie controls such as the time and volume sliders for visual feedback as clips play back.​


Preparing a basic layout with VDMX and TouchOSC Editor on the Mac.


TouchOSC Layout with toggle buttons for triggering media bin cells and time slider display running on iPhone.

Note: Also see the similar tutorial detailing setting up Media Bin sync with the Akai APC MIDI controllers.

Materials and Prerequisites:

​* Also check out other available OSC controllers available in the iOS App Store, such as Control and Lemur, or physical instruments like the Monome.

Step 1: Configure TouchOSC and VDMX network & OSC Preferences.

In the VDMX Preferences in the 'OSC' section, in the 'Inputs' tab make sure there is at least one port set up to receive OSC data. Under the 'Outputs' tab ​you should automatically see any copies of TouchOSC on the network and their IP / port combination along with a human-readable name for the device.

Tip: If using the included VDMX project files for this tutorial be sure to rename your device to 'TouchOSC-Device' in the 'Appears as' column in the 'Output Ports' shown below instead of the default name for your device.


​VDMX Preferences / OSC / Input Ports


​VDMX Preferences / OSC / Output Ports


TouchOSC Setup / OSC

Step 2: Inspect a Media Bin and set up the OSC button triggers.

Typically the 'Toggle Button' or 'Multi-Toggle' UI items are used within TouchOSC layouts for remotely triggering ​clips in VDMX. Both of these options work with basic Media Bin UI sync, however it is not possible to change the color of individual cells in the 'Multi-Toggle', only the on/off state, so for this tutorial we'll use the 'Toggle Button' option.

Use the 'Hardware Learn' mode option found in the 'Workspace menu' and tap each toggle button in the order you wish to use them in the bin.​

To automatically set up a group of buttons or multi-toggle UI on the TouchOSC layout, click the 'Range' button, then press the top-left  button, followed by the bottom-right button. Note that buttons must have consecutively named address paths (eg. buttons/toggle1, buttons/toggle2, etc.) for the range detect option to work.​


​Preparing the layout in the TouchOSC Editor, editing 'toggle6' in the sidebar.


Example 'MovieControls' ​TouchOSC Layout loaded and running on iPhone.


Setting up OSC shortcuts in the Media Bin by ​Hardware Learn Mode.

Step 3: Set up Media Bin UI Sync in the 'Sending' tab of the inspector. 

In the 'Sending' tab set the 'Sync UI With Device' type menu to 'OSC' and then choose the controller to sync with.

From the 'Media Bin State Sender' sub-inspector, set the OSC messages, key paths, and values to send for each clip possible clip state to set the desired colors and toggle states of individual buttons in TouchOSC.

A complete list of possible messages that can be sent to each type of UI item can be found in the TouchOSC: Control Reference documentation.

​Tip: The 'Control' tab of the inspector has data-receivers for changing the transpose (offset) of the trigger highlight for row up / down buttons.

Tip: When using multiple Media Bin plugins in VDMX use different color buttons states to represent different sets of clips and layers in TouchOSC.​


Sample configuration for changing both on/off states and colors of buttons in TouchOSC depending on the clip states in VDMX.

Converting a single DMX channel to a range of MIDI notes to trigger movies in CoGe

$
0
0

Download the project files for this tutorial.​

For this tutorial we're joined by Tamas Nagy, developer of the Mac VJ software CoGe, a semi-modular video app that is heavily extensible through use of Quartz Composer and is also one of the first to natively support the new Hap video codecs for GPU accelerated playback of QuickTime movies.

The goal here will be to receive a DMX channel over ArtNet in VDMX and convert it into a range of MIDI notes that will be then sent to CoGe to trigger movie files.

The basic slider technique used here can also be used with other data-source inputs besides DMX, or repeated to convert more channels of data to MIDI or OSC to control other parameters in CoGe.​

Notes:​


​Right-click on a slider in VDMX to detect DMX channels.


Receiving DMX input Port 1 / Channel 1 in the slider inspector.


​Slider 'Sending' tab with MIDI notes output to CoGe.


Auto ​MIDI Map Mode for receiving notes in CoGe ClipSynth.

VJ Spain Guest Tutorial: El plugin Control Surface

$
0
0

This special Spanish language guest tutorial on using the 'Control Surface' plugin comes from Marcos Prack from VJ Spain who joins us with a preview video tutorial of his upcoming 4 day workshop on using VDMX and Quartz Composer in Madrid this April. In case it isn't on your radar already, the VJ Spain website is an all around great online community featuring recent news, discussion, and tutorials for Spanish speaking visual artists.

More information about Marco's VJ course can be found on the VJ Spain website: http://vjspain.com/blog/2013/03/20/workshop-quartz-composer-vdmx-integracion-y-flujo-de-trabajo/

Related Tutorials: Watch the English language video tutorial on the Control Surface plugin.

Notes:


In the plugin's Workspace tab we can add a Control Surface window.


In the Control Surface Options window we can choose between buttons, Pop-Up Buttons, Sliders, Color wheels, Text fields and 2D Position.

It's possible to organize the differents things we add and resize it, turning on the

It's possible to organize the differents things we add and resize it, turning on the "Edit UI" checkbox in the UI Interface Inspector

"Con este plugin podemos crear superficies de control. Esto nos permite crear nuestras propias ventanas con botones, slider, menus pop-up y más cosas. Si bien esto es muy útil para crear, por ejemplo, un ventana con algunos botones que realicen una función en particular (por ejemplo disparar efectos) también es una opción a las ventanas por defecto. Podemos crear nuestra propia ventana donde tener los elementos de control que consideramos necesarios y dejar las ventanas por defecto de VDMX ocultas en el workspace inspector. De esta forma tendremos los controles que más utilizamos uno junto a otro, lo que nos permitirá mayor agilidad a la hora de trabajar."

"With this plugin you can create control surfaces. This allows us to create our own windows with buttons, slider, pop-up menus and more. While this is very useful for creating, for example, a window with some buttons that perform a particular function (eg apply effects) is also an option to windows default. We can create our own window where having control elements we considered necessary and leave the windows default VDMX hidden in the workspace inspector. In this way we will have more use controls next to each other, allowing us greater flexibility when working."

Using Waveclock to send MIDI clock to VDMX

$
0
0

Download the completed VDMX Project file for this tutorial.

Often when working with a DJ or other musician, it is the job of the VJ to keep the visual events in sync with the BPM of the music that is playing back. In some cases it is possible to get this information directly from the software they are using as MIDI Clock or MIDI Time Code, but otherwise to keep a beat clock in sync requires tapping out a tempo or manually dialing in a value.

One of the more powerful tools available to the modern VJ is Waveclock, a beat tracking application designed to listen to music from a microphone or line input and convert it to standard MIDI Clock that can be used as a master to drive VDMX and other VJ software. Waveclock is surprisingly accurate, with an emphasis on maintaining phase accuracy to keep the signal and visuals perfectly on beat. And as demonstrated in this video, it is also incredibly easy to use alongside VDMX.

For this tutorial we begin with enabling Waveclock to send MIDI Clock to VDMX by using the Clock plugin. From there, a step sequencer plugin is added and used to control the color parameter for a Quartz Composer composition playing on a layer. As a final step, an audio analysis plugin is used to adjust the radius size input for the composition to show off using the MIDI and audio capabilities of the two applications simultaneously.

Notes:

  1. Download Waveclock (Mac & Win) here: http://wavesum.net/products.html
  2. David Last is an awesome musician: http://davidlast.net/

​Waveclock application with MIDI clock output enabled.


Completed example setup with Waveclock driven color sequencer and VDMX audio analysis.

VJ Spain Guest Tutorial 2: El plugin Step Sequencer + Ableton Live

$
0
0

Once again for the lead up to his VJ Spain workshop on VDMX and Quartz Composer later this month we are joined by guest poster Marcos Prack with another Spanish language tutorial:

"Segundo tutorial de VDMX, esta vez os cuento una forma de utilizar el plugin Step Sequencer, que es usarlo para disparar los clips del Media Bin a través de diferentes presets. Todo esto utilizando Ableton Live que a través de notas MIDI activa Presets, FX y dispara los clips."

More information about Marco's VJ course this April can be found on the VJ Spain website:

http://vjspain.com/blog/2013/03/20/workshop-quartz-composer-vdmx-integracion-y-flujo-de-trabajo/

Also see Marco's previous guest Spanish language tutorial on using the Control Surface plugin.

Notes: 

Related tutorials: Receiving MIDI Clock from Ableton Live and Media Bin Basics.


Start by creating a Control Surface with 6 buttons, each will trigger a different FX and Step Sequencer preset.


Each MIDI clip in Ableton Live has 2 notes- one to change the Trigger Selection in the Media Bin, the other to trigger both a button of the Control Surface and a new movie.


In the Media Bin Options (Workspace Inspector > Plugins > Media Bin > Media Bin Options > Control) assign the MIDI notes to the Transpose Down function. In the Triggers tab we can assign the MIDI notes to each clip in the Media Bin.


Using the *spark d-fuser with VDMX with Toby Harris

$
0
0

For this guest tutorial we're joined by Toby Harris, creator of the *spark d-fuser video mixer which is now available for retail purchase for the first time ever. More about the history of the development of the mixer can be found in our blog post on Toby's collaboration with D-Fuse.

In this video Toby demonstrates the basic capabilities of the mixer and then covers how to use the OSC output option to adjust the audio levels in VDMX and Ableton Live running on each of the laptops feeding into the mixer for A/V mixing with DVI sources, and a quick look into the setup of a D-Fuse live cinema piece.

The *spark d-fuser is a very different take on a hardware video mixer design, where video means VGA, DVI, or HDMI at all sorts of resolutions, rather than NTSC, PAL or widescreen HD. That makes it a particularly useful tool for VJs and other visual artists looking to use computer software for live video performance and projection mapping. More videos describing how to use the video mixer can be found on vimeo or company website: http://sparklive.net/dfuser/

Some of the more noteworthy features for VDMX users and other Mac VJs include:

  • Crossfade between laptops with compositing control from flat blend to full additive.
  • Mix and then output through hardware like Matrox TripleHead2Go and DataPath X4.
  • Full-quality, pixel-for-pixel from VDMX canvas to stage.
  • Integrate mixer with lighting or audio equipment via OSC or DMX.

Using VDMX as a 2 Channel DMX Controlled Video Mixer

$
0
0

Download the completed example template project. If needed, also download some sample movies.

Building off the previous introduction tutorial on setting up VDMX to trigger movies like a DMX media server, here we will use a simple template for turning a Mac into a DMX controlled two channel video mixer for crossfading between two video sources with some additional playback controls such as volume level and contrast/saturation adjustment.

This basic setup can be easily built on with more layers and parameters to create custom rigs for VJing, media servers, theater visuals, and video installations to fit the specific requirements of projects where DMX control is needed.


Example DMX controlled two channel mixer template with sample movies.

Step 1: Open the 'Two Channel DMX Mixer' example project and load your movies into VDMX.

  • Drag files from the Finder or the media browser window.
  • Use built-in generator media such as 'Color Bars' and 'Constant Color' as test patterns.
  • Clips are triggered by their page index using DMX values received for Bus A (channel 4) and Bus B (channel 18).

No movies of your own? Download some samples from here or here.


Loading movies using the built in file browser.

Step 2: If needed, setup DMX receiving options in the VDMX Preferences.

The included template is set to receive incoming DMX on Port 1.

Click the 'Auto Setup Inputs' button to set the SubNet and Universe addresses of the input ports to match any sending detected ArtNet nodes on the network.

Step 3: Send DMX over ArtNet to trigger movies and adjust playback settings.

See the Read Me included with the example project for complete channel mapping.

Additional DMX mappings can be made using the UI inspector or the DMX hardware detect option.


DMX Preferences, receiving on ArtNet SubNet 4, Universe 4 from the Luminair iOS app over a WiFi connection.

Auto loading media from a Dropbox folder to VDMX.

$
0
0

With mobile apps making it easier and easier to share images and video files between mobile devices and desktop computers, it's now possible for Mac VJs to work with content that is being gathered and uploaded during a live performance. With the use of shared public folders, this makes it possible for all kinds of interactive possibilities, such as having the audience capture photos and movies on their phones to immediately transfer into the hands of the artists on stage.

In this video tutorial we'll look at using the popular file sharing service 'Dropbox' to transfer images from an iPhone to a Mac over the Internet, and then have those images automatically loaded into VDMX where they can be triggered and remixed. This same basic idea can be used with any folder, whether the media files are manually moved into it, copied over a network, or downloaded over the Internet.

Once this working, it's only two more steps to make this a Dropbox powered DMX Media Server.

Notes:

In the 'Workspace Inspector' under 'Files' select a page from the left sidebar the sub-inspector for the selected page provides options for specifying a folder on a local disk to automatically load new clips from.

Tip: Use the file type menu to apply a filter based on the kind of media files to be loaded onto the page.


​When 'Folder Sync' is enabled the icon for the page changes to a folder.


​Upload images from Dropbox on iOS or other platform.

VJ Spain Guest Tutorial Part 3 - Usando Quartz Composer en VDMX

$
0
0

Download the completed Quartz Composer patch for this tutorial.

Today we are once again joined by guest poster Marcos Prack with part three of his series of Spanish video tutorials for a lesson on using Quartz Composer compositions in VDMX: "En este tutorial os muestro como crear una composición en Quartz Composer y publicar parámetros que controlaremos luego en VDMX."

More information about Marco's VDMX and Quartz Composer VJ course later this April can be found here:

http://vjspain.com/blog/2013/03/20/workshop-quartz-composer-vdmx-integracion-y-flujo-de-trabajo/

Next up have a look at some of the other things you can do using Quartz Composer with VDMX.

1. Quartz Composer:


Using an Iterator in Quartz Composer we made a comp starting from a gif image. With Iterator Variables its possible to render each iteration in a different place of the screen.


In the top level we put a radial gradient for the background and published the radius. Also publish the color and size of the sprite.

2. VDMX:


In VDMX create a Control Surface with a Color Wheel to colorize the images. The LFO sends data to the Color Wheel's HUE creating a color loop.


Right click on the color sample in the QC Interface window to choose the Color Wheel of the Control Surface 1. Then the audio filter 1 to a Width (size) slider to control the circle's size.

Two Channel Video Mixer template for Livid OhmRGB Slim

$
0
0

Download the completed OhmRGB Slim mixer template for this tutorial and some sample movies if needed.

The OhmRGB is a hardware MIDI controller from Livid Instruments for DJs and VJs with a nice mix of faders, knobs and buttons for triggering clips or FX. It's an especially useful controller to use with VDMX because it has a versatile layout which can be adapted for a variety of different setups ranging from simple DJ style two channel video mixers to advanced multiple layer compositions.

This first basic example template turns your Mac into a simple two channel HD video mixer VJ setup controlled by the OhmRGM Slim controller. It makes use of MIDI talk-back to light up the buttons along with the media bin and is set up FX chains and 6 different composition modes. This starting point leaves all of the knobs on the controller available for further customization with your own video clips, FX and LFOs.

If you don't have an Ohm, this example VDMX setup also includes a control surface layouts to mimic the hardware so you can still try out the mixer and synth parts of the sample projects.

Looking for more ways to use MIDI controllers from Livid? Here are some other tutorials and examples from VDMX users to check out:


The completed two channel mixer OhmRGB Slim template for VDMX.


OhmRGB Slim connected to the mixer template running in VDMX.

For this template the assignments are pretty straight forward - the main button grid is used to trigger movies in the left / right media bins, the crossfader is used for mixing, the faders / fader buttons are used for left / right FX and the top-right buttons are used for switching composition modes.

To get some more use out of MIDI feedback with the OhmRGB, here are two useful tricks to try out when creating your own templates.

Send the value of the Two Channel Mixer crossfader in VDMX out by MIDI to change the colors of the XL and XR buttons on the Ohm.

Send the 'Every Beat' value from the Clock plugin to the button on the controller used for tap tempo to visualize the current clock rate.


Two MIDI senders on the crossfader, one for each button.


Using the 'Every Beat' data-source to light up a button on the Ohm.

Creating Video Feedback Loops on a Mac with VDMX

$
0
0

Download the completed project file for this tutorial.

One of the most powerful techniques used to create real-time visuals and computer graphics going back to the early days of video is the use of feedback loops - the method of taking the current output frame and using it as a source image in part of the next rendered output frame. This iterative process is particularly useful for VJs and other graphic artists looking to find a unique look or style for their visuals, and is easily simulated within VDMX by using layer groups and FX chains.

In this video tutorial we'll demonstrate how to create a simple feedback loop in VDMX and use it along with a few sets of FX and composition mode settings to get different visual styles in our output including echoes, glitch and pattern generators.

From here try adding a Movie Recorder plugin to capture the output from the feedback loop, or read more about the basics of using FX chains and layer composition.

Notes:


Creating a feedback loop by choosing 'Group 1' as the source for one of the layers inside the group itself.


Applying an set of of blurs, invert, sharpen and zoom FX the 'Feedback' layer to create a 'lava lamp' style output.


Try selecting different composition modes for the 'Feedback' layer to get glitch and other visual styles.

Making Custom Quartz Composer Text Players for VDMX

$
0
0

Download the completed project file and example Quartz Composer composition for this tutorial.

Text layers are similar to other video generators in VDMX, with a few additional UI items for working with strings of words and letters. Below these special settings appear any additional parameters specific to the Quartz Composer composition being used to render the text as video.


Text files can be loaded from a disk or created from the 'built in sources' contextual menu.


Player controls for the text input allow for stepping through the file by character, word, sentence or line returns.

Before creating your own text styles in Quartz Composer it is recommended that you read the tutorial on creating Quartz Composer based FX for VDMX.

"Text Source Composition" pop-up menu chooses which patch should be used to render the text for output. These Quartz Composer patches can be found in the qcTextSources folder in the Assets directory.

The special text generator protocol compositions for VDMX are designed to take a 'string' input and display it on screen. When a text file is played in VDMX5 the individual characters, words, and sentences are passed off to Quartz Composer patches to create a visual interpretation of the text. These special text patches must have an input splitter of type "String" with the published key "FileInput". 

Once added to the VDMX assets the text player composition will be accessible from the 'Text Source Composition' menu in the layers controls when text files are playing back.


Adding an Input Splitter with the title 'FileInput' to create a qcTextSource patch.

String inputs that end with the suffix

String inputs that end with the suffix "_FontMenu" will appear as a pop-up menu for font selection when loaded in VDMX.


'Example Text' composition used to render a text file in VDMX with font menu and player controls for strings.


Passing DMX Universes into Quartz Composer from VDMX

$
0
0

Download the sample project and composition for this tutorial.

One of the benefits of using Quartz Composer to create visuals on the Mac is the ability to work with lists of numbers- this can be particularly useful when a composition has a large number of parameters that need to be controlled remotely by a DMX lighting console or other ArtNet capable software.

Along with being able to directly control any UI item in VDMX, such as sliders and buttons with the value from a DMX channel, when using Quartz Composer compositions it is possible to pass in an entire DMX universe (512 channels) of data all at once as a structure of number values (ranged 0-255). Once inside the patch, the control information can be parsed programmatically to control real-time visuals or virtual lighting elements inside the patch, or to pass back value into VDMX by published outputs as control data.

For more information on setting up DMX over ArtNet check out some of our other tutorials on lighting design such as setting up VDMX as a media server.


Example VDMX project with DMX controlled circles over a checkerboard pattern.

In this example tutorial setup we'll be creating a simple QC composition that controls the color and position settings for two sprites representing virtual lighting fixtures. Each will use 6 consecutive DMX values, 3 for RGB, 2 for XY position and 1 for radius, for a total of 12 DMX channels. This simple patch is useful for creating masks that can be applied to other layers, or on its own as a real-time generated animation. It can also be loaded multiple times or further modified to represent more than two lights. When no ArtNet universe is selected for input, the patch will automatically switch into a test mode using its own internal LFOs for changing the settings.

DMX structure inputs are added to a patch using the Input Splitter of type 'Structure' with the suffix '_DMX' at the end of the published key name. This hint will tell VDMX to create the special DMX port selection menu for choosing which universe to pass into the patch through the splitter object. In our example we've also included an input setting for specifying a channel offset within the structure.


Macro patch with values for the 'Circle' object extracted from the structure list.


Creating a published structure input splitter with the suffix '_DMX' for an array of number values.


Pop-up menu for selecting an ArtNet universe to pass into the composition from the VDMX source controls.

Multi-display video mixing with VDMX on a Retina MacBook Pro

$
0
0

Download the example VDMX templates and media files for this tutorial.

Along with being able to work with more layers at higher resolutions, faster computers and more powerful graphics cards make it possible to output to multiple projectors or monitors from a single machine. In particular, the new 15" Retina MacBook Pro features a combination of a fast SSD hard drive along with two Thunderbolt and one HDMI ports making it possible for a VJ to power 2 or 3 different HD displays from a single Mac laptop.

For this video tutorial we'll walk through the basic steps of preparing VDMX projects with a double-wide and triple-wide design to output with separate source layers for each display.

Note that this same idea can also be used on a Mac Pro with multiple graphics cards.

Up next try adding the built in iSight camera into the mix, or as a challenge try updating a different template to use multiscreen output.

Notes and Tips:


On a Mac go to the 'System Preferences' under 'Displays' to set up your monitor or projector layout. Click on a display to highlight its border onscreen.


In VDMX press ⌘ + F to open the fullscreen options panel to set which outputs are in use. 


In the 'Layer Composition' controls use the 'Onscreen' positioning mode to anchor layers to the edge of the canvas.


Completed 5760x1080 project with 3 layers of 1080p video playing with FX to separate outputs.

To get the best playback performance when using multiple layers of HD movies in VDMX on the Retina MacBook Pro you may need to encode your clips using the Hap video codecs.

Also make sure to get any needed Thunderbolt to DVI (or VGA) adapters and if you are working with HDMI displays you may also need DVI to HDMI cables or adapters.

Guest Tutorial with Shakinda of iLoveQC

$
0
0

Download the completed Quartz Composer compositions and VDMX project for this tutorial.

Since it was started about a year ago the iLoveQC website has become one of the top resources and community sites for Quartz Composer developers and Mac VJs using the node based language. If you haven't already taken the time to check out the site, they've got some great interviews with artists, tutorials to get started, FX for download and even Final Cut Pro plugins for non-realtime video production. For this guest tutorial we're joined by iLoveQC founder Graham Robinson, also known as Shakinda who has been part of the in the VJ community for quite some time and is an all around QC lover.

In this video tutorial Shakinda demonstrates how he set up VDMX for a recent gig at El Divino demonstrating the off basic technique for making audio reactive black and white sources that can are used to mask a layer and composite it over another video.

Once you've got this mastered try combining these techniques with other tutorials on Quartz Composer or read more on using masking layers and alpha channels VDMX.

Notes:


Sprite objects used inside of an Iterator to create solid chevron arrows.


Interpolation object used to drive a 3D translation for animating the chevrons.


Starter project for working with QC based masks between layers in VDMX.

Making a customized version of 'Grid' in VDMX

$
0
0

Download the completed VDMX project file for this tutorial and sample clips in Hap 720p or PhotoJPEG 720p.

When creating new performance interfaces from scratch using VDMX it is often useful to look at the layouts of other VJ tools for ideas. Before switching our focus to VDMX full time, we used to develop other real-time performance applications for video artists, including Grid, a popular single movie triggering and remix app featuring a larger thumbnail view and simple transport controls. While limited in scope compared to VDMX, it had a great layout and keyboard mapping designed for instrumental control of scratching and scrubbing clips.

In this video tutorial we quickly recreate the main features of Grid including most of the keyboard shortcuts, playback capabilities, and general UI layout. The completed version is available for download and just like the original app it is based on, this example template can be used out of the box with your own clips for performances.

The Grid template is also a great starting point for a new project that includes newer features likes Syphon Output, FX processing, and DMX triggering of video files.

Tips and Notes for building Grid from scratch in VDMX:


Load video files by dragging from the Finder or using the built-in browser.


Enable movie RAM preloading for the Media Bin for instant triggering of HD movies.


Assign up and down array keys to change the trigger row in the Media Bin inspector.


Local slider presets replicating enabling mouse control for time and rate control by keyboard shortcuts.


Screenshot of the original version of VIDVOX Grid.


Screenshot of completed Grid template for VDMX.

The 8 Layer APC40 VJ Mixer Template for VDMX

$
0
0

Download the completed 8 Layer APC40 project file and some sample movies to go along with it.

The Akai APC40 is one of the most known MIDI controllers designed to be used alongside Ableton Live for DJing and music production. It also happens to be a pretty good controller for working with video and in this tutorial we'll look at some tips for setting up an 8 layer setup with controls matched to the layout of the controller itself.

With this 8 layer Ableton Live style VJ controller example template for VDMX you can load in your own movie files and start mixing clips immediately.

Read on for tips for getting started with this project. Below that we've included some notes notes on how you can recreate it from scratch.

From here, learn how to map the remaining knobs and buttons to your own selection of real-time video FX and other movie playback parameters, or check out more technique on working alongside Ableton Live.


Completed 8 Layer APC40 Mixer template for VDMX.


Notes for using this template:

If you're just starting with VDMX here are some tips for getting started with this template:


Drag your own movie files from the built-in browser or a Finder window to a Media Bin to load.


Shift + Click to select clips on a page. Right + Click to reveal contextual menu with file options.


Clip Launch triggers each column and vertical sliders are mapped to volume / opacity.

Notes for building this template from scratch:

When recreating this template on your own, here's some of the behind the scenes of how we put together this APC40 setup using VDMX. Before beginning it is also recommended to cover the tutorial on setting up Media Bin UI Sync with the APC40 and Control Surface plugin custom layouts.


Setting the target for 'Media Bin 4' to 'Layer 4' - repeat for each bin / layer pair.


Assign volume and opacity sliders for each layer to its slider in the control surface.


Use two MIDI receivers for each Layer 'Eject' button, one for the column 'Clip Stop' and one for the 'Stop All Clips' button.


Create a 'Row Trigger' slider along with the Media Bin' Trigger by Float' option to activate an entire row of clips with one click (see video, right).

Viewing all 154 articles
Browse latest View live