The final hurdle

Avatar

A New Media developers online playground - Alex Wilcox

Project 3: Patch Overview

This page is an overview of how my whole patch works you will find an explanation of each of the main sub patches that drive the software.

Key press routing

not as complicated as it looks this is simply detecting key presses and routing the wacom commands appropriately

not as complicated as it looks!

This is simply detecting key presses inside the key-control sub patch and then routing the graphics tablets values appropriately via the route object depending on which keys have been pressed.

Image routing

these wires are deciding which images should be going to the output

Overview of the image routing

these wires are deciding which images should be going to the output depending on which key was pressed last, the images that have been selected are then routed through the image effects sub patches before being passed to the output.

Music Control

Synthesis

This is the patch to map graphics tablet input to midi commands for the synthesis

This is the patch to map graphics tablet input to midi commands for the synthesis.

This has been done by turning the x,y and pressure values into a midi command. the buttons on the graphics tablets pen or the ‘g’ and ‘h’ keys can be used to switch the currently selected vocie of the FM7 synthesizer.  It also handles the recording of the sound into the currently selected buffer if recording has been turned on.

Sound channel

This is a 'sound Channel' in the software, it consists of a buffer to hold a sample, a vst routing object to select the effects being applied to the sounds output. it also has a recieve object to control the effects and a send object to send the output to the output mixer.

This is a 'sound Channel' in the software.

It consists of a buffer to hold a sample, a vst routing object to select the effects being applied to the sounds output. it also has a recieve object to control the effects and a send object to send the output to the output mixer.

Sample holder

This patch is reapeated for each of the six buffers to initalize them and control the playback

Sample setup

This patch is repeated for each of the six buffers to initialize them and control the playback, it allows the loading of an external sample or simply sets up a buffer ready to be recorded into.

VST effects manipulation

This patch decides which vst effect the audio is passed through depending on what has been selected

Routes audio channel through the vst effects

This patch decides which vst effect the audio is passed through depending on what has been selected, and also passes the graphics tablets x,y and pressure information to each effect to manipulate it. if the ‘0′ key has been pressed then it routes the graphics tablets Y value to the volume control for the appropriate track.

Sound ouput mixer

This is where the output for each of the sound channels is controlled, as you can see there is a volume control for each track and a master volume control aswell

This is where the output for each of the sound channels is controlled.

As you can see there is a volume control for each track and a master volume control aswell. The volume sliders values are parsed to my ’steroamp’ which mixes the tracks together.

Stereo amplifier / Mixer

This is where i controlled the sound output

This is where the sound is mixed together before sending it to the output

Image and video manipulation

Drawing to the ’sketch pad’

Patch for each drawing pad

This patch shows how I have handled the drawing for each 'sketch pad'.

The first 3 inputs take commands to start,stop and clear the drawing panel and the 4th takes the input from the graphics tablet to draw onto the pad. the 5th optional input takes an image or video to be the background of the drawing panel.

Merging the images

This subpatch is used inside the drawing patches to merge the drawing with an image or video using the chromakeying technique.

This subpatch is used inside the drawing patches to merge the drawing with an image or video using the chromakeying technique.

Recording the output

This captures the output of the video manipulation and also the sound and merges it into one quicktime video to be recorded to the hard-disk

merge and record output to disk

This captures the output of the video manipulation and also the sound and merges it into one quicktime video to be recorded to the hard-disk. It also ensures it is recorded at the same FPS as the video being created so that it looks the same as it is being created.