Skip to content

Introduction to VJing

VJing is artsy shit for the eyes, often in combination with audio and often seen at underground parties, also in Ilmenau: https://youtu.be/osOv9TgfSeI. Why are we interested in it? Because it's mega cool!

Resolume and Touch Designer are widely used for VJing, however these are only available for Windows and are not open software. In this workshop the focus will be on open software for creating visuals. Have fun!

In the video editing chapter you will learn how to build your own video library. However, for the start I can give you some of my videos to play around with. If we are not in a workshop context meeting face to face and you are reading this at home, just write me an E-Mail :).

Cpt 1: Vimix

Useful links:

Hints:

  • dont be too bright, remember there are people on the dancefloor that might be disturbed.
  • methods for keeping brightness down
    • reduce brightness level (you barely see anything)
    • increase brightness and contrast -> you have few bright elements sprinkled throughout the screen
    • edge filter
    • use another video as overlay (i.e. on the topmost layer) and put its effect to "subtract". ideally this video is some wobbly effect-like loop. like bubbles or something

Cpt 2: Video Editing for VJing

Useful links: - https://www.shotcut.org/

Hints:

  • keep your videos consistent in overall brightness level and movement pace (like in action scenes)
  • different types of loops serve different needs:
    • short consistent loop
    • longer more elaborate loops (for telling a story)

Cpt 3: Ossia Score

Useful links:

This chapter is about the open software Ossia Score, which is available for a donation. This is actually intended for building different scenes and playing them back one after the other, possibly also for interactive art installations and other stuff. We only use some of the functionalities of the software to build a VJ setup.

Ossia can be used to play any video loaded into the software before a performance, apply video effects on that and messing around with the parameters. The special thing for ossia is that you can chain these effects and other modules together in a node-like interface. We can change these effects as we wish in real time, and if you like, you can also make them audio-reactive. Instead of a video, you can also use other sources, for example a camera input.

Let's get it running

  1. create a folder for the project you are going to create today
  2. select a video from this folder and download it: https://cloud.tu-ilmenau.de/s/8PFR8PpqrCoFkMz. You can also choose another video from anywhere on the internet. I can help you with the download.
  3. open Ossia Score and create a new project.
  4. play the video in a separate window in a loop.
    1. drag and drop the video into Ossia Score's GUI.
    2. the start node of the sequencer is connected to the start node of the video with an interval. As a result, the video will only start after the playhead has run through this connection interval. So replace this connection with a graph link.
    3. as soon as you press play, the video is played immediately, but only once. But we want to loop it. To do this, click on the node at the end of the video interval and activate the trigger.
    4. add the “Passthrough” effect node and repeat steps 2 and 3 for this second resulting interval.
    5. connect the video output to the input of the passthrough effect.
    6. add a new device “Window” under “Devices”.
    7. now select this new device as the output of the recently added passthrough effect and start the scene. The new window that appears should now play the selected video in a loop.

Adding Effects

Now, you can add effects to the video you just got to loop. For this you can use different kinds of effects. You can find a small set of suggested ones below. Go ahead and try them out! Just search for their names through the search function. - Basics - Passthrough - Cross Zoom - Color Controls - Structure-changing - Polyglitch - kaleidoscope / mirror edge - Blending - Glitch displace - Color-changing - NoiseDither_Xl3Xzl - Neon - Edge Trace - FeedBackGlitch

Now, you might recognize that there are parameters of each effect, you can control. You could manually change them, but that might be tedious. An LFO might help you. LFO is short for low frequency oscillator. It outputs a low frequency signal that can be plugged into any kind of effect parameter. The LFO signal can be a sine wave, a saw wave, square wave, noise, ... etc. Just play around with it. Go ahead and add an LFO and plug its output to an effect parameter of your choice. Afterwards, just play around with it :).

Using a Camera

Instead of a video, you can also take the feed of a USB-Camera as video input and feed it through your effect chain. To do that, you follow the below steps: 1. Plug in your camera and add your camera as a device in a device browser. 2. Add a new passthrough node and set the camera as an input device. Now, you can just use this passthrough node as your input instead of the video.

Map your MIDI Controller

Instead of turning all those knobs in your effect chain with your mouse, you can also use an external device called "MIDI Controller". This is basically like a keyboard, just that it does not have keys, but knobs and pads and stuff. You can use basically any MIDI controller for that. However, it is just important, that it has a property called "usb class compliant". That means, it works on plug and play and you do not need to install any more software just to use that controller.

After you plugged in your controller, 1. Go to the "device explorer" in ossia score, add a MIDI input and choose the MIDI controller that you just plugged in. 2. Press some buttons on the controller so that the numbers associated with those buttons occur inside ossia's GUI. 3. If you want to map a button to some parameter of one of your effects: click on this effect. Unfold the parameter you want to map. There is then a text field where you can specify what you want to use to control this parameter. There, you can drag and drop the number associated with the button/knob on your controller into that field and now you should be able to control this effect 4. Values of MIDI Buttons and Knobs usually range from 0 to 127. If you want to map that to another value range, you can use the blocks "Micromap" or "Mapping curve".

Working with Audio Playing

Of course, you can also change parameters of LFOs and other kinds of blocks ;). Most importantly, you can map your MIDI controller to control the tempo (BPM) of a scene, thus changing the oscillation speed of LFOs. With doing that you can adjust your visual scene to fit the music if you are doing VJing for some music event.

Taking Audio Signals as Input

While you can make your scene audio-reactive using LFOs, you also can use your audio signal to control parameters of effects. However, to make it stable you have to apply some tricks by building a suitable effect chain. You can find a file with that effect chain in this repository.

Go ahead and integrate it into your pipeline. Of course, you can adjust the template itself, e.g. if you want to adjust the way the signal is processed or if you want to emphasize specific aspects of the input audio signal. If you have questions, you can ask the workshop instructor.