VDMX

From VidvoxWiki

Example VDMX setup
Enlarge
Example VDMX setup

VDMX5 is a program that lets you assemble custom realtime video processing applications. This is an important distinction- instead of being stuck with a fixed processing engine and a static interface, it gives you the freedom to assemble not only whatever custom processing backend you desire, but it allows you a great deal of creative control over how you wish to interact with your backend. The general program flow is relatively straightforward: movies (and quartz composer documents) are played back in layers, image effects are applied to the video stream in each layer, and the layers are composited with each other. Plugins may be created which provide measures of additional functionality or alternative interfaces, ranging from simple clip-triggering to audio analysis to preview windows. There is a measure clock, which may be tied to devices outputting midi timecode, and is used to synchronize events. MIDI hardware may be used with nearly every slider and button in the app- VDMX has a midi detect mode which will learn your hardware as you use it. Once you find yourself with a setup you like, the preset manager is used to save everything so you don't have to retrace your steps.

Contents

Tutorials and Walk-Throughs

The Tutorial Project

VDMX5 comes with a built-in tutorial project that can be accessed through the help menu. This tutorial covers most of the basic concepts needed to get up and running quickly.

Frequently Asked Questions (FAQ) and User Forums

Several commonly asked questions are answered on the FAQ Page.

For questions not covered in the FAQ or on the wiki, visit by the official Vidvox User Forums.

External resources

Aienn's beginner walk-through

VJ Kung Fu's AV Sequencing with Live + VDMX + Monome

A Brief Overview Of VDMX5

Layers and Rendering

Like many other image-editing applications, Layers are the basic building block of VDMX. Without layers, nothing would be visible; movies, pictures, and Quartz Composer documents are displayed on layers. Each layer has a source- the source is the basis of what the layer looks like. The image that comes from the source is then run through the layer's FX chain, which is comprised of a series of video effects that modify the source's image. The resultant image is then composited with other layers- the order of the layers determines the order in which they are composited; layers at the top of the stack are composited atop the layers below them.

While layers render top-down, they may also be grouped. Groups are clumps of layers that are rendered together to produce a single image- the group. The resulting composited image may then have fx applied to it, and is free to be rendered as normal with other layers or groups. In other words, groups let you treat a stack of layers as a single layer- the group may be positioned or affected as a single layer, impacting all of it's component layers. Groups are an important way to organize or split up rendering.

Using the Layer Manager

The Layer Manager palette window is used to create and delete new layers, change their order and composition mode, and "group" layers.

Layer Windows

Layer windows contain a large variety of controls for the layers they contain; their layer tabs indicate and allow you to adjust rendering order, the interface elements inside the "Source Type & Composition" box allow you to determine what kind of layer it is (movie, quartz composer, or tap- and if it's a tap, what it's source is), the layer's composition mode, and it's opacity. At the bottom of the layer window is another box, with controls for adjusting the layer's size and position in the main output. The middle area of the window is for the FX-chain and FX presets. Visual effects can be added to layers using the Video FX palette window.

Layer Source Controls (Movie, QTZ, Text) Controls

Movie playback controls
Enlarge
Movie playback controls

The Layer Controls plugin is used to access the controls for any media that is being played back on a layer, such as the transport (time, speed, volume, scratch) controls for a movie, or the inputs for a Quartz Composer document. The controls for a layer exist even when not being viewed by a plugin, making it possible to use a single Layer Controls to set up and manage multiple layers at a time.

All layers have sources- the source is the basic video source that every layer starts out with. Currently, there are five basic layer source types: Quicktime movies, Quartz Composer documents, text files, live inputs, and video taps. A layer's source type may be explicitly set in the "Source Type & Composition" box, or by triggering cells in a media bin.

Standard Controls and Data-Sources

Sliders

Sliders

Sliders are by far the most common interface element you'll run across (those of you coming from gridpro should find VDMX's sliders quite similar). In principal, they're simple enough: sliders allow you to set a parameter's value within a specific range. As such, sliders have a min and max envelope, which are used to define the range in which the slider's value may lay. To set the min envelope of a slider, click and drag on the min envelope handle, or hold down "option" and click anywhere within the slider. Similarly, the max envelope can be adjusted by clicking and dragging on the max envelope handle, or holding down the "command" key and clicking anywhere within the slider. To move both the min and max envelopes at the same time, hold down both "command" and "option", then click and drag within the slider. Sliders can be easily automated (synchronized) to a data-sources such as LFOs, MIDI and audio analysis controls.

Buttons

Next to sliders, Buttons are the second most frequently encountered interface item in VDMX. There are two different kinds of buttons, momentary buttons and toggle buttons. Momentary buttons trigger actions, toggle buttons switch between two states. At any given time you can click on a button to cause it to trigger (for momentary buttons) or flip its on/off state (for toggle buttons). As with sliders, buttons can be automated or set to work with keyboard / MIDI shortcuts.

Data-sources

Behind the scenes, VDMX is constantly creating and receiving control information that can be used to automate and interact with interface controls such as Sliders, Buttons, and color pickers. These pieces of information are known as Data Sources. Some data-sources are always running, such as the horizontal and vertical mouse positions, while others are added dynamically as you create new layers and plugins. Hardware devices such as MIDI instruments and the Mac keyboard are also considered to be data-sources and can be used to control just about anything in VDMX.

Hardware Learn

In the title bar of the Slider / Button inspector window is a toggle button for activating Hardware Learn Mode (HW Learn). When active, any incoming keyboard, MIDI, or OSC messages are automatically assigned to the currently selected interface item (for example, sliders, buttons, and media bins). Interface controls that are compatible receive a blue highlight when HW Learn is turned on.

Plugins

Plugin Manager
Enlarge
Plugin Manager

About Plugins

VDMX has a number of plugins which perform a wide variety of tasks. Many plugins are generic data sources that can be used by any slider or button in VDMX, such as the Audio Analysis and Waveform Generator. Others are used for more crucial tasks such as triggering media files, previewing layers, and scratching movie files.

Plugins are managed using the 'Plugin Manager' palette window, shown at right. The left list contains the different kinds of plugins, the list on the right specifies all the plugins that currently exist. From the manager window, you can

You may use as many copies of each plugin as you want at any given time; this means you can have as many audio analysis modules, preview windows, midi output sessions, etc. as you need.

For a full list of plugins and their descriptions visit the Plugins Page.

Noteworthy Plugins

There are a few important plugins that are worth mentioning in the overview because they are part of the main building blocks of VDMX.

The Media Bin

The Media Bin is one of the most important plugins in VDMX5. Its primary purpose is triggering media files to playback on layers. Generally this is executed by clicking on the thumbnail of a movie in the thumbnail or list view using the mouse, or by pressing a keyboard or MIDI shortcut. Additionally, the media bin can be used for loading files from a hard drive and general file management within VDMX.

Layer Controls

The Layer Controls plugin is used to access the controls for any media that is being played back on a layer, such as the transport (time, speed, volume, scratch) controls for a movie, or the inputs for a Quartz Composer document. The controls for a layer exist even when not being viewed by a plugin, making it possible to use a single Layer Controls to set up and manage multiple layers at a time.

The Preview Window

The Preview Window plugin is used to display the current output of a video tap such as layer or live input. When previewing a layer, the opacity and composition mode can be adjusted.

Two Channel Mixer

The Two Channel Mixer plugin is used for adjusting the opacity level of two layers or groups at the same time, making it easy to seamlessly cross-fade from one source or mix to another.

Projects and Presets

Project files contain all the presets in the preset manager, all your behavior chains, all your layer-specific fx chains, and references to all your loaded media.

Presets save information needed to load back a particular part or all of the current setup including layer arrangement, what plugins are loaded, window positions, and all settings specific to individual layers / plugins. Each project file can contain any number of presets that you can switch between on the fly.

At anytime you can click the 'full' button in the Preset Manager window to make a new preset that restores all of your current settings. Existing presets can be updated to match the current state by selecting the preset in the preset list and clicking the 'update selected preset' button.

To save a project file, choose "Save Project" or "Save Project As..." from the File menu; to open a project file, choose "Open Project" from the file menu. When you save a project, all the presets in the preset manager, all your behavior chains, all your layer-specific fx chains, and all your loaded media is embedded in the project file. If you want to move your entire setup to another machine, all you need is your project file and your media- project files are meant to contain everything necessary to duplicate your setup.

  • It is important to note that if you do not make any presets, your project file will not save your layer / plugin / window setup at all.
  • VDMX periodically saves backup copies of project files: each time you make a new preset or update one of the existing presets, a temporary backup project file is written to disk. These backup projects are located in the same folder as your "normal" project, and share the same name as the normal project, with an appended tilde (~). This only happens after the first time you save a project, and you still need to remember to update presets.

Reporting crashes, beach balls, and other bugs

Problems with VDMX can be reported using the VDMX bug reporter web page. This page is just a list of first round questions that we typically ask people when they run into trouble.

When reporting beach balls (aka hangs), please be sure to include a Stack Trace and most recent Console Logs.

You may also want to visit the User Forums to see if anyone has had a similar problem.

The Crash Reporter

If VDMX crashes, the next time you open it when there is an available Internet connection, VDMX will attempt to send information relevant to the crash to us. This information is often very useful for us in making future versions of VDMX more stable. There are also available text fields for including any information that you think might be useful for us when tracking down the problem and an e-mail address that we can use to contact you if we have any questions or possible solutions. We never share this information, nor use this contact information for sending promotional announcements.. strictly for improving the user experience and the software itself. And yes, we do look at every single crash log that comes in.

Topic Reference

Here are links to several important topics in VDMX, organized alphabetically.

History

Pictures of older versions of VDMX can be found here.