Click on the link below to watch a video introduction to Jitter by John deKron
What's With the Name?
Max/MSP/Jitter is three things:
- Max, a graphical programming environment that provides user interface, timing, communications, and MIDI support
- MSP, for real-time audio synthesis and DSP
- Jitter, for video and matrix data processing
Max users are people who want to do things that go beyond the limitations of normal software. Max is a visual programming language - you connect objects together with patch cords to design what you want. For a short movie showing how this process works, click here.
While people have used Max to create a wide variety of applications, it's primarily designed to handle the basic elements of media: time, interactivity, and control.
MSP gives you the building blocks of a synthesis and DSP language in visual form. But more importantly, MSP permits synthesis and DSP to be controlled in expressive and powerful ways. The fact is, there are only so many ways to make sound, but there an unlimited variety of ways to control sound, due the way MSP's audio objects work together with Max's timing, control, and user interface tools.
Jitter extends the Max/MSP programming environment to support realtime manipulation of video, 3D graphics and other data sets within a unified processing architecture. And Jitter 1.7 has been updated to work with Max 5, which includes support for "probing" to visually debug your creations, automated inspectors for viewing object attributes, integrated documentation, unicode text, and more.
Because Jitter, like Max/MSP, is generic in nature, it offers unlimited possibilities for creative exploration. Whether you are interested in video processing, interactive art, teaching new media, or data visualization, Jitter offers both high and low level tools for working in exciting new ways.
Jitter abstracts all data as multidimensional matrices, so objects that process images can also process audio, volumetric data, 3d vertices, or any numerical information you can get into the computer. Jitter's common representation simplifies the reinterpretation and transformation of media. And with Jitter, many types of data can be processed on the GPU, leveraging the massively parallel computing power of today's latest graphics cards.
Although the Jitter architecture is general, it is highly optimized for use with video data, and performs with breathtaking speed. A robust set of mathematical operators, keying/compositing, analysis, colorspace conversion and color correction, alpha channel processing, spatial warping, convolution-based filters, and special effects deliver the building blocks for your own custom video treatments.
Jitter includes extensive support for Apple's QuickTime architecture, such as the playback of all QT supported file formats, real- or nonreal-time file creation, editing operations, import/export capabilities, integrated real-time QT effects, video digitizing, QTVR, file format conversion, and more. QuickTime audio may be routed into MSP to exploit MSP's powerful audio processing capabilities. For the production environment, Jitter provides support for digital video (DV) camera control as well as input and output via FireWire, and multiple monitor support for performance situations.
Jitter's integrated 2D/3D graphics support provides the tools to use hardware accellerated OpenGL graphics together with video, including the ability to texture 3D geometry with video streams in real-time, convert audio and video streams directly into geometry data, and render models, NURBS, 2D/3D text, and other common shapes. There is even low level access to geometry data and the majority of the OpenGL API for those who need to be closer to the machine.
Ease of Use
Jitter is tightly integrated with Cycling '74's Max/MSP graphical programming environment which lets you visually connect data processing objects together with patchcords to create custom applications in a similar manner to analog modular synthesizers.
This visual framework provides the power to build your own unique video effects, realtime video mixers, audio visualizers, image to audio synthesizers, algorithmic image generators, batch converter/processor programs, or whatever your heart desires. You can share the programs you develop with other Max/MSP users and create standalone applications just as is currently possible with Max/MSP. A free Runtime version is available that runs any application created with Max/MSP/Jitter.
Jitter includes interactive help files for each of its objects, detailed documentation, 37 tutorials, and a bounty of useful examples.