<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>

<channel>
	<title>Cycling 74</title>
	<atom:link href="http://cycling74.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://cycling74.com</link>
	<description>Tools for Media</description>
	<pubDate>Wed, 01 Sep 2010 16:06:46 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Project 111: operand</title>
		<link>http://cycling74.com/2010/09/01/project111operand/</link>
		<comments>http://cycling74.com/2010/09/01/project111operand/#comments</comments>
		<pubDate>Wed, 01 Sep 2010 16:06:34 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[effects]]></category>

		<category><![CDATA[granular]]></category>

		<category><![CDATA[step sequencer]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5714</guid>
		<description><![CDATA[Author: lewis edwards [operand]
Project Date: first september two-thousand-ten
manchester, uk.

sixteen track granular step sequencer, which has the capability to control each modules step/clock separately.
with stereo delay and reverb, plus a wealth of other options to have fun with.
operand is also my alias for max based music.
How Max Was Used:
every bit of the way. using the very [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: lewis edwards [operand]</h2>
<h3>Project Date: first september two-thousand-ten</h3>
<p class="location">manchester, uk.</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project111.png" alt="project" /></p>
<p class="project">sixteen track granular step sequencer, which has the capability to control each modules step/clock separately.<br />
with stereo delay and reverb, plus a wealth of other options to have fun with.<br />
operand is also my alias for max based music.</p>
<h3>How Max Was Used:</h3>
<p class="project">every bit of the way. using the very capable and lovely max for live objects, alongside some of my own objects.</p>
<h4><a href="http://www.smokingbunny.co.uk" target="_blank">Visit the Project Website</a></h4>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/09/01/project111operand/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Jitter Recipes: Book 3</title>
		<link>http://cycling74.com/2010/08/31/jitter-recipes-book-3/</link>
		<comments>http://cycling74.com/2010/08/31/jitter-recipes-book-3/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 13:38:36 +0000</pubDate>
		<dc:creator>Andrew Benson</dc:creator>
		
		<category><![CDATA[articles]]></category>

		<category><![CDATA[tutorials]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[DSP]]></category>

		<category><![CDATA[graphic]]></category>

		<category><![CDATA[home]]></category>

		<category><![CDATA[jitter]]></category>

		<category><![CDATA[OpenGL]]></category>

		<category><![CDATA[timing]]></category>

		<category><![CDATA[UI]]></category>

		<category><![CDATA[video]]></category>

		<category><![CDATA[vj]]></category>

		<guid isPermaLink="false">http://veryhandso.me/?p=1964</guid>
		<description><![CDATA[The third installment of Jitter Recipe Collection.
More snacks for the Patching Enthusiast! Stay tuned for new entries to your favorite cookbook.
]]></description>
			<content:encoded><![CDATA[<div class="introtext"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/ab_recipe-book3/intro.jpg" width="150" height="108" align="left" />
<p>A new Jitter Recipe &#8220;<a href="#rendermaster">RenderMaster</a>&#8221; is an example of creating a complex rendering pipeline with post-processed output using Jitter&#8217;s OpenGL tools.  It also provides a convenient modular interface for adding new elements to your rendered scene.</p>
</div>
<p><span id="more-1964"></span></p>
<div class="story_body">
<p>Below you will find the third installment of Jitter Recipe Collection. More snacks for the Patching Enthusiast! Stay tuned for new entries to your favorite cookbook, or browse earlier installments of the Jitter Recipe series: <a href="http://cycling74.com/2006/02/06/jitter-recipes-book-1/">Part 1</a> and <a href="http://cycling74.com/2006/02/14/jitter-recipes-book-2/">Part 2</a>.</p>
<p>Download the <a href="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/JitterRecipes-Book3.zip">Max 4.6 patches and the Max 5 patches</a> for all the recipes below.</p>
<h2>Recipe 26: VideoSynth3</h2>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/ab_recipe-book3/JRvidsynth3.jpg" alt="" /></p>
<h3>General Principles</h3>
<ul>
<li>Performing transformations on a 3D matrix</li>
<li>Generating video-synthesis with audio signals</li>
<li>Colorizing a grayscale video</li>
</ul>
<h3>Commentary</h3>
<p>
The mechanics of this patch are very similar to the RagingSwirl patch, applied to video processing instead of OpenGL geometry. In this example, we are actually distorting and manipulating a 3D matrix, but only viewing one slice of it. The jit.charmap is used to turn our 1-plane matrix into a full color image.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.rota</li>
<li>jit.poke~</li>
<li>jit.matrix</li>
<li>jit.charmap</li>
<li>jit.noise</li>
<li>jit.dimmap</li>
</ul>
<h3>Technique</h3>
<p>
Using the &#8220;bot&#8221; subpatch, our matrix is continuously drawn into with the jit.poke~ object.
</p>
<p>
This is then rotated across 2 different dimensions using a combination of jit.dimmap and jit.rota (see RagingSwirl).
</p>
<p>
Next, we take one 2D slice of the larger matrix for display using the &#8220;srcdim&#8221; messages.
</p>
<p>
This is then converted to a 4-plane matrix and colorized using jit.charmap. By using an upsampled color map, we are able to constrain the palette, and decide between a smooth, cloudy look or a flat, hard-edged look.
</p>
<h2>Recipe 27: Debris</h2>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/ab_recipe-book3/JRdebris.jpg" alt="" /></p>
<h3>General Principles</h3>
<ul>
<li>Using the alpha channel to do complex blending effects</li>
<li>Analyzing movement between frames</li>
<li>Using feedback to maintain continuity.</li>
</ul>
<h3>Commentary</h3>
<p>
This demonstrates a way to generate an alpha-channel based on an analysis of the video. Here we use the amount of movement (difference) between consecutive frames, and then impose a threshold to decide what pixels will be visible. The effect resembles that of a degraded digital video signal, and can be used to generate all sorts of pixel debris.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.qt.grab</li>
<li>jit.rgb2luma</li>
<li>jit.unpack</li>
<li>jit.pack</li>
<li>jit.matrix</li>
<li>jit.op</li>
<li>random</li>
</ul>
<h3>Technique</h3>
<p>
The most important aspect of the processing is the generation of an alpha mask. To do this we first convert our video stream to grayscale using jit.rgb2luma.
</p>
<p>
The matrix is then downsampled using random &#8220;dim&#8221; messages, generated by the random object.
</p>
<p>
This is then compared to the previous frame using jit.op @op absdiff to get the absolute difference between the two. Note that we are taking advantage of the trigger object to perform this slight of hand.
</p>
<p>
Once we have generated our difference map, we then use jit.op @op &gt; to create a threshold. This means that it will turn on any pixel that has changed more than the threshold. This will then serve as our alpha mask, but passing it into the first inlet of the jit.pack object.
</p>
<p>
Once our alpha channel has been packed in with our live feed, this is then blended with our current image using jit.alphablend. The resulting image is then fed back to be blended with the next frame using a named matrix.
</p>
<h2>Recipe 28: SubTitle</h2>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/ab_recipe-book3/JRsubtitle.jpg" alt="" /></p>
<h3>General Principles</h3>
<ul>
<li>Adding text to live video display</li>
<li>Converting text to matrix format</li>
<li>Imposing a specific rendering order</li>
</ul>
<h3>Commentary</h3>
<p>
I get a lot of questions about dealing with text in video patches. Whether you are using text as labels, titles, or subtitles, you will generally want it to be in the foreground. In order to do this successfully, while maintaining the transparency of the jit.gl.text2d&#8217;s bounding box, you must impose a drawing order.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.gl.videoplane</li>
<li>jit.str.fromsymbol</li>
<li>jit.textfile</li>
<li>jit.gl.text2d</li>
</ul>
<h3>Technique</h3>
<p>
The key thing to this patch is maintaining the render order. To do this, we turn the @automatic off for all of our gl.objects, and then use the trigger object to bang them in sequence.
</p>
<p>
Using the jit.str.fromsymbol object, we route the text output from the textfield and convert it to a jitter matrix for rendering single-line text.
</p>
<p>
The jit.textfile object is very useful for dealing with formatted text. Simply double-click the object to bring up a text editing window.
</p>
<p>
By turning on @blend_enable for the jit.gl.text2d object, we make sure that only the text itself is displayed.
</p>
<p>
To generate the shadowed text, we actually render the text twice - once in black, and then offset in white.
</p>
<h2>Recipe 29: Stutters</h2>
<h3>General Principles</h3>
<ul>
<li>Generating timing effects with frame messages</li>
<li>Quicktime movie playback and looping</li>
</ul>
<h3>Commentary</h3>
<p>
This example is a simple patch that demonstrates a way to generate looping effects with jit.qt.movie. This is very useful for those who are interested in working with looping videos, and creating realtime editing patches. With a little tweaking, this patch could serve as the basis for more complex playback procedures.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.qt.movie</li>
<li>accum</li>
<li>jit.window</li>
</ul>
<h3>Technique</h3>
<p>
First, we need to set jit.qt.movie&#8217;s autostart attribute to be off, to prevent it from playing back the movie file automatically.
</p>
<p>
The key to understanding this patch is the use of the accum (as a counter) along with the modulo (%) operator. This allows us to count loops.
</p>
<p>
One tricky bit is the use of the route object to obtain the framecount of each movie loaded into the jit.qt.movie object. This sets the modulo size of the entire movie, which makes sure that we always send frame numbers that are within the range of actual frames in the movie.
</p>
<p>
When the stutter toggle is turned on, a shorter loop of numbers is generated that is added to the current frame number.
</p>
<p>
These numbers are then sent to jit.qt.movie using the &#8220;frame&#8221; message.
</p>
<h2>Recipe 30: SoundLump</h2>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/ab_recipe-book3/JRsoundlump.jpg" alt="" /></p>
<h3>General Principles</h3>
<ul>
<li>Using audio input to generate geometry</li>
<li>Using an environment map to create reflective surfaces</li>
<li>Using matrix feedback to generate motion</li>
<li>Using geometrical expressions to create shapes</li>
</ul>
<h3>Commentary</h3>
<p>
This patch takes an audio signal and generates a cascading, lumpy surface. Using some simple expressions, this surface is then distorted to create a pregnant lump. Environment mapping creates a liquid-like reflective surface.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.catch~</li>
<li>jit.gl.mesh</li>
<li>jit.matrix</li>
<li>jit.dimmap</li>
<li>jit.gl.texture</li>
<li>jit.qt.grab</li>
<li>jit.expr</li>
</ul>
<h3>Technique</h3>
<p>
We take the vector of audio grabbed by jit.catch~ and render it to a single row of a matrix. This matrix is then stretched down slightly and fedback. This generates the cascading effect.
</p>
<p>
We then flip the matrix using jit.dimmap and use jit.expr to create the coordinates of our OpenGL shape.
</p>
<p>
By taking the sin of the x and y coordinates, we generate a rounded lump across the z-coordinates.
</p>
<p>
Once we have generated our figure using jit.gl.mesh, we use @tex_map 3 to apply our texture as an environment map. Lighting is enabled by turning on @auto_normals and @lighting_enable.
</p>
<p>
Our texture is generated using a similar technique to that used with our sound vector.
</p>
<h2>Recipe 31: Animator</h2>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/ab_recipe-book3/JRAnimator.jpg" alt="" /></p>
<h3>General Principles</h3>
<ul>
<li>Using the system clock for solid animation timing</li>
<li>Animating parameters using breakpoints and pattr-family objects</li>
</ul>
<h3>Commentary</h3>
<p>
This example shows a good way to generate stable timing for automation parameters, despite the fluctuating framerates common to Jitter. By using the CPU clock, we ensure that the flow of the animation is steady regardless of framerate. It also shows a simple way to use autopattr and pattrstorage to manage many parameters at once.
</p>
<h3>Ingredients</h3>
<ul>
<li>cpuclock</li>
<li>jit.gl.mesh</li>
<li>autopattr</li>
<li>pattrstorage</li>
<li>function</li>
</ul>
<h3>Technique</h3>
<p>
In order for autopattr to see our UI elements, we&#8217;ll need to name each of these objects. To do this,we simply select the object and hit Command+&#8217; (mac) or Control+&#8217;(windows) and enter a name into the field.
</p>
<p>
Once we have set up our named UI objects, we can then store presets using the pattrstorage objects.
</p>
<p>
Because cpuclock counts the number of milliseconds since Max was opened, we will need to constrain the range of this output to be useful for us. To do this, we use a modulo (%) operator. The output is then fed into the function object, which outputs the value at that x-location of the curve.
</p>
<p>
This patch utilizes the handy interpolation function of pattrstorage, which allows you to recall in-between states by sending floating-point values.
</p>
<p>
This same technique could be applied to any number of parameters for any number of OpenGL or other Jitter objects for a complex animation setup.
</p>
<h2>Recipe 32: Hold Still</h2>
<h3>General Principles</h3>
<ul>
<li>Using frame-differencing to detect movement</li>
<li>Using video sensing to control sound synthesis</li>
</ul>
<h3>Commentary</h3>
<p>
One of the most straightforward ways to do video sensing with Jitter is to perform frame-differencing, which gives you a reading of the amount of movement. Using a couple of basic Jitter objects, we can map the amount of motion in a scene to a variety of synthesis parameters.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.qt.grab</li>
<li>jit.op</li>
<li>jit.rgb2luma</li>
<li>jit.slide</li>
<li>jit.3m</li>
</ul>
<h3>Technique</h3>
<p>
First, we convert our video stream to single-plane using jit.rgb2luma. We do this for simplicity. You could also try performing these calculations with all of the individual color channels for more complexity.
</p>
<p>
To get the difference between consecutive frames, we use jit.op @op absdiff. This will show us the amount of movement between frames. We then use a jit.op to do apply a threshold. This will give us a binary image.
</p>
<p>
This image is then fed through jit.slide to remove flickering and smooth out the data flow.
</p>
<p>
The jit.3m gives the mean value of all of the cells in a matrix. If you remember your arithmetic, you will know that the mean is derived by adding all elements together and then dividing by the number of elements. We take the inverse approach to calculate the total number of white pixels in our image.
</p>
<p>
This is done by first multiplying the mean output by 327,200, which is the total number of pixels in a 640&#215;480 matrix. Since the value of white in char data is 255, we must then divide by 255 to get the number of white pixels.
</p>
<p>
Once we have this number calculated, we can use it to drive the synthesis parameters of our audio stage.
</p>
<h2>Recipe 33: Fast Cuts</h2>
<h3>General Principles</h3>
<ul>
<li>Loading a media folder for easy switching</li>
<li>Creating automated real-time editing</li>
<li>Tempo Sync</li>
</ul>
<h3>Commentary</h3>
<p>
This basic example provides the basic structure for creating a dynamic movie-clip playing VJ-style patch. In addition to providing a UI for media management, it also shows a simple way to tap out a sync tempo for timed changes. Add some compositing effects and you&#8217;ll be ready for the clubs.
</p>
<h3>Ingredients</h3>
<ul>
<li>ubumenu</li>
<li>dropfile</li>
<li>jit.qt.movie</li>
<li>sync~</li>
</ul>
<h3>Technique</h3>
<p>
First, we&#8217;ll start with our file loading mechanism. For convenience, we are using the dropfile object, which allows us to simply drop a folder with our media files, and it kindly outputs the file path for us to use elsewhere.
</p>
<p>
In order for the file path to have any effect, we have turned on the &#8220;autopopulate&#8221; attribute of our ubumenu. Now, if we send a &#8220;prefix &#8230;&#8221; message to ubumenu, it will automatically load the names of our files for later use.
</p>
<p>
One tricky thing we are doing is to use the dump output of ubumenu to give us the number of items we&#8217;ve populated it with and use that to set the range of our random object.
</p>
<p>
A similar trick is used to get the number of frames in each movie. Inside the &#8220;pick_a_start_frame&#8221; subpatch, you will see that everytime we read a clip, the &#8220;getframecount&#8221; message is triggered. This causes the jit.qt.movie object to report the number of frames, which is then used to set the range of a random object. All these messages are sent to the proper place by using the route object. This is how we get each movie to start at a random point in the clip.
</p>
<p>
For our tempo-sync module, we use the beat-following feature of the sync~ object. This tracks the interval between bangs and reports the BPM as well as generating a signal ramp and midiclock tick. We use the midiclock output to drive our fast cuts. Since midiclock counts 24 ticks for every beat, we use a counter-&gt;select combo to slow things down a bit.
</p>
<h2>Recipe 34: Alpha Toast</h2>
<h3>General Principles</h3>
<ul>
<li>Video Compositing</li>
<li>Generating an Alpha Channel for blending</li>
<li>Using Video Input</li>
</ul>
<h3>Commentary</h3>
<p>
This patch is an homage to the first generation Video Toaster, which featured a number of snazzy transitional animations. For some reason, all I can remember now is the tennis player and the star wipe. AlphaToast uses the luminance of our live video input to generate an alpha channel for blending two movie sources. The results of this can be surprisingly complex and interesting.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.alphablend</li>
<li>jit.rgb2luma</li>
<li>jit.qt.movie</li>
<li>jit.qt.grab</li>
<li>jit.unpack,jit.pack</li>
</ul>
<h3>Technique</h3>
<p>
To generate our alpha channel, we convert the output of jit.qt.grab to black/white by using the jit.rgb2luma object.
</p>
<p>
This 1-plane matrix is then scaled and offset using the jit.op object before packing it into the first plane of our jit.qt.movie output. This effectively gives our movie an alpha channel to use for blending.
</p>
<p>
The 2 video sources are then sent to jit.alphablend to be combined together. Try looking around for some hi contrast objects to play with. A flashlight can be quite useful for creating blending effects.
</p>
<h2>Recipe 35: Paramination</h2>
<h3>General Principles</h3>
<ul>
<li>Using a matrix to store control data</li>
<li>Interpolating control presets using common Jitter objects</li>
<li>Using Jitter to control audio synthesis</li>
</ul>
<h3>Commentary</h3>
<p>
Managing control data can easily become a pet obsession for Max-users, especially once they&#8217;ve tackled the big obstacles of understanding digital audio and video processing. While there are a number of handy pattr-family objects to manage presets and such, I wanted to explore a different way of managing and interpolating presets using the Jitter matrix. One of the great benefits of this approach is being able to take advantage of all of the great generators and manipulators of data at your disposal. It is also a very efficient way of generating random parameters. This patch demonstrates the basic mechanics required to make this happen.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.matrix</li>
<li>jit.submatrix</li>
<li>jit.fill</li>
<li>jit.slide</li>
<li>jit.iter</li>
<li>jit.dimmap</li>
<li>jit.noise</li>
</ul>
<h3>Technique</h3>
<p>
The list output of the multislider is converted to a matrix column using jit.fill.  This column represents a single preset.
</p>
<p>
By using the &#8220;dstdim&#8221; messages to jit.matrix, we place each stored preset in a column of the matrix called &#8220;setbank&#8221;. This creates our bank of presets that will be used by our playback section on the right.
</p>
<p>
To access a specific preset-column, we use jit.submatrix, and use the offset attribute to define which column we will use.
</p>
<p>
The jit.dimmap converts the vertical column to a horizontal row. This is purely for visual feedback and offers no functional advantage.
</p>
<p>
The output is then sent to jit.slide, which performs temporal interpolation. This gives the effect of our presets slowly changing over time.
</p>
<p>
This preset matrix is then split up into individual values using jit.iter. Since jit.iter gives the cell-coordinate from its center outlet, this can be used as the index for each cell value. By packing the value and index into a list (and then reversing that list), it is now in a format that is easily managed by route.
</p>
<p>
Each cell value is sent to the appropriate output of route, and then used to drive the parameters of a synthesis engine.
</p>
<p>
Try using jit.bfg instead of jit.noise to generate randomness, or jit.xfade (or any compositing effect) to transition between different presets.
</p>
<h2>Recipe 36: TinyVideo</h2>
<h3>General Principles</h3>
<ul>
<li>Using jit.expr to generate geometry data</li>
<li>Performing texture animation</li>
<li>Making animated sprites</li>
<li>Using jit.op to do iterative process loops</li>
</ul>
<h3>Commentary</h3>
<p>
This recipe shows how to load a single texture with a bunch of frames, and then use texture coordinates to animate the texture. This in itself is a pretty handy technique, but I decided to add a bit of extra spice by also including a way to independently animate 100 textured-quads using only one texture and one OpenGL object.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.expr</li>
<li>jit.op</li>
<li>jit.gl.texture</li>
<li>jit.gl.mesh</li>
<li>jit.matrix</li>
</ul>
<h3>Technique</h3>
<p>
We first need to collect some frames into our texture to be animated. In this case, we use jit.qt.grab, but any video source can be substituted here. This is done by sending srcdim messages to a jit.matrix object, which is big enough to fit 100 frames of 160&#215;120 video.
</p>
<p>
Now that we have a jit.gl.texture with 100 frames of video loaded into it, we need to come up with some geometry to throw it onto. In this case, we&#8217;ll be using jit.expr to create a bunch of quads, or 4-point shapes to texture. You&#8217;ll find the magic inside the the gen_quads subpatch.
</p>
<p>
You may have noticed that the jit.matrix objects in here are 40&#215;10 rather than 10&#215;10. This we have done in order to make room for the 4 vertices that make up each quad. You may also note that we have switched to a 5-plane matrix. This is so that we can make use of the texture coordinates that we&#8217;ll be generating later.
</p>
<p>
To generate the quad geometry, we use jit.expr to fill a matrix using an expression that loops over 4 cells horizontally. This expression creates a rectangular set of points, and sets generic texture coordinates for each point. This filled matrix is then added to our input matrix to create a quad at each location defined in the input.
</p>
<p>
So far we&#8217;ve got a whole bunch of quads and a single texture, which is probably not very interesting. To get this thing moving, we need to create a way to loop the texture coordinates in a way that scrubs through our grid of frames in the texture. Have a look inside the animate_frames patch. The method we&#8217;ve used here makes use of modulo-arithmetic to loop the values in a 10&#215;10 matrix from 0-99. The rest of these operations make sure that this value is associated with the appropriate coordinates.
</p>
<p>
By using a named matrix, we&#8217;re able to create a feedback loop with our animation process, which iterates once per frame.
</p>
<p>
Once we&#8217;ve got all of this, our position and texcoord matrices are packed together and added to our generated geometry matrix. From there, it is off to jit.gl.mesh @draw_mode quads to be rendered.
</p>
<p>
For more fun, try using different methods of filling the position matrix, or using video sources with an alpha channel for some blending effects.
</p>
<h2>Recipe 37: Shatter</h2>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/ab_recipe-book3/JRshatter.jpg" alt="" /></p>
<h3>General Principles</h3>
<ul>
<li>Using OpenGL for Motion Graphics effects</li>
<li>Particle-esque animation</li>
<li>Using bline for motion curves</li>
</ul>
<h3>Commentary</h3>
<p>
Similar in structure and basic design to the TinyVideo patch, this patch uses the textured quad approach to create a nice motion graphics effect where the video image appears to break up into a bunch of little pieces.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.expr</li>
<li>jit.gl.mesh</li>
<li>jit.gl.texture</li>
<li>bline</li>
</ul>
<h3>Technique</h3>
<p>
This patch takes several techniques developed in previous recipes, such as the particle animation technique first introduced in Particle Rave-a-delic and the procedural generation of textured quads using jit.expr from TinyVideo. By combining these techniques with controls for velocity and an &#8220;amount&#8221; curve, we create a very different sort of effect. The displacement matrix gets multiplied by the output of bline to provide timed control of the motion.
</p>
<h2>Recipe 38: BrightLights</h2>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/ab_recipe-book3/JRbrightlights.jpg" alt="" /></p>
<h3>General Principles</h3>
<ul>
<li>Using OpenGL for Motion Graphics effects</li>
<li>Using Video Input to control OpenGL effects</li>
</ul>
<h3>Commentary</h3>
<p>
This patch uses the underlying architecture of Recipe 36, but adds in the use of a matrix input to scale the sprites, creating an effect much like a grid of lights that display the incoming video. The same luminance input that is used to scale each of the sprites can also be utilized to scale other effects such as moving each sprite around with noise. The shader included with this patch creates a feathered, circular alpha-mask for the incoming texture. You may notice that this is the first recipe to include it&#8217;s own shader!
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.expr</li>
<li>jit.gl.mesh</li>
<li>jit.gl.texture</li>
<li>jit.gl.slab</li>
<li>jit.rgb2luma</li>
<li>jit.op</li>
</ul>
<h3>Technique</h3>
<p>
Here we are seeing yet another iteration of the quad-drawing expression used in previous recipes, but this time it is used for a very different effect. There are two aspects of the patch that make it work.
</p>
<p>
First, we calculate the luminance of the incoming video so that we can use that to scale our sprites. This luminance image is then downsampled because we are prioritizing the effect over video clarity, and also so that our drawing code is more efficient. This is then scaled, biased, and thresholded to give more selective control over the lights. Using a high multiplier with a higher threshold value will produce a more extreme scaling effect. This matrix is then multiplied with the output of our quad-drawing expression (jit.expr) to scale the individual sprites.
</p>
<p>
To make the light look nice and luminous, we create a big white texture that is fed through the &#8220;ab.spotmask.jxs&#8221; shader to create a circular alpha mask. This makes each sprite appear to be a bright, soft-edged light. For more of a gradual fade, the &#8220;param fade&#8221; value can be increased. Location of the spotmask can also be used to create offset effects.
</p>
<p>
<em>Note</em>: the included shader works just as well with video or image textures if you need to do feathered, circular masking of an image.
</p>
<h2>Recipe 39: Preview</h2>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/ab_recipe-book3/JRpreview.jpg" alt="" /></p>
<h3>General Principles</h3>
<ul>
<li>Making a preview window for OpenGL scenes.</li>
<li>Using shared textures</li>
<li>OpenGL texture readback</li>
</ul>
<h3>Commentary</h3>
<p>
Until recently, making a preview window for OpenGL scenes was a pretty messy and difficult task, and usually involved doing all of your rendering multiple times in different contexts. Now, with texture capturing and sharing available in recent versions of Jitter, it is much easier to patch together a preview display. This recipe also demonstrates one of my favorite new techniques (and one you&#8217;re bound to see in future recipes), which is to manage rendering order using the &#8220;layer&#8221; attribute and jit.gl.sketch&#8217;s &#8220;drawobject&#8221; message.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.gl.videoplane</li>
<li>jit.gl.sketch</li>
<li>jit.gl.texture</li>
<li>jit.gl.slab</li>
<li>jit.gl.render</li>
</ul>
<h3>Technique</h3>
<p>
The camera grabbing and image processing should be familiar from other patches. the included shader, &#8220;ab.lumagate.jxs&#8221;, is a slightly more developed version of the shader written for the <a href="http://cycling74.com/2007/05/23/your-first-shader/">&#8220;My First Shader&#8221; article</a>.
</p>
<p>
Note that the jit.gl.videoplane objects are set to &#8220;@automatic 0&#8243; but there is nothing banging those objects. How is this done? To see the answer, have a look inside the &#8220;render_master&#8221; subpatch. You will notice that the first jit.gl.sketch object has &#8220;@layer 1&#8243; and &#8220;@capture sc_tex&#8221;. This means that it will be the first OpenGL object rendered, and that the output of this object will be captured directly to a texture (sc_tex) instead of being drawn to screen. The &#8220;drawobject xxx&#8221; message is used to draw our two videoplanes to the capture texture.
</p>
<p>
You might have noticed that there was a jit.gl.videoplane object in the main patch (scene_plane) that is using &#8220;@texture sc_tex&#8221;. This is used to display our captured scene directly to our OpenGL context. This is done using the second jit.gl.sketch object with &#8220;@layer 2&#8243;, which tells it to render after the first jit.gl.sketch object. This way we can be sure that there is something in our &#8220;sc_tex&#8221; texture before we try to display it.
</p>
<p>
To share the captured texture with our &#8220;preview&#8221; context, we need to set the &#8220;shared_context&#8221; attribute. From there it is as simple as setting up a named jit.pwindow and drawing a mapped videoplane into it.
</p>
<h2>Recipe 40: SceneWarp</h2>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/ab_recipe-book3/JRscenewarp.jpg" alt="" /></p>
<h3>General Principles</h3>
<ul>
<li>Video feedback using OpenGL</li>
<li>Using jit.gl.sketch to manage rendering</li>
<li>OpenGL texture readback</li>
</ul>
<h3>Commentary</h3>
<p>
We&#8217;ve had several recipes already that do OpenGL feedback, so you may be wondering what prompted me to put up another one. Well, first of all, I wanted to give an example of the most efficient and reliable way to do texture readback in Jitter, and I also wanted to show you a simple warping technique using jit.gl.mesh to display the feedback texture. This recipe makes good use of the technique presented in the last recipe, where jit.gl.sketch is used to render individual objects, with the &#8220;layer&#8221; attribute defining a specific rendering order. This provides a pretty elegant and spaghetti-free way to do some more complex rendering operations.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.gl.videoplane</li>
<li>jit.gl.sketch</li>
<li>jit.gl.texture</li>
<li>jit.gl.slab</li>
<li>jit.gl.mesh</li>
</ul>
<h3>Technique</h3>
<p>
Most of the mechanics of this patch should be familiar from Recipe 39, with the exception of the feedback stage and the use of jit.gl.mesh to distort the feedback image.
</p>
<p>
First off, you will notice that we are using two textures in the capture/feedback chain, &#8220;sc_tex&#8221; and &#8220;fb_tex&#8221;. Your first impulse might be to capture directly to one texture and then use that for feedback, but this will most likely just cause pixel trash. In order for this to work, you need to capture your scene (fb_plane,ol_plane) to a texture (sc_tex), and then map that texture to a videoplane (sc_plane). This videoplane is then captured to our feedback texture (fb_tex) using the second jit.gl.sketch and then displayed to screen using the third jit.gl.sketch.
</p>
<p>
The order that all this is happening is defined using the &#8220;layer&#8221; attribute of the corresponding jit.gl.sketch objects.
</p>
<p>
Once we have our feedback texture, it would be pretty boring just to display it untouched behind our overlay texture. To prevent boredom from dragging us all into a deep slumber, we apply our feedback texture to a slightly distorted plane (jit.gl.mesh). Over the course of several frames this subtle distortion creates a swirly and dramatic effect. Further processing can be done by adding a jit.gl.slab into the processing chain.
</p>
<p>
By itself, this recipe is pretty nice, but with a little seasoning and your own personal touches, it can be a mind-melter of psychedelic swirly visuals. Bon Apetit!
</p>
<h2>Recipe 41: Verlets</h2>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/ab_recipe-book3/JRverlets.jpg" alt="" /></p>
<h3>General Principles</h3>
<ul>
<li>Generating a custom particle physics engine</li>
<li>Using convolution and matrix operations to perform calculations.</li>
<li>Converting procedural techniques to a Jitter patch</li>
</ul>
<h3>Commentary</h3>
<p>
Hand-rolled particle systems are a bit of a fixture in the Jitter Recipes, so when I read recently about Verlet Integration, I immediately wondered how difficult it would be to use this particle physics technique inside of Jitter. Using different constraints within the calculation loop allows you to simulate things like fabric and ragdoll physics with little effort.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.convolve</li>
<li>jit.op</li>
<li>jit.matrix</li>
<li>jit.expr</li>
<li>jit.gl.render</li>
<li>jit.gl.mesh</li>
</ul>
<h3>Technique</h3>
<p>
Before spending too much time trying to figure out this patch, it will help to familiarize yourself with the theory behind Verlet Integration. There is a pretty good tutorial <a href="http://www.teknikus.dk/tj/gdc2001.htm">here.</a>
</p>
<p>
Since we are doing calculations on a single matrix over time, we start by setting up a feedback loop where the named matrix is at the top and bottom of the calculations. We also need to compare our current frame with the previous one to derive the velocity information. For this purpose, we use another jit.matrix with @thru 0 to store the frame. To do our basic position calculation, we use jit.expr.
</p>
<p>
Now, if we were to leave it with that, we&#8217;d have a pretty boring particle system. Where Verlet Integration really shines is when you start applying &#8220;constraints&#8221; to your system. In the patch, we have two very similar subpatches called &#8220;constraints&#8221;. These two patches compare the location of each particle to that of it&#8217;s nearest neighbors. If the particle is outside of the preferred distance, it attempts to correct the position of the chosen particle as well as its neighbor. To do these operations, we use jit.convolve to shift the matrix by one cell in either direction. Once it is shifted, we can do a 3D distance calculation to find the current distance and try to bring it closer to the ideal. All of the equations are directly taken from the article referred to above.
</p>
<p>
Once we have corrected position for the right neighbor and the below neighbor, we then take the average of those corrections and pass it to the &#8220;gravity&#8221; stage. If we wanted a more perfect distance correction, we could create another pass, but for this recipe, I decided to stick with one.
</p>
<p>
The gravity stage simply reduces the Y-value of all the cells by a specified amount each frame and then performs a folding operation to keep all the particles bouncing around in a constrained area.
</p>
<p>
Once we have done all this math, we send the matrix off to be rendered using jit.gl.mesh and send the results back to the top of the processing chain again to calculate the next frame.
</p>
<p>
Now that we have the physics engine built, we can proceed to set it in motion by repositioning different particles. Notice that all the particles start moving once you&#8217;ve repositioned one of them. This is because the &#8220;constraints&#8221; system is trying to maintain a specified distance between each particle. Try experimenting with different sorts of constraints, different calculations, or different ways to trigger movement.
</p>
<p><a name="rendermaster"></a><br />
<h2>Recipe 42: RenderMaster</h2>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/ab_recipe-book3/JRrendermaster.png" /></p>
<h3>General Principles</h3>
<ul>
<li>Using jit.gl.sketch to manage complex rendering processes</li>
<li>Capturing 3D scene to a texture</li>
<li>Post-processing a 3D scene using jit.gl.slab</li>
</ul>
<h3>Commentary</h3>
<p>
Early on in the Jitter Recipes, I posted a patch called SceneProcess which took a 3D scene and processed it through jit.gl.slab and feedback.  In the process of working on some recent video projects, I needed a lightweight and modular system for creating quick 3D sketches that could be combined together to create different scenes.  Rather than creating a whole rendering context for each patch, I needed a master patch that did everything itself.  Further, for the work I was doing, the 3D scenes would often require some post-processing to sweeten them up, like color correction and blur effects.  Having this framework freed me up to make some very complex setups very quickly, and reuse parts for a variety of scenarios.
</p>
<h3>Ingredients</h3>
<ul>
<li>jit.gl.sketch</li>
<li>jit.gl.texture</li>
<li>jit.gl.render</li>
<li>textedit</li>
<li>text</li>
</ul>
<h3>Technique</h3>
<p>
The core of how this patch functions is inside the &#8220;object_register&#8221; subpatch.  The top portion of the abstraction provides an interface that converts object names typed into the textedit object on the main screen into &#8220;drawobject&#8221; messages to jit.gl.sketch.  As we&#8217;ve seen in previous recipes, you can use jit.gl.sketch in this manner to draw various OpenGL objects in a controlled manner.
</p>
<p>
Another little detail in this abstraction is the messages &#8220;glalphafunc greater 0.5,glenable alpha_test.&#8221;  These OpenGL messages enable what&#8217;s called alpha testing, which will check the value of the alpha channel and simply not draw the pixel if the alpha is less than 0.5.  This is useful for scenes where you want to use depth-testing, but still want to have transparency with the texturing.
</p>
<p>
Inside the &#8220;post-process&#8221; subpatch you will find the texture that we&#8217;re capturing the scene to.  You will notice the messages &#8220;capture_depthbits 16,capture_source color, dim 1280 720.&#8221; These messages set our texture up to enable a 16-bit depthbuffer, which allows for depth-testing in our 3D scene.  If you don&#8217;t specify a &#8220;capture_depthbits&#8221; value, depth-testing won&#8217;t happen in your captured scene.  From there, we pass the texture through a simple bloom filter and on to our output videoplane.
</p>
<p>
If you load the &#8220;42.RenderMaster&#8221; patch and then also load the &#8220;simple_test&#8221; patch, you will notice that the textedit in the main patch gets automatically updated with the names of the OpenGL objects in &#8220;simple_test.&#8221; This is because we&#8217;ve added in a very simple interface whereby the objects identify themselves using a loadbang and &#8220;getname&#8221; message.  This is all sent along to the textedit object where it gets added to the list of rendered elements.
</p>
<p>
Using the simple framework here, multiple OpenGL modules can be built and added to a scene as needed.  The post-processing chain can also be developed more to create other image effects, and get away from the sharp edges of your typical OpenGL scene.
</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/08/31/jitter-recipes-book-3/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 110: Stockhausen&#8217;s GAGAKU-CIRCUIT on Max 5</title>
		<link>http://cycling74.com/2010/08/30/project110stockhausens-gagaku-circuit-on-max-5/</link>
		<comments>http://cycling74.com/2010/08/30/project110stockhausens-gagaku-circuit-on-max-5/#comments</comments>
		<pubDate>Mon, 30 Aug 2010 17:13:44 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[educational]]></category>

		<category><![CDATA[stockhausen]]></category>

		<category><![CDATA[telemusik]]></category>

		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5697</guid>
		<description><![CDATA[Author: Juan Andrés Verdaguer (Klankwereld)
Project Date: August 2010

The GAGAKU-SCHALTUNG or Gagaku Circuit is a fundamental block in the construction of Stockhausen&#8217;s TELEMUSIK. It summarizes the idea of merging two distant worlds and obtaining as a result something which is more than the sum of the original parts.
How Max Was Used:
Both the audio circuit and the [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: Juan Andrés Verdaguer (Klankwereld)</h2>
<h3>Project Date: August 2010</h3>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project110.png" alt="project" /></p>
<p class="project">The GAGAKU-SCHALTUNG or Gagaku Circuit is a fundamental block in the construction of Stockhausen&#8217;s TELEMUSIK. It summarizes the idea of merging two distant worlds and obtaining as a result something which is more than the sum of the original parts.</p>
<h3>How Max Was Used:</h3>
<p class="project">Both the audio circuit and the presentation of the patch were entirely realized within Max 5.</p>
<h4><a href="http://www.klankwereld.org/observatory/stockhausens-gagaku-circuit-max-5" target="_blank">Visit the Project Website</a></h4>
<p><object width="400" height="250"><param name="movie" value="http://www.youtube.com/v/MzqP5nP0Fag?fs=1&amp;hl=en_US&amp;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/MzqP5nP0Fag?fs=1&amp;hl=en_US&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="400" height="250"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/08/30/project110stockhausens-gagaku-circuit-on-max-5/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 109: SoLu</title>
		<link>http://cycling74.com/2010/08/27/project109-solu/</link>
		<comments>http://cycling74.com/2010/08/27/project109-solu/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 16:05:23 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[hyperinstrument]]></category>

		<category><![CDATA[installation]]></category>

		<category><![CDATA[real-time]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5690</guid>
		<description><![CDATA[Author: 3kta - André Rangel and Anne-Kathrin Siegel
Project Date: July 2010
Porto, Portugal

Demonstration of a theoretical correspondence proposal between audible and visible spectrums.
How Max Was Used:
Max was used to implement all algorithms for sound and visual real time composition.
Visit the Project Website

SoLu - Multisensorial Hyperinstrument from Arm on Vimeo.
]]></description>
			<content:encoded><![CDATA[<h2>Author: 3kta - André Rangel and Anne-Kathrin Siegel</h2>
<h3>Project Date: July 2010</h3>
<p class="location">Porto, Portugal</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project109.jpg" alt="project" /></p>
<p class="project">Demonstration of a theoretical correspondence proposal between audible and visible spectrums.</p>
<h3>How Max Was Used:</h3>
<p class="project">Max was used to implement all algorithms for sound and visual real time composition.</p>
<h4><a href="http://3kta.net/solu" target="_blank">Visit the Project Website</a></h4>
<p><iframe src="http://player.vimeo.com/video/14466295" width="400" height="300" frameborder="0"></iframe>
<p><a href="http://vimeo.com/14466295">SoLu - Multisensorial Hyperinstrument</a> from <a href="http://vimeo.com/user2479794">Arm</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/08/27/project109-solu/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 108: Razor Sky</title>
		<link>http://cycling74.com/2010/08/23/project108-razor-sky/</link>
		<comments>http://cycling74.com/2010/08/23/project108-razor-sky/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 22:12:01 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[performance]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5677</guid>
		<description><![CDATA[Author: Ake Parmerud
Project Date: 2010
Gothenburg, Sweden

A piece for Max/MSP using Wiimote as a performance instrument.
How Max Was Used:
Wiimote data is transformed into various kinds of musical output using Max/MSP.
Visit the Project Website
]]></description>
			<content:encoded><![CDATA[<h2>Author: Ake Parmerud</h2>
<h3>Project Date: 2010</h3>
<p class="location">Gothenburg, Sweden</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project108.jpg" alt="project" /></p>
<p class="project">A piece for Max/MSP using Wiimote as a performance instrument.</p>
<h3>How Max Was Used:</h3>
<p class="project">Wiimote data is transformed into various kinds of musical output using Max/MSP.</p>
<h4><a href="http://parmerud.com/MediaArtist/Other_photos_8.html" target="_blank">Visit the Project Website</a></h4>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/08/23/project108-razor-sky/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 107: Lost Angel</title>
		<link>http://cycling74.com/2010/08/23/project107-lost-angel/</link>
		<comments>http://cycling74.com/2010/08/23/project107-lost-angel/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 17:06:30 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[installation]]></category>

		<category><![CDATA[interactive]]></category>

		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5673</guid>
		<description><![CDATA[Author: Ake Parmerud
Project Date: 2004
Gothenburg, Sweden

An interactive sound/video installation where the viewer meets himself/herself as a dancing angel in a magic mirror.
How Max Was Used:
All programming was done in Max/MSP/Jitter with added externals from the SoftVNS library. Motion tracking in combination with prerecorded film sequences and sound creates the illusion of a transforming mirror image.
Visit [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: Ake Parmerud</h2>
<h3>Project Date: 2004</h3>
<p class="location">Gothenburg, Sweden</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project107.jpg" alt="project" /></p>
<p class="project">An interactive sound/video installation where the viewer meets himself/herself as a dancing angel in a magic mirror.</p>
<h3>How Max Was Used:</h3>
<p class="project">All programming was done in Max/MSP/Jitter with added externals from the SoftVNS library. Motion tracking in combination with prerecorded film sequences and sound creates the illusion of a transforming mirror image.</p>
<h4><a href="http://parmerud.com/MediaArtist/LostAngel.html" target="_blank">Visit the Project Website</a></h4>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/08/23/project107-lost-angel/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 106: Max/MSP and CodeSounding - How sorting algorithms sound</title>
		<link>http://cycling74.com/2010/08/20/project106maxmsp-and-codesounding-how-sorting-algorithms-sound/</link>
		<comments>http://cycling74.com/2010/08/20/project106maxmsp-and-codesounding-how-sorting-algorithms-sound/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 16:27:32 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[code]]></category>

		<category><![CDATA[sonification]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5666</guid>
		<description><![CDATA[Author: Roberto Mannai
Project Date: 2006-2010
Milano, Italy

The primary goal of CodeSounding is to make it possible to hear the sound of execution of a Java software, assigning instruments / pitches to programming statements (if, for, etc), so that the flowing of execution could be played as a flow of music.
How Max Was Used:
Max/MSP enabled the auralization [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: Roberto Mannai</h2>
<h3>Project Date: 2006-2010</h3>
<p class="location">Milano, Italy</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project106.jpg" alt="project" /></p>
<p class="project">The primary goal of CodeSounding is to make it possible to hear the sound of execution of a Java software, assigning instruments / pitches to programming statements (if, for, etc), so that the flowing of execution could be played as a flow of music.</p>
<h3>How Max Was Used:</h3>
<p class="project">Max/MSP enabled the auralization of several sorting algorithm&#8217;s execution path: every instruction triggers an oscillator, tuned to a specific pitch.</p>
<h4><a href="http://www.codesounding.org/indexeng.html" target="_blank">Visit the Project Website</a></h4>
<p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/ol5ml9e2THw?fs=1&amp;hl=en_US&amp;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/ol5ml9e2THw?fs=1&amp;hl=en_US&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/08/20/project106maxmsp-and-codesounding-how-sorting-algorithms-sound/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 105: Jitter Video Puzzle</title>
		<link>http://cycling74.com/2010/08/16/project105-jitter-video-puzzle/</link>
		<comments>http://cycling74.com/2010/08/16/project105-jitter-video-puzzle/#comments</comments>
		<pubDate>Mon, 16 Aug 2010 22:14:35 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[installation]]></category>

		<category><![CDATA[max-for-live]]></category>

		<category><![CDATA[multi-touch]]></category>

		<category><![CDATA[OSC]]></category>

		<category><![CDATA[performance]]></category>

		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5659</guid>
		<description><![CDATA[Author: Yiorgos Panagopoulos
Project Date: 2009-2010
Birmingham, UK

An audiovisual interactive installation for my final year project of Sound Engineering &#038; Production in Birmingham City University, UK.
How Max Was Used:
Max/msp/jitter was used for capturing the live video feed, splitting it to pieces, decoding OSC data from a multitouch FTIR screen and also sending the pieces coordinates to M4L [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: Yiorgos Panagopoulos</h2>
<h3>Project Date: 2009-2010</h3>
<p class="location">Birmingham, UK</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project105.png" alt="project" /></p>
<p class="project">An audiovisual interactive installation for my final year project of Sound Engineering &#038; Production in Birmingham City University, UK.</p>
<h3>How Max Was Used:</h3>
<p class="project">Max/msp/jitter was used for capturing the live video feed, splitting it to pieces, decoding OSC data from a multitouch FTIR screen and also sending the pieces coordinates to M4L objects for controlling audio effects parameters.</p>
<h4><a href="http://vimeo.com/11906339" target="_blank">Visit the Project Website</a></h4>
<p><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=11906339&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=11906339&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object>
<p><a href="http://vimeo.com/11906339">Jitter Video Puzzle user experience</a> from <a href="http://vimeo.com/dochanjorge">dochanjorge</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/08/16/project105-jitter-video-puzzle/feed/</wfw:commentRss>
		</item>
		<item>
		<title>An Interview with Kurt Ralske</title>
		<link>http://cycling74.com/2010/08/16/an-interview-with-kurt-ralske/</link>
		<comments>http://cycling74.com/2010/08/16/an-interview-with-kurt-ralske/#comments</comments>
		<pubDate>Mon, 16 Aug 2010 21:15:52 +0000</pubDate>
		<dc:creator>Marsha Vdovin</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[articles]]></category>

		<category><![CDATA[interview]]></category>

		<category><![CDATA[educational]]></category>

		<category><![CDATA[home]]></category>

		<category><![CDATA[installation]]></category>

		<category><![CDATA[jitter]]></category>

		<category><![CDATA[objects]]></category>

		<category><![CDATA[third-party]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5631</guid>
		<description><![CDATA[


Kurt Ralske is a mysterious and interesting artist who makes gorgeous and magical video installations that seem to defy physics.  This is a second career for this talented guy who danced with life as a pop star when he was very young.



The key behind Ralske’s work is his custom software, a series of Jitter [...]]]></description>
			<content:encoded><![CDATA[<div class="introtext">
<img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/interviews/kurt_ralske/interview_kr.jpg" align="left" class="intro"  />
<p>
Kurt Ralske is a mysterious and interesting artist who makes gorgeous and magical video installations that seem to defy physics.  This is a second career for this talented guy who danced with life as a pop star when he was very young.</p>
</div>
<p><span id="more-5631"></span></p>
<div class="story_body">
<p>The key behind Ralske’s work is his custom software, a series of Jitter objects called Auvi. In a generous move, he recently made <a href="http://auvi-software.com" target="_blank">Auvi</a> available for free for non-commercial use.  Ralske is also a popular Max/MSP/Jitter teacher at schools such as School of the Museum of Fine Arts in Boston and School of Visual Arts in New York City.
</p>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/interviews/kurt_ralske/image1.png" width="500" height="389" /></p>
<h4>Die Büchse der Pandora 1929 (2009)</h4>
<p><em><strong>What were some of your first art experiences?</strong></em></p>
<p>
I have a very complicated and unusual background. I&#8217;m from New York, originally. My background is actually in music. I had a career as a professional musician, or to be accurate, a professional <em>pop</em> musician.
</p>
<p>
After that, I did work composing music for films, and record production. It was around that time, I became interested in electronic music, and I discovered Max in 1997. At that time, I was using Max for algorithmic composition.
</p>
<p>
A few years later, around 2000, I got interested in working with Max for visual arts. Since that time, I&#8217;ve worked with Max pretty much exclusively for visual projects.
</p>
<p><em><strong>How did you grow away from the pop music scene?</strong></em></p>
<p>
That&#8217;s a complicated question. I was always interested in a wide variety of music, and a wide variety of art. But somehow I turned from this shy teenage guy who wrote songs in his bedroom into somebody with a major record deal, who was doing tours, interviews, videos – the entire stereotypical rock star experience.
</p>
<p>
But after I completed my third album for Sony/4AD, my record label, I decided that it was just too limiting to try and work in that format. That was in 1993. I decided to just move forward, and not look back.
</p>
<p>
I am so excited and busy with the things that I&#8217;m working on now that I don&#8217;t ever think about pop music much, really.
</p>
<p><em><strong>Wow, you had a busy youth. Did you have time for college?</strong></em></p>
<p>
I went to college as a teenager, but didn&#8217;t complete my degree, at the time. I studied philosophy at Eugene Lang College in New York City. Subsequently I went back to school and completed my degree in computer science at Hunter College in New York. My grad degree is in Art Criticism from the School of Visual Arts in New York.
</p>
<p><em><strong>How did you get interested in video?</strong></em></p>
<p>
I&#8217;d always dabbled in visual arts, but in 1999 I started doing some experiments using Java to create visual images. And then right around that same time, around 2000, an extension to Max became available, called Nato, which is very difficult to explain. It was basically a very odd extension to Max that allowed you to work with video.
</p>
<p>
I was really excited about the idea of working with both image and sound simultaneously in the same program. Then around 2001 or 2, Jitter became available. I also began programming my own Max external objects for imaging, which is the Auvi software.
</p>
<p><em><strong>Tell me more about the <a href="http://auvi-software.com" target="_blank">Auvi software</a>. So they&#8217;re objects for Jitter?</strong></em></p>
<p>
<a href="http://auvi-software.com" target="_blank">They&#8217;re objects for Jitter</a>, written in C. Originally they were objects for running under the Nato extension to Max. But after Jitter arrived, I ported them over to Jitter. Basically, it started out as my own software that I wanted to extend the possibilities of what you could do with images in Max.
</p>
<p>
I had some very specific ideas about what I wanted, and it seemed to make sense for me to write the objects myself to get those results. Originally it started out as something for my own use. But as I got more and more into it, I realized that it might be useful to other people.
</p>
<p>
It was very educational to actually get <a href="http://auvi-software.com" target="_blank">Auvi</a> to the quality level of commercial-grade software, so that it could be generally useful to many people. I learned quite a lot from that process. Around 2002, I released the Auvi package of objects for Nato, and then subsequently in 2003 for Jitter.
</p>
<p>
<a href="http://auvi-software.com" target="_blank">Auvi</a> was available as a commercial product for several years, and then I withdrew it in 2008, basically because I no longer had time to update the software. This year I re-released the software as a free package.
</p>
<p>
There were really a great many people who enjoyed the software a lot, and did some interesting things with it. I decided I wanted to give something back to the Max community a little bit, so this collection of 85 Jitter objects is now freely available to anyone that wants to play with them.
</p>
<p><object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab" width="960" height="554"><param name="src" value="http://cycling74.com/download/movies/interview_kurtr/FaustWeb.mov"><param name="autoplay" value="false"><param name="type" value="video/quicktime" width="960" height="554"><embed src="http://cycling74.com/download/movies/interview_kurtr/FaustWeb.mov" width="960" height="554" autoplay="false" type="video/quicktime" pluginspage="http://www.apple.com/quicktime/download/"><br />
</object></p>
<h4>Faust (Murnau, 1926) Golden Vivisection [excerpt] (2009)</h4>
<p><em><strong>So the Max community has been good to you?</strong></em></p>
<p>
The Max community is really quite generous in sharing its knowledge. And even apart from the community of users, the stuff the C74 Max programmers have done for the past 20 years is really just so wonderfully creative, and I would even say generous. Although Max is a commercial product, I feel that really there&#8217;s 20 years of love in there. [Laughs.] 20 years of really wonderful creativity.
</p>
<p>
Just speaking for myself, having used Max, MSP and Jitter for 13 years now, it&#8217;s opened up so many wonderful possibilities, in terms of making art, and subsequently in terms of my career. It&#8217;s been so interesting, and exciting, and rewarding.
</p>
<p><em><strong>Your Auvi Objects pack a lot of processing into single objects. What was your design goal for this toolkit?</strong></em></p>
<p>
I think that half-consciously, I wanted each Auvi Object to be like a guitar effect pedal. You plug it in and it instantly does something interesting. There&#8217;s an “effect” knob to control the blend of the wet and dry signals. Often there&#8217;s a &#8220;rate&#8221; knob, so the qualities of the effect can automatically vary over time—like the Auvi internal LFOs. Sometimes there&#8217;s a &#8220;threshold&#8221; knob, so the effect kicks in harder at certain levels like Auvi internal alpha control. They sound different if you crank it up and get feedback such as the Auvi internal feedback. And, it&#8217;s easy to chain lots of them together to create a big complex mess.
</p>
<p><em><strong>Is there an overriding theme/scheme behind the objects?</strong></em></p>
<p>
I wanted Auvi to be friendly to beginners, to make it easy to get exciting things to happen. You plug an object in, you instantly see something interesting—no need to initialize parameters. The objects are quickly rewarding, and provide more rewards for those who are patient enough to figure out the LFOs, internal alpha and so on.
</p>
<p>
Auvi strength is its quirky visual effects. You can create complex abstractions with little effort. VJs and other live video performers like this capability. Auvi has been used for installations, theater performances, dance performances, and apparently for live visuals for a Radiohead tour.
</p>
<p>
I feel that one of the unique strengths of Max is that you can create indeterminate systems: instead of a single piece, you get a tool that can produce many pieces. Instead of getting exactly what you want, you get a bunch of output—which, with luck, might turn out to be even better than what you originally thought you wanted.
</p>
<p>
For this reason, I put the internal LFOs into the Auvi Objects. Rather than set a parameter to a single fixed value, you set how you want that parameter to change over time. This encourages setting up systems where each parameter has its own behavior, and the sum total effect of these small independent agents can be unexpectedly interesting.
</p>
<p><em><strong>You recently changed the licensing model for the Auvi Objects to be free for non-commercial use. This will obviously increase people&#8217;s willingness to try them out. Were there other advantages to making them freely available?</strong></em></p>
<p>
It pleases me to think that the Auvi Objects are being used to help artists realize their goals. There&#8217;s been over 1,000 downloads of Auvi in the six weeks since its been re-released. So there&#8217;s an altruistic impulse, but also, I feel that if the software is being used, it justifies the two solid years of work I put into writing it. The software is some sort of a documentation of what I did with myself from 2001 to 2003.
</p>
<p><em><strong>Was Max a real challenge to learn or did you take to it more easily because you already had programming chops?</strong></em></p>
<p>
Actually, no. I did my computer science degree after I became involved with Max. One of the reasons that I actually decided to do the computer science degree was that I felt that I just wanted to go further with my work in Max, and I felt that I needed to get really solid chops in programming and understanding what was going on under the hood.
</p>
<p>
So in the beginning with Max, I was teaching myself, and I do remember some struggles in the early stages. On the flip side of that, for six years now I&#8217;ve been teaching Max to beginners, quite often art students who have no background in any sort of programming or scripting or anything. I&#8217;m always astonished how, with a good introduction and a little bit of patience, even complete beginners can do very interesting things in just a few hours of messing with Max or Jitter. With a few hours of experimentation, they will wind up in very interesting places.
</p>
<p><em><strong>How would you describe your patching style?</strong></em></p>
<p>
My patches are shamefully messy. Usually they are done to meet a deadline, and the nervous tension is visible in the way the patch is laid out. If there&#8217;s enough time, I will then select important interface items and put them into presentation view. It&#8217;s the Max equivalent to stuffing the contents of your messy apartment into a closet while your guests are ringing the front doorbell.
</p>
<p><em><strong>Do you have a favorite object?</strong></em></p>
<p>
I&#8217;m fond of <strong>button</strong>; I think it&#8217;s the most Max-like of all Max objects.
</p>
<p><em><strong>Really, and why is that?</strong></em></p>
<p>
It&#8217;s a beautifully simple and effective way of getting input to the machine, or to receive visual feedback of what the machine is doing. There’s nothing like it in other languages.
</p>
<p>
A flashing yellow button object is the heartbeat of Max.
</p>
<p><em><strong>I love your video pieces; the video is moving, but never the same, and slowly moving into each other. It’s all so intriguing. Where do you get your creative inspiration?</strong></em></p>
<p>
For the last several years, my research has been about images and motion and stasis. I think the piece that you&#8217;re referring to is a video I made in 2006, called <strong>Times Square Timeshare</strong>. For that piece, I developed this trick for inverting the appearance of motion and rest in the image.
</p>
<p><object width="600" height="401"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=14099970&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=00ADEF&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=14099970&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=00ADEF&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="600" height="401"></embed></object></p>
<p>
So it&#8217;s originally just a very ordinary shot of Times Square in New York City, but in my processed image, everything that was originally in motion is standing still, and everything that was originally at rest is moving. So you see things like buildings and parked cars moving, but you see things that were in motion, like pedestrians or buses as static.
</p>
<p><em><strong>It seems that Max has opened a lot of doors for many people of all walks.</strong></em></p>
<p>
I have a lot of affection for Max, what it&#8217;s capable of, and the possibilities that it opens for the artist.
</p>
<p>
Having taught Max now for six years, mostly to beginners with fine-arts backgrounds, I&#8217;m always struck by how student’s projects turn out so completely different from each other. Max can accommodate so many different types of artistic interests, so many different ways of working, so many different mediums. From installation to performance, to still image, to sound work, network projects, software art, to combinations of all of the above.
</p>
<p>
I really don&#8217;t think that there&#8217;s any software that&#8217;s available that can accommodate such a wide range of interests.
</p>
<p><em><strong>It&#8217;s so true that it can cross so many different mediums. Doing all these interviews is just a fascinating process, hearing what everyone&#8217;s doing with it.</strong></em></p>
<p>
I&#8217;m sure.
</p>
<p><em><strong>So, you find that it&#8217;s a good educational tool as well?</strong></em></p>
<p>
I really believe it is. I think that even if people take one semester of Max and wind up not using it again, I feel they get a much deeper insight into what&#8217;s going on behind the scenes with digital media. It helps them with every sort of digital-media project they do in the future, even if it&#8217;s something as simple as understanding why Final Cut isn&#8217;t behaving the way you want it to. Students get a nice “look under the hood” from their experience with Max.
</p>
<p>
I also want to mention that I&#8217;ve done work with similar software packages, such as Processing or Open Frameworks; I do think that these software packages have certain strengths, and do seem to be very good at certain specific things. But in general, Max is so much more developed, much more intuitive, and so much more generally capable. It’s so much better for prototyping software, for accomplishing things quickly, and for working on a wide variety of projects. I still feel that Max is on top, that Max is really the superior tool.
</p>
<p><em><strong>What is the first patch that you have your beginning Max students make?</strong></em></p>
<p>
The assignment after the first class meeting is &#8220;make a patch that is complex and beautiful, but has no function.&#8221; The results are often amazing and bizarre. The point is to allow students to become comfortable with the heuristics of the Max environment. It also demystifies the apparent complexity of Max. If students can feel playful and creative with Max from the start, it reassures them that Max is indeed a good tool for artists.
</p>
<p><em><strong>How do you help students who seem overwhelmed at first?</strong></em></p>
<p>
If students are overwhelmed, it means the teacher is doing something wrong. I don’t allow my students to become overwhelmed. For the first half of a one-semester Max class, students are kept on a short leash. We keep very clear objectives; the focus is on the general principles of how Max is structured. After a certain amount of material is absorbed, the leash comes off, and students are free to run around and explore.
</p>
<p><em><strong>How do you teach students trouble-shooting skills?</strong></em></p>
<p>
From the beginning, students are constantly reminded of certain key principles, for example: &#8220;Every Max object is a separate program. It doesn’t know what is going on above or below it,&#8221; or &#8220;There are only a very small number of possible data types. Exactly which type is going down your patch cord?&#8221; or &#8220;Each object is very stupid. You need to tell it what to do!&#8221; Also, every time new material is introduced, common pratfalls are pointed out. So students develop familiarity with the errors they&#8217;re most likely to encounter.
</p>
<p><em><strong>What would make it easier to teach Max?</strong></em></p>
<p>
Some beginning students are intimidated by the help files, they seem to contain too much information—however they&#8217;re fine for more experienced users. Students seem to have difficulty finding what they need in the documentation. It&#8217;s not easy to search on how to accomplish a specific task. So, a directory of solutions for commonly needed tasks would be a great addition to the documentation.
</p>
<p><em><strong>What are some of the surprising projects that your students have come up with?</strong></em></p>
<p>
My students constantly surprise me. Rebecca Adorno at SVA used Max and<br />
Arduino for a beautiful interactive installation called <a href="http://vimeo.com/11780870" target="_blank">Instrument for Unsent Letters</a> that uses an old-fashioned manual typewriter to control robotic string instruments and audio playback. Amanda Cassingham at SMFA made an MSP patch to translate room ambience and environmental sound into spontaneously generated texts. Zeljka Blak extended our first assignment—the non-functional patch—into her final project, and made a crazy parody of the conventions of software interface design. And Matthew Gaertner at SMFA spent an entire semester single-mindedly focused on the ritualistic abuse of a single Max object—&#8221;Button&#8221;! [Laughs.]
</p>
<p><strong><a href="http://retnull.com" target="_blank">Kurt&#8217;s Website</a></strong></p>
<p><strong><a href="http://auvi-software.com" target="_blank">Auvi software</a></strong></p>
<p><em><br />
Text interview by <a href="http://www.marshavdovin.com/" target="_blank">Marsha Vdovin</a> and <a href="http://www.rarefaction.com/" target="_blank">Ron MacLeod</a> for Cycling &#8216;74. Video provided by Kurt Ralske.</em></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/08/16/an-interview-with-kurt-ralske/feed/</wfw:commentRss>
<enclosure url="http://cycling74.com/download/movies/interview_kurtr/FaustWeb.mov" length="20138688" type="video/quick" />
		</item>
		<item>
		<title>Project 104: The Secret Sounds of Spores</title>
		<link>http://cycling74.com/2010/08/13/project104-the-secret-sounds-of-spores/</link>
		<comments>http://cycling74.com/2010/08/13/project104-the-secret-sounds-of-spores/#comments</comments>
		<pubDate>Fri, 13 Aug 2010 20:30:43 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[camera]]></category>

		<category><![CDATA[cv.jit]]></category>

		<category><![CDATA[installation]]></category>

		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5625</guid>
		<description><![CDATA[Authors: Yann Seznec and Patrick Hickey
Project Date: August 2010
Edinburgh, Scotland

The Secret Sounds of Spores uses lasers and mushrooms to make music from falling spores in real time.
How Max Was Used:
A camera is pointed at the mushroom, and the live video feed is sent to the computer for analysis. This is done in Jitter, which tracks [...]]]></description>
			<content:encoded><![CDATA[<h2>Authors: Yann Seznec and Patrick Hickey</h2>
<h3>Project Date: August 2010</h3>
<p class="location">Edinburgh, Scotland</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project104.jpg" alt="project" /></p>
<p class="project">The Secret Sounds of Spores uses lasers and mushrooms to make music from falling spores in real time.</p>
<h3>How Max Was Used:</h3>
<p class="project">A camera is pointed at the mushroom, and the live video feed is sent to the computer for analysis. This is done in Jitter, which tracks the spores in real time. The data is processed in Max and sent out Arduinos, which control musical instruments.</p>
<h4><a href="http://www.theamazingrolo.net/sound-design/spores/" target="_blank">Visit the Project Website</a></h4>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/08/13/project104-the-secret-sounds-of-spores/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 103: Cut Stories</title>
		<link>http://cycling74.com/2010/08/03/project103-cut-stories/</link>
		<comments>http://cycling74.com/2010/08/03/project103-cut-stories/#comments</comments>
		<pubDate>Tue, 03 Aug 2010 20:38:33 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[documentary]]></category>

		<category><![CDATA[installation]]></category>

		<category><![CDATA[jitter]]></category>

		<category><![CDATA[narrative]]></category>

		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5615</guid>
		<description><![CDATA[Author: Nadav Assor
Project Date: 2009-2010
Chicago, IL

A multi-monitor, semi-circular video installation, in which all monitors function as one elongated screen showing past, present and future, using custom software to playback short real stories of surgeries, home repair and car accidents told by the participants, who document themselves while also being shot by a pair of mechanized [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: Nadav Assor</h2>
<h3>Project Date: 2009-2010</h3>
<p class="location">Chicago, IL</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project103.jpg" alt="project" /></p>
<p class="project">A multi-monitor, semi-circular video installation, in which all monitors function as one elongated screen showing past, present and future, using custom software to playback short real stories of surgeries, home repair and car accidents told by the participants, who document themselves while also being shot by a pair of mechanized cameras.</p>
<h3>How Max Was Used:</h3>
<p class="project">I used Max, MSP and Jitter to drive the whole installation, jumping between clips according to an EDL from Final Cut and a master sound file, and most importantly tiling &#8220;past&#8221; and &#8220;future&#8221; frames from a clip next to each other on adjacent screens, controlled by a network of computers, to create a seamless, synchronized panorama of a large group of people and their responses to a story being told.</p>
<h4><a href="http://www.nadassor.net" target="_blank">Visit the Project Website</a></h4>
<p><object width="400" height="225"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=12771004&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=12771004&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="225"></embed></object>
<p><a href="http://vimeo.com/12771004">Cut Stories</a> from <a href="http://vimeo.com/nadavassor">Nadav Assor</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/08/03/project103-cut-stories/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 102: RED OVER RED</title>
		<link>http://cycling74.com/2010/07/27/project102-red-over-red/</link>
		<comments>http://cycling74.com/2010/07/27/project102-red-over-red/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 18:09:47 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[performance]]></category>

		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5607</guid>
		<description><![CDATA[Author: 31 Down
Project Date: 2010 runs till august 7th
New York, NY USA

Performance group 31 DOWN is back with their signature sonic destruction. Delving into our media’s sensationalized coverage of airline disasters a recurring nightmare exposes a pilot’s fear of landing.
How Max Was Used:
We use Max as a show control master computer, the show is automated [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: 31 Down</h2>
<h3>Project Date: 2010 runs till august 7th</h3>
<p class="location">New York, NY USA</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project102.jpg" alt="project" /></p>
<p class="project">Performance group 31 DOWN is back with their signature sonic destruction. Delving into our media’s sensationalized coverage of airline disasters a recurring nightmare exposes a pilot’s fear of landing.</p>
<h3>How Max Was Used:</h3>
<p class="project">We use Max as a show control master computer, the show is automated and Max connects with computers and a light board on a local network to issue commands. I program in Max 4.6 and communicate through MIDI, OSC and Serial to control the performance.</p>
<h4><a href="http://31down.org/performances/redOVERred.html" target="_blank">Visit the Project Website</a></h4>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/07/27/project102-red-over-red/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 101: Pole Dance - Interactive multimedia sound installation</title>
		<link>http://cycling74.com/2010/07/23/project101-pole-dance-interactive-multimedia-sound-installation/</link>
		<comments>http://cycling74.com/2010/07/23/project101-pole-dance-interactive-multimedia-sound-installation/#comments</comments>
		<pubDate>Fri, 23 Jul 2010 21:33:57 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[installation]]></category>

		<category><![CDATA[interactive]]></category>

		<category><![CDATA[network]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5599</guid>
		<description><![CDATA[Author: Terence Caulkins
Project Date: June 25- September 25, 2010
MoMA PS1, Long Island City, New York

Pole Dance is this year winning entry for the MoMA PS1 Young Architects Program (YAP) designed by Solid Objectives – Idenburg Liu (SO-IL) with interactive multi-media design by Arup and 2&#215;4. The installation will be on view June 25 through September.
The [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: Terence Caulkins</h2>
<h3>Project Date: June 25- September 25, 2010</h3>
<p class="location">MoMA PS1, Long Island City, New York</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project101.jpg" alt="project" /></p>
<p class="project">Pole Dance is this year winning entry for the MoMA PS1 Young Architects Program (YAP) designed by Solid Objectives – Idenburg Liu (SO-IL) with interactive multi-media design by Arup and 2&#215;4. The installation will be on view June 25 through September.<br />
The dynamic, physical installation is an interconnected system of 30-foot-tall 2-inch glass fiber poles set in a 16-foot by 16-foot grid and connected by bungee cords that gently sway in response to the wind and the interaction of the audience, creating a continuous ripple of movement. The grid contains a number of playful activators, such as hammocks, pulls and mister-rings. An open net covering the entire grid system provides shelter and stabilizes the movement of the poles, preventing them from exceeding a predetermined maximum pivot. Multi-colored balls are suspended in the net offering areas of shade and the appearance of a communal, if undefined, game. At one point, the net drops down to the surface, surrounding a water filled pool.</p>
<h3>How Max Was Used:</h3>
<p class="project">SO-IL, Arup, and 2&#215;4 collaborated to design and integrate an interactive media environment as part of Pole Dance. Eight of the fiberglass poles incorporate accelerometers – devices that measure the motion of the poles - and convert it to sound played back in the courtyard using MaxMSP. In the installation’s passive state, sound is generated by wind moving the poles or netting. As the audience interacts with elements of the structure – by pushing, pulling or shaking the poles or moving the beach balls or the net, modulated tones are generated. The tones have been specifically composed to blend with the sonic environment and to bring harmony to the soundscape in and around the museum. The installation is truly interactive with up to 8 participants able to simultaneously “play” the poles. In this way the installation becomes a multi-user instrument that can be shared by ensembles of visitors of all ages. Rapid and shallow movements create locally oscillating tones; movements made by leaning on the poles create a sound that ripples out into the rest of the garden as the network of connected poles are set in motion.<br />
An <a href="http://poledance.so-il.org/" target="_blank">interactive iPhone app</a> allows visitors to affect the quality of sound for each pole in real time. By turning the effects levels up or down the audience can collaboratively vote to change the active sound of their environment. The application also collects the movements of the interactive poles sent out to the network by Max and visualizes the dynamic activity and movement within the installation in real time.</p>
<h4><a href="http://poledance.so-il.org/" target="_blank">Visit the Project Website</a> and a <a href="http://nymag.com/arts/architecture/reviews/66941/" target="blank">Read a Review</a> of the Project.</h4>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/07/23/project101-pole-dance-interactive-multimedia-sound-installation/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 100: Trombones and Live Electronics</title>
		<link>http://cycling74.com/2010/07/22/project100-trombones-and-live-electronics/</link>
		<comments>http://cycling74.com/2010/07/22/project100-trombones-and-live-electronics/#comments</comments>
		<pubDate>Thu, 22 Jul 2010 19:24:13 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[improvisation]]></category>

		<category><![CDATA[live]]></category>

		<category><![CDATA[performance]]></category>

		<category><![CDATA[real-time]]></category>

		<category><![CDATA[Wacom]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5582</guid>
		<description><![CDATA[Authors: Lorenzo Bianchi with Artur and Sebastian Smolyn
Project Date: June 2010
Paris

Performance for two trombones and live electronics.
Improvised and organized music, with a lot of real time sound treatment.
How Max Was Used:
All the Lorenzo Bianchi&#8217;s electronic sounds and treatments are made with a big max-msp patch that unify all the experimental small patches that he has [...]]]></description>
			<content:encoded><![CDATA[<h2>Authors: Lorenzo Bianchi with Artur and Sebastian Smolyn</h2>
<h3>Project Date: June 2010</h3>
<p class="location">Paris</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project100.png" alt="project" /></p>
<p class="project">Performance for two trombones and live electronics.<br />
Improvised and organized music, with a lot of real time sound treatment.</p>
<h3>How Max Was Used:</h3>
<p class="project">All the Lorenzo Bianchi&#8217;s electronic sounds and treatments are made with a big max-msp patch that unify all the experimental small patches that he has done in the last years. The name of the working environment  is &#8220;ELLE&#8221; and is built with: delay, drum machine, freq shift, harmonizers, degenerators, freezes.</p>
<h4><a href="http://www.lorbi.info/wp/?page_id=614" target="_blank">Visit the Project Website</a></h4>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/jOiufA1gnzQ&amp;hl=en_US&amp;fs=1?rel=0&amp;color1=0x234900&amp;color2=0x4e9e00"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/jOiufA1gnzQ&amp;hl=en_US&amp;fs=1?rel=0&amp;color1=0x234900&amp;color2=0x4e9e00" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/07/22/project100-trombones-and-live-electronics/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 99: Backup Aura</title>
		<link>http://cycling74.com/2010/07/20/project99-backup-aura/</link>
		<comments>http://cycling74.com/2010/07/20/project99-backup-aura/#comments</comments>
		<pubDate>Tue, 20 Jul 2010 18:18:47 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[album]]></category>

		<category><![CDATA[algorithmic]]></category>

		<category><![CDATA[field recording]]></category>

		<category><![CDATA[generative]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5556</guid>
		<description><![CDATA[Author: Tobias Reber
Project Date: September 6th, 2010
Biel, Switzerland

&#8220;Backup Aura&#8221; is an album of electronic music consisting of six compositions that make use of the computer as a feedback tool for extending the ideas and intuitions of the composer. It will be officially released on Hyperfunction (.org) on september 6th, 2010.
How Max Was Used:
Max/MSP was used [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: Tobias Reber</h2>
<h3>Project Date: September 6th, 2010</h3>
<p class="location">Biel, Switzerland</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project99.jpg" alt="project" /></p>
<p class="project">&#8220;Backup Aura&#8221; is an album of electronic music consisting of six compositions that make use of the computer as a feedback tool for extending the ideas and intuitions of the composer. It will be officially released on Hyperfunction (.org) on september 6th, 2010.</p>
<h3>How Max Was Used:</h3>
<p class="project">Max/MSP was used in two ways: to write the code (= scores) that generate some of the pieces, and to process or synthesize sounds for further use within a patch or a sequencer environment. The rule systems of the generative patches were run over an extended period of time and changed according to the taste and ideas of the composer.</p>
<h4><a href="http://www.tobiasreber.com/backup.html" target="_blank">Visit the Project Website</a></h4>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/07/20/project99-backup-aura/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 98: 1city 1001vibrations sound installation</title>
		<link>http://cycling74.com/2010/07/15/project98-1city-1001vibrations-sound-installation/</link>
		<comments>http://cycling74.com/2010/07/15/project98-1city-1001vibrations-sound-installation/#comments</comments>
		<pubDate>Thu, 15 Jul 2010 17:30:12 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[installation]]></category>

		<category><![CDATA[performance]]></category>

		<category><![CDATA[robotic]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5466</guid>
		<description><![CDATA[Author: Sinan Bokesoy
Project Date: 1 July 2010 - 1 September 2010
Istanbul, Turkey

 &#8220;1c i t y 1001v i b r a t i o n s&#8221; is mainly a live interaction system where its resource comes from the sonic space of Bosphorus, Istanbul. Supported by Istanbul2010 European Capital of Culture organization. 
This autonomous and real-time [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: Sinan Bokesoy</h2>
<h3>Project Date: 1 July 2010 - 1 September 2010</h3>
<p class="location">Istanbul, Turkey</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project98.jpg" alt="project" /></p>
<p class="project"> &#8220;1c i t y 1001v i b r a t i o n s&#8221; is mainly a live interaction system where its resource comes from the sonic space of Bosphorus, Istanbul. Supported by Istanbul2010 European Capital of Culture organization. </p>
<p>This autonomous and real-time operating application makes a continuous content analysis, live from the signals received by the microphones installed on top of significant historical places.</p>
<p>The sounds are transmitted to the installation venue live and accompanied by an algorithmic composition derived from the content analysis in order to lead the performance of the two Kuka industrial robot arms playing the ethnical percussions, namely the Turkish drum, gong, cymbal, bendir, Tibetian bowl and glockenspiel. The content analysis application is sensitive to the frequently happening sonic events in Bosphorus, such as the ship horns, seagulls or boat engines etc.</p>
<p>In the meantime, the daily sounds of the Bosphorus will be diffused by a speaker system with a special treatment and interpretation (influenced this time by the performance of the robots).</p>
<h3>How Max Was Used:</h3>
<p class="project">MaxMSP has been used to realize the audio scene analysis application for the sounds captured on Bosphorus, to drive the Kuka robots with a versatile communication protocol between MaxMSP and Kuka Robot via ethernet XML format, the algorithmic composition application which creates a percussion performance from the content analysis of Bosphorus, and Max4Live for live electronic sound diffusion influenced by the performance of the robots using Bosphorus sounds.</p>
<h4><a href="http://www.talesoffuture.com/1city1001vibrations/" target="_blank">Visit the Project Website</a></h4>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project98-b.jpg" alt="project" /></p>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/07/15/project98-1city-1001vibrations-sound-installation/feed/</wfw:commentRss>
		</item>
		<item>
		<title>An Interview with Valérie Lamontagne</title>
		<link>http://cycling74.com/2010/07/13/an-interview-with-valerie-lamontagne/</link>
		<comments>http://cycling74.com/2010/07/13/an-interview-with-valerie-lamontagne/#comments</comments>
		<pubDate>Tue, 13 Jul 2010 18:03:37 +0000</pubDate>
		<dc:creator>Marsha Vdovin</dc:creator>
		
		<category><![CDATA[articles]]></category>

		<category><![CDATA[interview]]></category>

		<category><![CDATA[Arduino]]></category>

		<category><![CDATA[clothing]]></category>

		<category><![CDATA[home]]></category>

		<category><![CDATA[sensor]]></category>

		<category><![CDATA[textile]]></category>

		<category><![CDATA[weather]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5455</guid>
		<description><![CDATA[


Valérie Lamontagne is a digital media artist, designer, theorist and curator based in Montréal, Canada researching techno-artistic frameworks that combine human/nonhuman subjects.  She recently used Max/MSP in a performance based on the Charles Perrault fairy tale “Peau d’Âne.”



In it, a young princess, whose kingdom’s riches are dependent on a gold excreting donkey, orders the [...]]]></description>
			<content:encoded><![CDATA[<div class="introtext">
<img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/interviews/valerie_lamontagne/interview_vl.jpg" align="left" class="intro"  />
<p>
Valérie Lamontagne is a digital media artist, designer, theorist and curator based in Montréal, Canada researching techno-artistic frameworks that combine human/nonhuman subjects.  She recently used Max/MSP in a performance based on the Charles Perrault fairy tale “Peau d’Âne.”</p>
</div>
<p><span id="more-5455"></span></p>
<div class="story_body">
<p>In it, a young princess, whose kingdom’s riches are dependent on a gold excreting donkey, orders the impossible from her doting stepfather to thwart marrying him: three dresses made of immaterial materials. The first is to be made of the “sky” and should be as light and airy as the clouds. The second is to be made of “moonbeams” and should reflect the same lyrical intensity as the moon at night. The third, and last, is to be made of “sunlight” and should be as blinding and warm as the sun above.
</p>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/interviews/valerie_lamontagne/image1.jpg" width="400" height="525" /></p>
<p><em><strong>Can you tell me a little about your background?</strong></em></p>
<p>
My background is in visual arts. I studied art history and fine arts. I did an MFA, a Master of Fine Arts, in painting.
</p>
<p><em><strong>Where was that?</strong></em></p>
<p>
That was at Concordia University in Montréal, both at the undergraduate and the graduate level. I&#8217;m presently enrolled in a Ph.D., also at Concordia, researching “Performativity, Materiality and Laboratory Practices in Artistic Wearables.” So I&#8217;ve been there for a while.
</p>
<p><em><strong>Are you from Montréal?</strong></em></p>
<p>
I&#8217;m French Canadian, so I was born in Montréal. However, my parents were hippies, and worked in theater, and then in film. They both did design and technical direction. This made for a lot of moving. I lived back and forth between English and French Canada, and the U.S. and Canada. In the U.S., we lived in Minneapolis, because the Guthrie Theater. We also lived in North Carolina for a while, while mother did an MFA at the North Carolina School of the Arts and where I later enrolled and studied acting for one year &#8212; I was a terrible actress.
</p>
<p><em><strong>So you were brought up in a really artistic household?</strong></em></p>
<p>
Yes, it was exceptionally artsy. In my early twenties I was rather critical of the theatre and thought: &#8220;This is not real art, because you&#8217;re working for a company, and you don&#8217;t have the autonomy of creative genius.&#8221; But now that I work in new media, and it&#8217;s all about teams, of course I don&#8217;t think that way any more about creative and collaborative endeavors.
</p>
<p>
The theater is a great context to learn about building stuff and presenting technology with people in a performative context. What I&#8217;m doing now, in terms of wearable art, involving the body, goes back to that. I’m looking at performance, performativity, and how the presentation context can add to the live-ness of interactive artworks. Also, for me, technology is performative.
</p>
<p><em><strong>But you started your MFA as a painter?</strong></em></p>
<p>
For the MFA, I enrolled in painting, but I ended up doing performance. I did relational performance, which had an important component on the Internet as confessionals or portals for exchanges. This was in 1999/2000, so people were just beginning to do really creative interventions on the Internet &#8212; in fact the Internet was a very performative medium at that time, like e-toys or Mouchette. People were ‘posing’ as all kinds of things, because the web can mask identity, so identity is always constructed.
</p>
<p>
In fact, it was through these on and offline performances that I ended up making the <em>Peau d&#8217;Ane</em> project. I was doing a lot of performances that involved the costume as the key element to the performance. The performance that I did for my MFA thesis show was called <em>The Advice Bunny</em>. I dressed up as a bunny, and I gave advice, sort of like Lucy in Peanuts. [Laughs] There was an online forum and web site where people could ask for advice as well as a ‘psychoanalytical’ consultation office.
</p>
<p>
My performances of that era were focused on framing interaction with individuals, either on line or in real life contexts, where I would set up offices, and booths, and people could come and meet with me. For example, I did another performance about a nurse unlocking the public’s sensory perception through a series of props that were used on the public &#8212; scented oils, picture books, sandpaper etc. So again, sort of an incarnation, a sort of persona. I also did a performance based on Hans Christian Andersen&#8217;s <em>Snow Queen</em>, which involved making snowflakes in a very large installation with about 2,000 hand cut snowflakes decorating the space as a context for making snowflakes for the public as a performance.
</p>
<p>
Working with relational performances which focused on exchanges led me to wanting to make a costume, which would have its own interactivity. I am interested in the agency of objects, and their ability to perform &#8212; not just us &#8212; and I wanted to explore a format which would bring the technology and the body together in a performance context. Wearables, because they are garments, have that potential to phenomenologically transform us &#8212; through technology. This is and remains very interesting to me. I remembered a fairy tale called <em>Peau d&#8217;Ane</em> [Donkey Skin], which had three fantastic dresses &#8212; one could even call them impossible dresses &#8212; made of the moon, sun, and sky. In the fairy tale the princess requests them as a test in order to avoid marrying her own father. Clearly she believes that they cannot be made, though they are made! I thought: Wouldn&#8217;t it be great to make them? To make them really interact with these components? So, I made a <em>Moon</em>, <em>Sun</em>, and <em>Sky</em> dress.
</p>
<p>
I began doing research in wearable, smart textiles technologies and materials, and looking into ways of creating an interaction between the garment and the environment. It was the meeting of this fairy tale, and relational performances involving costumes, which led to <em>Peau d’Ane</em>.
</p>
<p><em><strong>How were you introduced to Max/MSP?</strong></em></p>
<p>
I took a class at a women’s media centre in Montreal called <a href="http://www.studioxx.org" target="_blank">Studio XX</a> and I ended up enlisting my teacher, Patrice Coulombe, to help me. It was an interesting exchange because he was interested in learning more about physical computing, and I was just beginning doing research in that area. Tom Igoe and Dan O’Sullivan’s book <em>Physical Computing: Sensing and Controlling the Physical World with Computers</em> had just come out, so this was a new area of exploration that was becoming more accessible for artists. Patrice really collaborated quite significantly for the Max/MSP components of the project. There are layers of complexity that I couldn&#8217;t really deal with, and that even Patrice didn&#8217;t know a whole lot about at the start of the project. We explored the project together over almost 3 years. Also an engineer / artist, David Beaulieu worked on the electronics in later stages of the project to create customized circuits.
</p>
<p>
For the wearables, I am now working mostly with <a href="http://www.arduino.cc" target="_blank">Arduino</a>, and more specifically the <a href="http://www.arduino.cc/en/Main/ArduinoBoardLilyPad" target="_blank">LilyPad Arduino</a>. At the time of the <em>Peau d’Ane</em> project we were using a charlieplexing chip which had not been integrated into the Arduino toolbox, so we had to design our own circuits. In fact, Arduino didn’t even exist when we started the project.
</p>
<p><em><strong>What is Arduino?</strong></em></p>
<p>
Arduino is an open-source electronics prototyping platform. A company called Arduino in Italy makes them and they have really democratized the field of electronics for artists by making circuits which are easily programmable and designed for artist / interaction designer’s use. For people who are interested in physical computing, they&#8217;ve packaged a series of components, and circuit boards to build your own micro-controllers. They could be used for stand-alone work or they can communicate with software, like Max/MSP.
</p>
<p>
Specifically <a href="http://web.media.mit.edu/~leah/" target="_blank">Leah Buechley</a>, now at the <a href="http://hlt.media.mit.edu/" target="_blank">High-Low Tech Group at MIT</a>, designed a circuit and a series of sensors / LEDs etc, which are made for wearables. The design of the circuits are adaptable to the use of other wearables materials such as conductive threads and materials. The Arduino programming language (called <a href="http://wiring.org.co/" target="_blank"><em>Wiring</em></a> is based on <a href="http://www.processing.org/" target="_blank"><em>Processing</em></a>) is very simple and very well documented &#8212; kind of like Max/MSP! That being said, it’s always possible to design your own circuits. I am not necessarily pro-Arduino &#8212; I always encourage my students to start by making their own circuits, it’s much cheaper and you learn a lot more &#8212; Arduino just makes it quick and accessible and is very stable.
</p>
<p>
However, in the case of <em>Peau d&#8217;Ane</em>, because we were interpreting specific environmental data, we needed a solution for i/o. There&#8217;s a small weather station, made by a company called <a href="http://www.davisnet.com/weather/" target="_blank">Davis</a>, which is for weather enthusiasts. The great thing about it is that it functions wirelessly. So we are able to have a console that could be plugged into a main computer, and then the Max/MSP patch took the incoming data from this particular console.
</p>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/interviews/valerie_lamontagne/image-ssSM.jpg" width="630" height="429" /></p>
<p>
In the case of the <em>Sun</em> dress, you have input from the UV index, solar radiation, and temperature. The <em>Sky</em> patch interprets data from wind velocity, and wind direction. For the <em>Moon</em>, we programmed it to represent the 28-day cycle, without the need for the Davis console, of the moon by activating a series of 14 flowers which increased in activity for 14 days and then decrease for the next 14 days &#8212; following the waning and growing moon.
</p>
<p>
What&#8217;s interesting about working with the weather is that is very site and time specific. I live in Montréal, so there&#8217;s a radical difference between the kinds of readings you&#8217;re going to get in the winter versus summer. I&#8217;ve also traveled with this project to Peru and to Europe, so depending where you are at different times of the year, you&#8217;re going to get really fluctuating readings. So the question came up: “how do you build something which can accommodate all these differences?”
</p>
<p>
For example, in Peru, it was sunny all the time. If you have your parameters set for a certain UV index; it may reach a certain level and then stops transforming itself because it hasn’t been programmed to be sensitive to small changes with a high UV/temperature range. So it might always be within a certain range, and not as active, or responsive as it might be in a different environment. We learned that parameters had to be adjusted accordingly for every climate.
</p>
<p><em><strong>So can you reprogram it on-site?</strong></em></p>
<p>
Yes. The patch is made in such a way that the outputs can be reconfigured at all times, so I can readjust them on the fly. Let&#8217;s say I presented the <em>Sun</em> dress, in Ghent [Belgium] at one point, and it was really only sunny for one morning. I clearly would have to rethink what the parameters of the reading of the dress would be. We encountered that scenario the first time I presented the project at the <a href="http://vooruit.be/" target="_blank">Vooruit</a>.
</p>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/interviews/valerie_lamontagne/image4sm.jpg" width="310" height="432" align="left" />
<p>
What we did was adjust the parameters so very small fluctuations in temperature would trigger the dress to react. The <em>Sun</em> dress has 128 LEDs, so what it does, in essence, is that the moment that there&#8217;s a change in the Davis device readings, based on these three different parameters &#8212; the UV index, solar radiation, or temperature &#8212; it will begin to ‘play’ a different sequence of LEDs, and it will continue to play that sequence in a loop until there is a change in one of the three inputs. So that&#8217;s why one has to research what the weather is like in that particular location if you want the dress to do something interesting. Otherwise it could just stay stuck in one parameter, and not really do anything more.
</p>
<p><br clear="right" /></p>
<p>
And the same goes for the <em>Wind</em>. Some cities are windier, or some times of the year are more dynamic. You want to program it to have the parameters be within the range of what the weather is in that particular area, otherwise, it&#8217;s just not that exciting &#8212; not that the weather is particularly exciting &#8212; but the goal is to also create an artistic experience, so we have to ‘tweak reality’ at some levels.
</p>
<p>
In terms of technology inside of it, the <em>Sky</em> dress has small ventilators, and electronic components blowing into the dress, so that&#8217;s how it inflates. One of the things that I wanted to do with it was to also have it aspirate, so that it could deflate. But unfortunately, the hardware that I used wasn&#8217;t able to accommodate for that.
</p>
<p><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/interviews/valerie_lamontagne/image2sm.jpg" width="640" height="496" />
<p>
The <em>Moon</em> dress uses thermochromic inks, with resistive heating, so when you run the electricity through the threads, it heats up the paint, and that makes it change color. For all three dresses, the interior and exterior, all of the circuitry is made with conductive threads. The wireless communication is an ICSB, so that&#8217;s how it&#8217;s communicating the data with the computer.
</p>
<p>
What Max/MSP does is that it permits us to play with the programming, to observe the data coming from the weather console and create events, which we feel are interesting and dynamic enough to represent the weather fluctuations in that particular location.
</p>
<p><em><strong>How about the dresses themselves, did you design and sew them?</strong></em></p>
<p>
I worked with a fashion designer, Lynn van Gastel, to build the dresses. I had design ideas, but she had more technical experience in terms of building garments. We were looking at dresses and designs from the Twenties, so early Coco Chanel, or Madeleine Vionnet, designers who were really avant-garde for their era &#8212; such as Sonia Delaunay &#8212; were quite influential.
</p>
<p>
The Twenties were an exciting period &#8212; it was the beginning of industrialization and technological advancements in textiles. They used a lot of graphic modern elements, so that&#8217;s why, for example, the <em>Sun</em> dress has these chunky components to it, different chunks of colors. The <em>Sky</em> dress is a little bit more princess-y, because it blows up, but it seemed to make sense that if you&#8217;re going to use the wind, you had to make something that was going to get really big. The <em>Sky</em> dress was in fact inspired by the late Alexander McQueen.
</p>
<p>
So it was a combination of the aesthetics that I was interested in, and the technical parameters. What is possible to make these dresses be both technically and aesthetically compelling?
</p>
<p><em><strong>Do you think you will continue using Max/MSP on future projects?</strong></em></p>
<p>
Yes, I would like to. In the department that I teach in, Design &#038; Computation Arts at <a href="http://design.concordia.ca/" target="_blank">Concordia University</a>, I always direct my students Max/MSP as a really exciting platform to do things, and not just for audio.
</p>
<p>
The limitation that I have with the wearables work that I am doing now, though, is that I&#8217;m trying to integrate all of the computation, and all of the circuits, into the garment. But Max/MSP, of course, is all in the computer, so that forces you to always deal with wireless communication. To be honest, in terms of the <em>Peau d’Ane</em> project, the wireless communication is the weakest link, because it&#8217;s the one part that can really mess up. If the communication isn&#8217;t working, then the garment can&#8217;t work.
</p>
<p>
So that&#8217;s why I&#8217;ve ended up using the LilyPad Arduinos. Of course Max/MSP is so much more sophisticated, and so much more versatile, in terms of producing things that can be transformed or adjusted in real time. I&#8217;ve done real time performance things with the dresses, since I have this interest in performance. I’ve played with the Max/MSP patch, transforming them in real time while someone wears them. And you can&#8217;t do that if you&#8217;ve just programmed a chip to only do only one thing.
</p>
<p>
I think Max/MSP has the most flexibility, in terms of doing things creatively. But as I said, the worrisome thing is always the wireless communication. I’m looking into mobile phone communication for upcoming projects and hope to be able to keep using Max/MSP. As I said - I think it’s brilliant software!
</p>
<p><em><strong>What will you be working on next?</strong></em></p>
<p>
I’ve started a company called <a href="http://www.3lectromode.com" target="_blank">3lectromode</a>. With 3lectromode I’m innovating in the field of wearables by combining technology with customizable prêt-â-porter [off the rack, ready to wear] fashion. We are a small group of researchers: Magalie Coulombe-Noël, one of my former students at Concordia has a background in fashion design so we have been collaborating on some projects. We are developing accessible wearables that combine D-I-Y technology with current fashion research. We’ve created kits &#8212; a series of dresses at this time &#8212; which can be bought either as a D-I-Y kit with all the components and a dress which is printed on a custom fabric printer integrating the pattern and the graphics onto one piece of textile &#8212; you just cut the dress out and assemble following the directions. Or it can also be bought pre-assembled. We want wearables to step out of their geeky niche and really be a part of fashion. For example, recently some of the couture houses &#8212; Chanel, for example &#8212; have integrated technological components in their designs such as a <a href="http://www.fashioningtech.com/photo/chanel-light-bulb-shoe-3" target="_blank">light-bulb enhanced heel</a> on a shoe.
</p>
<p>
I’m also fascinated with the potential for technology to create new modalities of interaction between the body and its environment, so we are interested in the performative potential of technology. The work I’ll be making with 3lectromode will be focused on how wearables can be ‘performed’ and how the experience of wearing wearables changes our every day relationship with the clothes we wear and the environments we engage in. The Futurists were very interested in this, so, I am once again going back to the early 20th century for inspiration. Also with 3lectromode we’re aiming to develop a library of open sourced tools &#8212; ways of rapid prototyping patterns and designs as well as circuits adaptable to wearables &#8212; which can be used easily by anyone to create their own fashionable wearables.
</p>
<p>
The motto for 3lectromode is: <em>“Creating a future where wearables are democratized, aestheticized, and performative.”</em>
</p>
<p><strong><a href="http://www.valerielamontagne.com" target="_blank">Valérie&#8217;s Website</a></strong></p>
<p><em><br />
Interview by <a href="http://www.marshavdovin.com/" target="_blank">Marsha Vdovin</a> and <a href="http://www.rarefaction.com/" target="_blank">Ron MacLeod</a> for Cycling &#8216;74.</em></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/07/13/an-interview-with-valerie-lamontagne/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 97: Posture Man Pat</title>
		<link>http://cycling74.com/2010/07/12/project97-posture-man-pat/</link>
		<comments>http://cycling74.com/2010/07/12/project97-posture-man-pat/#comments</comments>
		<pubDate>Mon, 12 Jul 2010 18:05:46 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[face tracking]]></category>

		<category><![CDATA[posture]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5451</guid>
		<description><![CDATA[Author: Andrew Spitz
Project Date: July 6th 2010
South Africa, Johannesburg

This app reminds you to sit up straight when you&#8217;re by your computer. Basically, if you slouch it warns you.
How Max Was Used:
Max was used to track your face and warn you if it drops by a certain amount. The tracking was done using the cv.jit externals [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: Andrew Spitz</h2>
<h3>Project Date: July 6th 2010</h3>
<p class="location">South Africa, Johannesburg</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project97.png" alt="project" /></p>
<p class="project">This app reminds you to sit up straight when you&#8217;re by your computer. Basically, if you slouch it warns you.</p>
<h3>How Max Was Used:</h3>
<p class="project">Max was used to track your face and warn you if it drops by a certain amount. The tracking was done using the cv.jit externals and the warning flash happens with the aka.booklight object.</p>
<h4><a href="http://www.soundplusdesign.com/?p=3548" target="_blank">Visit the Project Website</a></h4>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/07/12/project97-posture-man-pat/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 96: Solderwire</title>
		<link>http://cycling74.com/2010/07/09/project96-solderwire/</link>
		<comments>http://cycling74.com/2010/07/09/project96-solderwire/#comments</comments>
		<pubDate>Fri, 09 Jul 2010 18:52:14 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[featured]]></category>

		<category><![CDATA[performance]]></category>

		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5425</guid>
		<description><![CDATA[Project Date: 2009 - 
Rome, Italy

franz rosati: laptop
daniele de santis: percussions
federico de biase: guitars
How Max Was Used:
Custom-made patch (Honegumi 0.8). Real Time Granular Synthesis &#038; Loopstation for guitar, percussions and soundfiles processing.
Visit the Project Website
]]></description>
			<content:encoded><![CDATA[<h3>Project Date: 2009 - </h3>
<p class="location">Rome, Italy</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project96.jpg" alt="project" /></p>
<p class="project">franz rosati: laptop<br />
daniele de santis: percussions<br />
federico de biase: guitars</p>
<h3>How Max Was Used:</h3>
<p class="project">Custom-made patch (Honegumi 0.8). Real Time Granular Synthesis &#038; Loopstation for guitar, percussions and soundfiles processing.</p>
<h4><a href="http://www.solderwire.it/" target="_blank">Visit the Project Website</a></h4>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/07/09/project96-solderwire/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 95: Large Hadron Sound Collider</title>
		<link>http://cycling74.com/2010/07/06/project95-large-hadron-sound-collider/</link>
		<comments>http://cycling74.com/2010/07/06/project95-large-hadron-sound-collider/#comments</comments>
		<pubDate>Tue, 06 Jul 2010 20:12:24 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[collider]]></category>

		<category><![CDATA[experimental]]></category>

		<category><![CDATA[laptop]]></category>

		<category><![CDATA[orchestra]]></category>

		<category><![CDATA[virtual instrument]]></category>

		<category><![CDATA[Wii]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5415</guid>
		<description><![CDATA[Author: Nicholas Donovan
Project Date: June 2010
Stoke-On-Trent, Staffordshire, U.K.

The idea was to use the experiments and data from the Large Hadron Collider as inspiration for creating a new virtual instrument  - so you can actually &#8216;play&#8217; the large hadron collider as a creative, performative musical instrument.
How Max Was Used:
Wii remote data scaled using max to [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: Nicholas Donovan</h2>
<h3>Project Date: June 2010</h3>
<p class="location">Stoke-On-Trent, Staffordshire, U.K.</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project95.jpg" alt="project" /></p>
<p class="project">The idea was to use the experiments and data from the Large Hadron Collider as inspiration for creating a new virtual instrument  - so you can actually &#8216;play&#8217; the large hadron collider as a creative, performative musical instrument.</p>
<h3>How Max Was Used:</h3>
<p class="project">Wii remote data scaled using max to create a visually directive sampler instrument (with help from Logic Pro) controlled through intuitive, novel interaction.</p>
<h4><a href="http://www.nickdonovanmusic.com" target="_blank">Visit the Project Website</a></h4>
<p><object width="400" height="227"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=12928313&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=12928313&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="227"></embed></object>
<p><a href="http://vimeo.com/12928313">Large Hadron Sound Collider</a> from <a href="http://vimeo.com/user4022112">Nick Donovan</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/07/06/project95-large-hadron-sound-collider/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 94: Squatouch: Object Oriented Sounds / Tangible Musical Interface</title>
		<link>http://cycling74.com/2010/07/02/project94-squatouch-object-oriented-sounds-tangible-musical-interface/</link>
		<comments>http://cycling74.com/2010/07/02/project94-squatouch-object-oriented-sounds-tangible-musical-interface/#comments</comments>
		<pubDate>Fri, 02 Jul 2010 16:27:51 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[installation]]></category>

		<category><![CDATA[interface]]></category>

		<category><![CDATA[multi-touch]]></category>

		<category><![CDATA[performance]]></category>

		<category><![CDATA[sequencer]]></category>

		<category><![CDATA[sound]]></category>

		<category><![CDATA[synthesis]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5379</guid>
		<description><![CDATA[Author: Alp Tuğan
Project Date: Spring 2009
Kadikoy/Istanbul, Turkey

Squatouch is a computer-based musical interface and offers a multitouch user interface via the forms of direct interaction.
How Max Was Used:
Graphical interface design, and  software application are developed by Max 5. Credits: Mathieu Chamagne
Visit the Project Website

Squatouch: Object Oriented Sounds/Tangible Musical Interface from alp tugan on Vimeo.
]]></description>
			<content:encoded><![CDATA[<h2>Author: Alp Tuğan</h2>
<h3>Project Date: Spring 2009</h3>
<p class="location">Kadikoy/Istanbul, Turkey</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project94.jpg" alt="project" /></p>
<p class="project">Squatouch is a computer-based musical interface and offers a multitouch user interface via the forms of direct interaction.</p>
<h3>How Max Was Used:</h3>
<p class="project">Graphical interface design, and  software application are developed by Max 5. Credits: <a href="http://www.mathieuchamagne.com/tag/mmf/">Mathieu Chamagne</a></p>
<h4><a href="http://squatouch.alptugan.com" target="_blank">Visit the Project Website</a></h4>
<p><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=5739513&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=5739513&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object>
<p><a href="http://vimeo.com/5739513">Squatouch: Object Oriented Sounds/Tangible Musical Interface</a> from <a href="http://vimeo.com/alptugan">alp tugan</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/07/02/project94-squatouch-object-oriented-sounds-tangible-musical-interface/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 93: Auvi</title>
		<link>http://cycling74.com/2010/07/01/project93-auvi/</link>
		<comments>http://cycling74.com/2010/07/01/project93-auvi/#comments</comments>
		<pubDate>Thu, 01 Jul 2010 15:55:09 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[free]]></category>

		<category><![CDATA[jitter]]></category>

		<category><![CDATA[library]]></category>

		<category><![CDATA[performance]]></category>

		<category><![CDATA[vj]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5370</guid>
		<description><![CDATA[Author: Kurt Ralske
Project Date: 2000 - 2010
New York, NY, USA

FREE collection of 85 Jitter objects for Max 5 (OS X). Auvi performs unique complex video effects in real-time, and is optimized for extremely fast performance.
Visit the Project Website
]]></description>
			<content:encoded><![CDATA[<h2>Author: Kurt Ralske</h2>
<h3>Project Date: 2000 - 2010</h3>
<p class="location">New York, NY, USA</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project93.png" alt="project" /></p>
<p class="project">FREE collection of 85 Jitter objects for Max 5 (OS X). Auvi performs unique complex video effects in real-time, and is optimized for extremely fast performance.</p>
<h4><a href="http://auvi-software.com" target="_blank">Visit the Project Website</a></h4>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/07/01/project93-auvi/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 92: MonoMahna</title>
		<link>http://cycling74.com/2010/06/30/project92-monomahna/</link>
		<comments>http://cycling74.com/2010/06/30/project92-monomahna/#comments</comments>
		<pubDate>Wed, 30 Jun 2010 19:00:46 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[granular]]></category>

		<category><![CDATA[performance]]></category>

		<category><![CDATA[sample]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5358</guid>
		<description><![CDATA[Author: raja
Project Date: 1/1/2010
Oakland, CA

How Max Was Used:
Max/MSP was used to create everything from the ground up. A playback driver external was coded for exact granular sync which allows soundfiles of varying tempos to be synced together at the same tempo without analysis as demonstrated in the video below.
Features:

4 Samplers with Integrated Sequencers
Granular Time Stretch(with [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: raja</h2>
<h3>Project Date: 1/1/2010</h3>
<p class="location">Oakland, CA</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project92.jpg" alt="project" /></p>
<h3>How Max Was Used:</h3>
<p class="project">Max/MSP was used to create everything from the ground up. A playback driver external was coded for exact granular sync which allows soundfiles of varying tempos to be synced together at the same tempo without analysis as demonstrated in the video below.</p>
<p class="project">Features:</p>
<ul>
<li>4 Samplers with Integrated Sequencers</li>
<li>Granular Time Stretch(with added cosine trajectory option)</li>
<li>Sample-Slicing/Beat-Cutting</li>
<li>Variable-State Filters at Sampler output</li>
<li>Integrated Stereo Delay</li>
<li>VST AudioEffect PlugIn loading capability(with ability to edit, save, load, and monome-trigger programs)</li>
<li>Output PeakLimiter</li>
<li>Presets for each sampler, the delay, the peak limiter, and master presets which allow for instant global changes(including vst program changes)</li>
<li>MIDI-Beat Clock Output and Sync</li>
<li>Live-Input or Internal Audio Recording into Sample-Slicing Buffers</li>
<li>Ability to record output to soundfile</li>
</ul>
<h4><a href="http://docs.monome.org/doku.php?id=app:monomahna" target="_blank">Visit the Project Website</a></h4>
<p><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8511910&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=8511910&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object>
<p><a href="http://vimeo.com/8511910">DubStepDriveBy</a> from <a href="http://vimeo.com/user2855704">raja</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/06/30/project92-monomahna/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 91: Tap Tempo - improved accuracy</title>
		<link>http://cycling74.com/2010/06/29/project91-tap-tempo-improved-accuracy/</link>
		<comments>http://cycling74.com/2010/06/29/project91-tap-tempo-improved-accuracy/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 16:35:56 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[BPM]]></category>

		<category><![CDATA[live]]></category>

		<category><![CDATA[performance]]></category>

		<category><![CDATA[synchronization]]></category>

		<category><![CDATA[tempo]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5353</guid>
		<description><![CDATA[Author: Paul Kendrick
Project Date: 26th june 2010
Manchester UK

This is a project to facilaite the  syncronisation of a live drummer with samples and sequences, without using a click track but by using a tap tempo via a midi pedal.  Ableton live has its own tap tempo function but the tempo can often be  [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: Paul Kendrick</h2>
<h3>Project Date: 26th june 2010</h3>
<p class="location">Manchester UK</p>
<p class="image"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project91.jpg" alt="project" /></p>
<p class="project">This is a project to facilaite the  syncronisation of a live drummer with samples and sequences, without using a click track but by using a tap tempo via a midi pedal.  Ableton live has its own tap tempo function but the tempo can often be  inaccaruate, as it is updated every tap often sequences, when triggered will be at the incorrect tempo.  It is controlled via a midi foot pedal, the tempo is is updated every 4 taps, to improve the accuracy further the algorithm uses the last 8 taps (if avialable, the first 4 taps will also preoduce an estimate) to calculate the tempo and uses the median value (50th percentile) of the time between taps (this is more robust to outlies the mean).  Rewire is used to control the host application.  The result is a system that has been tried and tested in realtime live situations where samples and sequences are reliably syncronised with a live drummer.</p>
<h3>How Max Was Used:</h3>
<p class="project">Max was used to write an advance tap tempo calcualte<br />
or for accurate syncronisation of a rewire host application with a live drummer.</p>
<h4><a href="http://www.kenders.net/max/pk.mxf" target="_blank">Visit the Project Website</a></h4>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/06/29/project91-tap-tempo-improved-accuracy/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Project 90: Visitor From Within</title>
		<link>http://cycling74.com/2010/06/14/project90-visitor-from-within/</link>
		<comments>http://cycling74.com/2010/06/14/project90-visitor-from-within/#comments</comments>
		<pubDate>Mon, 14 Jun 2010 16:57:47 +0000</pubDate>
		<dc:creator>c74</dc:creator>
		
		<category><![CDATA[projects]]></category>

		<category><![CDATA[audio]]></category>

		<category><![CDATA[narrative]]></category>

		<category><![CDATA[performance]]></category>

		<category><![CDATA[video]]></category>

		<category><![CDATA[Wacom]]></category>

		<guid isPermaLink="false">http://cycling74.com/?p=5175</guid>
		<description><![CDATA[Author: Paul Turowski
Project Date: May 2009
Eugene, OR

Visitor From Within is an intermedia composition comprised of interactive software and controlled using either a Wacom graphics tablet or a standard mouse and keyboard configuration. The composition may be performed in a concert setting or may be downloaded for personal use.
How Max Was Used:
Sounds are generated in Max [...]]]></description>
			<content:encoded><![CDATA[<h2>Author: Paul Turowski</h2>
<h3>Project Date: May 2009</h3>
<p class="location">Eugene, OR</p>
<p class="image"><a href="http://cycling74.com/2010/06/14/project90-visitor-from-within/"><img src="http://1cyjknyddcx62agyb002-web-assets.s3.amazonaws.com/projects/project90.png" alt="project" /></a></p>
<p class="project">Visitor From Within is an intermedia composition comprised of interactive software and controlled using either a Wacom graphics tablet or a standard mouse and keyboard configuration. The composition may be performed in a concert setting or may be downloaded for personal use.</p>
<h3>How Max Was Used:</h3>
<p class="project">Sounds are generated in Max 5 using modulation synthesis techniques as well as through playback of pre-recorded sounds. Similiarly, video is generated in Jitter using 3d models, pre-recorded images, and procedural basis functions.</p>
<h4><a href="http://paulturowski.com/w_vfw.html" target="_blank">Visit the Project Website</a></h4>
]]></content:encoded>
			<wfw:commentRss>http://cycling74.com/2010/06/14/project90-visitor-from-within/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
