Lissajous Curves are a family of parametric functions that define X and Y in terms of a pair of sinusoids. By varing the frequency of each sine wave as well as the phase difference between them a variety of harmonic shapes can be created. The appearance of the curve is largely tied to the ratio between the two frequencies and works best when the ratio is a rational number. For these videos I am automatically varying the phase offset between the X and Y curves which makes it seem like it is rotating in 3D.


Lissajous I from Pehr Hovey on Vimeo.


Lissajous II from Pehr Hovey on Vimeo.

See Wikipedia for more information on Lissajous curves:
http://en.wikipedia.org/wiki/Lissajous_curve

Since this program can plot arbitrary curves it is pretty easy to do parametric function plotting. I am going to continue experimenting with other parametric curve families, starting with Rose Curves.

Along similar lines, I am also interested in working with Spirographs: http://en.wikipedia.org/wiki/Spirograph

Media Garden was part of the UCSB Primavera festival and featured several performances by MAT students. I collaborated with the Rhythm Seminar for the first part of the event. The Rhythm Seminar, organized by Professor Matt Wright, consisted of several students recording, sampling, and processing live audio.  They restricted themselves to only using sounds that were recorded during the performance so the piece started out slow and acoustic and gradually built in tempo and density as more sounds were available for processing. Sound sources included a Piano, a whistle, vocal sounds and a variety of percussive instruments.

I performed live visuals to accompany the Rhythm Seminar which was a challenge since unlike traditional music this performance did not have a constant tempo or even a defined stopping point.

I used a 25-key MIDI keyboard to control the parameters of my program which enabled me to smoothly vary the color and overall appearance of the visuals as the piece changed in tempo and rhythm.

(more…)

My first project for MAT594CM: Spatial Computing explored flocking behavior where a group of entities move in three dimensions with their own velocities but are influenced by the movements and positions of other members of the flock. The movement is influenced by running a set of rules that generates a relative velocity vector that is added to the existing velocity to cause a change of course.

The flock can be visualized as cubes (the birds),  tails which show where each bird has been recently, and surfaces which define the flock shape as a whole.

See the applet page for more details.

Most video compression algorithms are designed for live-action video which contains shades of color that can be easily compressed. My animations tend to change very rapidly and employ many very different colors which means that compression has a hard time working without drastically reducing the image quality. To combat this I have signed up for Vimeo Pro so I can upload unlimited High Definition videos.

I typically export videos using the QuickTime Animation setting which results in great source footage but Vimeo has issues with this format so I am experimenting on what offers the best size-to-quality ratio and passes Vimeo’s compression stage unhindered. The videos below were compressed using Motion JPEG B mode. The source footage for the top two clips was decent quality and about 185MB each for ~30s. The end result is still not the sharpest so I am going to experiment with the H.264 Codec which is what Vimeo recommends.

Since everything is generated live in my program I can pick whatever resolution i want when I run and export videos. The test videos below were exported at 1280X720.


Razzle HD Test 3 from Pehr Hovey on Vimeo.


Razzle HD Test2 from Pehr Hovey on Vimeo.
(more…)