vjzual3 is a modular video processing system for VJ performances
vjzual3 is a modular video processing system built with TouchDesigner](http://derivative.ca/).
The application consists of:
A module is a component consisting of:
Most modules are loaded as .tox files into a common location and then cloned. Some modules are defined in-place (instead of being cloned), such as groupings/chains of other modules or modules that are too specific to be useful as a reusable component.
While simple modules can use a single audio/video input and output, some modules need to use multiple sources of audio/video. For example, a displacement module needs a secondary source of video used to distort the main input. To support this, the data node system provides a centralized list of data nodes (a/v sources) located in the various modules in an application. The data selector component provides a UI for selecting from this list of sources and retrieving the associated a/v stream, along with a viewer that shows the content of the stream. A data node is defined by a clone of the data node component, which has a globally unique ID and is associated with a video source (TOP) and/or audio source (CHOP).