Grid Pro Quick Overview
From VidvoxWiki
Contents
|
Properties of Digital Video- the Theory behind the Art
- Digital Video consists of a series of images, which are meant to be viewed in a specific order at a specific rate. As such, there are two basic ways you can mix video; you can adjust the order (or speed) in which the images are shown (referred to as chronological mixing), or you can otherwise alter the actual images (by applying filters to the video, or combining/compositing additional video streams on it). GridPro is, at it's most basic level, a 2-bus mixer reminiscent of the traditional DJ rig, in that it consists of two sources which may be driven independantly, and are mixed together.
Chronological Video Alteration- Transport Controls
- Chronological mixing is a general term that refers to mixing styles (or components of styles) that revolve around time-based movie actions. Such styles tend to focus on triggering clips at specific times, scrubbing video, jumping back and forth at specific times, or otherwise manipulating the speed or order which the video frames are presented in. Each of the video buses in GridPro is a dedicated movie controller referred to as the transport controllers which gives the user full control over all the chronological properties of the movies.
Transformational Video Alteration- Video Effects
If you're not changing the order or speed which the images that make up video appear in, then you're changing how they actually appear. In GridPro, this is accomplished by implementing a series of filters (called effects, or FX) that transform the images that make up the video stream. To either side are examples of two commonly-used effects; 'Edges' (at left) traces a black lines around the edges of objects in the video stream. 'Matrix' (at right) downsamples the video images, resulting in a highly-pixellated or blocky image. Each of these filters has additional parameters which can otherwise change the extent to which the filter affects the image (for example, the 'Mosaic' effect lets you adjust the degree of downsampling, or how 'blocky' the resulting image is).
Further Transformational Video Alteration- Multiple Effects and FX Chains
At some point, you're going to want to start using more than one effect on a video stream at the same time. In GridPro, you can set up sequences of effects, called 'FX Chains'. these chains consists of a series of effects that are applied in order (from the top down) to the video stream. The first effect is applied to the video source, and then the second effect is applied to the result of the first effect, and so on down the chain. The fact that these effects are processed in a specific order is very important, because applying the same two effects in a different order can produce drastically different results, as shown by the framing images. On the left, the 'Edges' effect is applied first, and the resulting image (with black lines around the edges) is then downsampled in the 'Matrix' effect, resulting in a blocky image with some all-black squares (where the edges were particularly heavy). To the right, the image was downsampled first (which yielded a blocky image), and then this blocky image had it's edges traced.
Revised Mixing Model: Providing Facilities for both Chronological Mixing and Video Transformation
Since chronological control over the video sources already exists in each bus's transport controllers, the mixing model can be further revised to encompass control over the appearance of the video stream by adding series of effects (FX chains) in key locations in the video path (shown at left). The video streams from each bus feed into independent FX chains. The (altered) video that comes out of each FX chain is fed into the mixer; the composited video that comes out of the mixer is then sent to a third FX chain, where it is further processed before being sent to the external display. This allows the user to 'spin' each bus independantly for those more comfortable with the DJ paradigm (chronological video alteration), while also providing a means by which filters/effects can be applied and manipulated rhythmically with any connected hardware (transformational video alteration).
Common Interface Items- the bare minimum
We've done the best we can to wrap as simple an interface as possible around the most flexible architecture we could implement within a two-bus model, but using GridPro will be immensely easier if you know how to use one or two items that are seen and used just about everywhere.
Sliders, and why they're so cool
By far the most common interface item you'll run across, the slider can be found just about anywhere. Since mixing digital media consists purely of mathematical operations, every alteration and property of movie playback (as well as parameters of video effects) can be reduced to a series of values. These values are most commonly represented by sliders, because a slider is the easiest way we've found to quickly change a value, synchronize the value with a hardware control or other internal value (MIDI, the mouse, values from audio analysis, etc.), or set up oscillators that change the value in a set manner over time.
A slider can be in one of four modes: slider mode (the default for most sliders), sync mode, record mode, or wave mode. No matter what mode a slider is in, it has a value that it's sending to a parameter somewhere in your ass. Sliders also have envelopes, which are used to restrict the range of the slider to whatever you determine at runtime to be an aesthetically pleasant range of values. the value the slider's sending to the parameter will never go outside the range of the envelopes. In Slider and Sync mode, the envelopes are the black triangular handles on the left and right of the slider. In Record and Wave modes, the envelopes are black squares at the top and bottom of the slider.
There's a Slider Inspector: it's on the right-hand side of the screen, lovingly labeled "Slider Inspector". When you click on a slider, it becomes the 'active' slider, and it's color changes accordingly (inactive sliders are greyed out, while the active slider is always colored). The Slider Inspector allows you to change which mode a slider is in, as well as edit the mode-specific properties of the active slider (and only the active slider).
Slider Mode
This is the default (and simplest) mode. You change the value of the slider by clicking and dragging; you can also change the envelopes by clicking and dragging on them.
Sync Mode
If a slider is in Sync mode, then it's synchronized to some data value generated by one of the many controllers available in GridPro. For most sliders, putting them in synch mode has the slider sync'd to the horizontal mouse location in the screen (moving the mouse to the left-hand side of the screen is the minimum, the right-hand side of the screen is the maximum). If you want to change what the slider is sync'd to, you do so from a list in the Slider Inspector; if you want to sync the slider to a MIDI control, you would choose "midi detect" from the list, and then wiggle the control you want to use for the slider. To synchronize a slider to a value from the audio analysis module, you'd first click the 'Analysis' button next to the source-list, and then choose either the low, mid, or high band.
In addition to letting you choose what the slider is synchronized to, the Slider Inspector also has two toggles in Sync mode, which will also appear in Record and Wave mode. The first of these options is scaling. Sliders have envelopes which restrict the range of values the slider can output. Scaling automatically scales the input from whatever the slider's sync source is to fit between the slider's envelopes. In other words, it lets you use all of your input device to move the slider precisely within the envelopes (graphics at right). The second option is invert, which quite simply inverts the value, scaled between the left and right envelopes.
Record Mode
While you're playing around with sliders, you should keep in mind that each slider has the ability to record whatever you're doing to it by switching the slider into Record Mode via the Slider Inspector. Once you put the slider into Record mode, it starts recording data from whatever it was last synched to (or the horizontal mouse position, which is most commonly the default).
Wave Mode
Wave mode lets you turn any slider into an oscillator which can automate part of the application. Once you decide you've recorded enough data (by either clicking the 'done' button in the Slider Inspector or just changing it to Wave mode), you'll want to switch to Wave Mode to start playing back what you've recorded. Playback of the recorded wave can be quantized (the default: play back the wave 'x' times every 'y' measures) or non-quantized (play back the wave at a percent of the recorded speed, or over a specified period of time). For more information on setting the clock (tap on the downbeats, hold a key for a measure, input the BPM manually, or slave to a MIDI timecode source), check out the manual page for the clock. There's also a graphical wave editor which lets you trim and remix the recorded wave- each slider has infinite levels of undo/redo. Keep in mind that you can still adjust the envelopes to restrict the range of the output value. You'll also notice that the Slider Inspector has several buttons when in wave mode, which allow you to copy or paste waves from other sliders or the list of saved waves, as well as to save the current wave for later use.
How to *really* use sliders- keyboard shortcuts
GridPro ships with a number of keyboard shortcuts that provide for a quick and thorough interaction with sliders.
- Hold down option while clicking anywhere on a slider to move the minimum envelope.
- Hold down command while clicking anywhere on a slider to move the maximum envelope.
- Holding down both option and command while clicking anywhere on a slider lets you move both the max and min envelopes at the same time, preserving the distance between them.
- Hold down shift while clicking on a slider to enable full-screen scaling; as soon as you click on the slider, the mouse is jumped to the horizontal location in the screen that corresponds to the value you clicked on. You can now use the entire width of the screen (instead of the width of the screen between the two envelopes in the slider) to specify the slider's value between the two envelopes. This modifier also works with command-click, option-click, and command-option-click...
- Instead of clicking on tabs in the Slider Inspector to change modes, you can type command-1 to put the currently selected slider in Slider mode, command-2 to put a slider in Sync mode, command-3 to put a slider in Record mode, and command-4 to put a slider in Wave mode.
- If you've got a wave that you like and want to use it somewhere else, you can copy and paste waves between sliders. command-c copies, and command-v pastes.
- If you type command-0 (zero), it's equivalent to putting a slider in Sync mode and selecting "midi-detect"; the slider will be synched to the next MIDI control you move.
Presets- saving what you've done
It's inevitable that at some point, you're going to get things *just* the way you want them, and will want to record what you've got somehow so you can load it again later. For this reason, GridPro has a multi-level system for saving and loading presets. Throughout the app, you'll see groups of dots. These otherwise inscrutable little devils are referred to as preset banks; each preset (dot) in the bank corresponds to presets for that bank's group of affected interface items. A preset bank in an effect saves the state of all the interface items in that effect (and that effect only). Each preset in the preset bank for the FX chains saves the overall chain (the effects that are in it and the order they're in) as well as the state of every interface item for every effect.
If this sounds in any way confusing, a couple minutes' worth of tinkering should clear everything up, because using presets is super-easy. Shift-click on a dot to save the preset. Click on a dot to restore it. When your preset banks start getting full, you can use the Preset Manager to save and load banks to disk. And don't worry- when you quit GridPro, your current preset banks are saved, and opened automatically next time you launch.
Bringing windows to the front: what to do if something's covered up
GridPro has a lot of windows; in addition to the windows that are open by default (the grid window, 3 FX chains, the Slider Inspector, and the preview window), there's the Preset Manager, FontSynth, Preferences, and additional interfaces used by various custom Event Shortcuts. At some point, you're probably going to run out of screen space, and windows will start to have to overlap. Even if a window is partially covered, you can still interact with whatever's visible without bringing the window to front by interacting with it normally. If you would like to bring a window (any window) to the front, command-click anywhere inside it. You can also bring a window to the front by selecting it from the 'Windows' menu.
Putting Theory Into Practice: Using the Interface
Adding Files to the Media Grid
How to add files to the media grid
Triggering Files in the Buses
Once you've got some files in the grid, you can cause the files to be played ('trigger' them) in either bus. There are several ways you can trigger files in the grid: you can use whatever MIDI hardware you've got available, you can use your computer's keyboard, or you can trigger files with the mouse by clicking on them.
Which Bus Will This Movie Play In? The Mixer
When a file is triggered, it has to play in a bus; unless bus-targeted triggering is on, the mixer determines which bus the triggered file will play in. In the upper right and left-hand corners of the mixer are a pair of icons; the movie projector icon indicates which bus the next clip will be played in (the next movie will play on the side that's orange). You can change which bus will be the target by either clicking on the deactivated icon, or using the keyboard shortcut 'command-L' to toggle which side the next clip will play in.
You may notice that as you trigger clips, the target bus switches automatically to keep a movie playing in each bus; when you trigger a new clip, it starts playing in the 'orange' bus, the crossfader slider (labeled 'mixer_position') automatically fades the clip you just triggered in, and then the target bus is toggled so the next clip will begin playing in the opposite bus. The behavior of toggling which bus the clip gets sent to and then fading it in is known as 'auto-transition mode', and is one of three transition modes the mixer has: auto-transition (the default), auto-layer, and manual. Auto-Transition mode triggers in alternating buses, fading the newly-triggered clip in. Auto-Layer mode fades the target bus out, triggers the clip in the target bus, and then fades it back in. Manual mode simply triggers the clip in the target bus, and leaves the crossfader untouched.
Chronological Mixing: Playing With Time
Once you've triggered a movie in either bus, the Transport controls (pictured at right) are used to control playback of the movie. The most obvious controls are the sliders which regulate the clip's speed (how fast it's playing), time (the slider represents the duration of the clip; min & max envelopes are in/out points, slider value is the playhead), volume, and balance (self-explanatory). At the top-left of the controller are buttons for increasing/decreasing the speed, and pausing playback; below the 'time' slider, there are four buttons for setting and resetting the clip's in/out points, as well as the clip's loop mode selector (loop, reversing loop, and play-then-stop). To the right of the 'speed' slider is the jog toggle, which simply puts the 'speed' slider in Sync mode. To the right of the 'time' slider is the scrub toggle, which puts the 'time' slider in Sync mode. When you're scrubbing a movie, the 'scrub.poll' slider determines the frequency at which the playhead jumps to the scrub location; playback continues at the normal speed between jumps. If this sounds in any way confusing, turn scrub mode on, set the speed to 4x, and sync the 'scrub.poll' slider to the vertical mouse; once you've done this, moving the mouse horizontally sets the location which the playhead jumps to, while moving it vertically adjusts how frequently the playhead jumps to the desired location (with the speed cranked up to 4x, this should be especially visible).
On the left side of the transport controls is a column of five circles; these circles let you save various playback properties of the currently playing cell in the grid (next time you trigger the cell, playback will begin with the saved properties). From top to bottom, the buttons (if toggled) will save the clip's current: speed, playhead location (where the playhead was when the movie last stopped playing), in/out points & loop mode, volume, and balance. These cell properties are saved with the grid
The Mixer & Composition- How do I do a lumakey?
Earlier in this document, you were introduced to the mixer- at least, the top half of the mixer. While the top half determines which bus a movie will play in, which bus is the recipient of keyboard shortcuts, and which bus is currently faded in, the bottom half of the mixer determines how the two buses are combined ('mixed', or 'composited'). The space in the middle of the bottom half is reserved for the interfaces for the various mixer modes; to either side of this space is a list of all the transitions.
- Selecting a transition from the list on the right displays the transition's interface in the region in the middle, and begins using the selected transition to composite the two video streams.
- Selecting a transition from the list on the left displays it's interface in the middle area, but does NOT use the transition for mixing (hence the label 'show' above the list). This is useful for preparing a transition before you switch to it.
With this in mind, if you want to combine two streams using a lumakey (masking out areas based on how light or dark they are), you would click on "lumakey" in the right-hand list, which makes it the current transition, and displays it's interface. The 'fill' buttons let you decide which areas will be masked out (dark or light), and the 'source' buttons let you decide which stream is "on top" (which stream is masked- the default should be 'auto', which ensures that the masked stream is switched so the appropriate bus is "on top"). Try moving the crossfader back and forth, and note the effect.
This might be a good point to try experimenting with some of the other transitions in the list- just click on the name of the transition in the list on the right, and monkey around with the crossfader.
Making Effects and Managing FX Chains- Transformational Mixing
At the beginning of this document, you were introduced to the basic idea behind video effects, and FX chains. GridPro has 3 FX chains; one for bus A's video (bus A video source -> bus A FX chain -> mixer), one for bus B (bus B video source -> bus B FX chain -> mixer), and one for processing the video coming out of the mixer before it's displayed. Creating an effect consists of clicking on the name of the effect in a list, located by default on the right-hand side of the screen (labeled "Add FX"). Please note that where you click on the name in the list matters a great deal; if you click in the left third of the list item the effect will be created in bus A's FX chain (left chain by default), clicking in the middle creates the effect in the mixer's FX chain (middle chain by default), clicking in the right third of the list item creates the effect in bus B's FX chain (right chain by default).
To the right is a labeled diagram of an FX chain and some sample effects. In the top left corner of the FX chain, you'll notice there are controls for repositioning and resizing the FX chain; those of you with larger monitors may want to take the opportunity to make your FX chains taller, as the default installation of GridPro has the chains sized to fit within a 1024x768 screen (for our 12" powerbook/ibook users). To the right of these is an orange dot; this dot toggles the FX chain on and off. On the right side of the FX chain, running along the top, is a preset bank which can be used to save all the effects in an FX chain, as well as the settings of all the individual effects.
While every effect is different, and they therefore have a wide variety of interfaces specific to each, all effects have some controls in common:
- Click & drag on the title of the effect to reposition it within the FX chain.
- The arrow on the left-hand side of each effect collapses or expands it, allowing you to fit more effects onscreen at the same time.
- Similar to the orange dot in the FX chain, the orange dots in each effect toggle the effect on or off.
- The 'x' button deletes the effect from the chain.
- The wet/dry slider in each effect adjusts the opacity of the effect.
Movie Taps and FX Chains- Feedback loops, Masking, and Composition
Video flow throughout GridPro is fairly straightforward; video comes from two sources, each source gets processed through an FX chain, the sources are mixed together, and then processed through one more FX chain before display. There also exists the means to send video from any one point in the video pipeline to any other point in the video pipeline; these are called video taps, and are implemented as effects. There are two different kinds of video taps: Send taps and Receive taps.
- Send taps send video. The diagram at right shows all the built-in Send taps, and where the video they're sending comes from. You can create additional Send taps by creating instances of the effect called "s.tap-send". The video that gets sent to the "s.tap-send" effect is sent to all Receive taps sharing the same name; new taps are automatically named as they're created.
- Receive taps receive video from Send taps. There are a number of different effects that are based around Receive taps which perform various effects such as simple blending, masking, and compositing. All Receive taps have a pop-up menu, from which you can choose the Send tap that you want to receive video from.
All taps can be found at the very top of the 'Add FX' list. Send and Receive taps are differentiated by their names; Send taps start with "s.tap", and Receive taps start with "r.tap". Video getting sent to Send taps gets sent to all Receive taps of the same name.
A good example of video taps in use is a feedback loop. A feedback loop is created when a loop is created in the video path, usually by plugging the output of a video system into it's input. Depending on the intermediary video processing, the results can be quite varied; in the example at right (which you're encouraged to recreate), the overall effect is spinning, zooming trails. In this example, video runs through the 'edges' effect, then video from the output of the chain is mixed with the output of the edges effect, then the result is rotated, and mixed back in the chain. The wet/dry slider in the Receive tap adjusts the amount of feedback.
How to use a DV Camera or other live input
If you've got a video camera, you can hook it up to GridPro, and mix with the live video stream. There are two ways of accomplishing this: the easiest, by far, is to just create a Receive tap (such as the "r.tap-blend" effect), and select "LiveVideoInput" from the source pop-up menu. You can also select a cell in the grid (shift-click on it), and then choose "Make Selected Live" from the 'Cell' menu. The cell should display the text "live feed", and next time it's triggered, the transport controller will begin playing back a video buffer containing the last 30 received frames (30 is the default; you can adjust the size of the video buffer in the preferences).
