visp Delayed

I’ll make this short and sweet. visp doesn’t have all of its baseline features fully implemented. Those features include some really fundamental capabilities like MIDI learn, loading a module or filter from any location on your computer, or saving your “playlist”. Those last couple features hinge on some functionality that isn’t currently in the public alpha release of the Adobe Apollo runtime. A new preview release beta was released about a week ago which apparently updates the runtime to include this new functionality. This is not available to the public right now, however.

I want visp to be useful (and usable) for anyone that decides to try it out. So, I’m deciding to hold off on releasing for just a bit longer until the next public alpha / beta of the Apollo runtime is released. I might do a small “preview release” of my own that supports the current public alpha version of the Apollo runtime, but if I do, then the release will not have all of the functionality in it that will make it a useful application.

I’ll try to work toward that this week, as I’d love to get it into peoples’ hands. Thanks for your patience.

View / leave a comment: 1 Comment

visp Interface Screenshot and Features Overview

visp VJ Software Interface+ view (very) large image

Everyone, I’m caught up in a project at work that’s forcing me to put a hold on the release of this software. However, I realize I need to put out some proof that this thing exists. So, above is a screen cap from the software I’ve entitled visp.

And I want it to be no secret that the title comes from these words: visual performer. I also want to say that this software was designed as a prototype for a personal proof-of-concept; it isn’t intended to be software that’s supported or salable. And I actually haven’t taken the time to reflect on whether or not my concept was proved as a result of its development. Anyway, enough jibber jabber. Here’s why I built visp along with a general list of its features.

The Reason(s)

Too much UI management. That’s why I hate VJ software. More often than not, VJ software gets you sucked into managing the UI during your performance rather than putting the emphasis on performing. That’s something I never really understood. I always wanted to be gestural with my performance. I wanted to be able to physically say, “Now I want the visuals to blow up.” or “Now let’s start highlighting this sound.” Instead, I found myself using the keyboard and mouse to manage some UI element, forcing me to miss those precious cues. Granted, yes, I could use some sort of controller (MIDI or OSC or something hacked together). But that leads me to my next irk.

Too much focus on clip triggering. I don’t think like this. I’ve got an interactive media background. I think in dynamics. I think in variables and rule sets. I don’t think in terms of linear media (generally). Almost all the software out there has this huge focus on layering video clips and that’s just not for me. So, yes, while I can gesturally trigger clips using some sort of controller, adjusting layer opacities and filters using sliders, I’m still limited to the linear pre-rendered footage in my library. And it just doesn’t suit my tastes. So, you may ask, why not use something programmatic like Processing or Max/MSP/Jitter or Touch?

Maintaining visual continuity is so difficult. In a lot of these other software environments, you can build very beautiful, very dynamic, and very interactive visuals. However, moving from one visual construct to another is no simple task. There’s no “meta” application that really lets you string these pieces together in a unified environment (unless you build it yourself). I started off actually doing just that for Processing applets but was instantly thwarted due to a bug in the latest build. Fortunately, I had access to Adobe’s new desktop platform, codenamed Apollo.

The Solution

Apollo came at just the right time. I could leverage my abundant Flash / ActionScript kung-fu. I could develop a standalone desktop application (that gave me access to native OS windows). And I could leverage the very easy-to-use Flex paradigm of application development. The Flash 9 Player was miles ahead of the Flash 8 Player, so I thought I’d take her for a spin.

Also, I wanted as much of a hands-off-the-keyboard-and-mouse experience as possible. I need to evaluate still where I’ve succeeded and where I’ve failed. Frankly, right now if you don’t have a MIDI controller, this thing is useless.

The Features

I’m just going to list these off in no particular order and with no real explanation. That’ll all come when it gets released.

  • Support for development of your own “Modules” that essentially give you a Flash canvas to play in and do whatever your heart desires
  • Module browser using thumbnails you make yourself
  • Full MIDI support using an external, standalone Java applet (also opensource)
  • 6 slider-like MIDI inputs for use in your own custom “Modules”
  • 4 velocity-aware button-like MIDI inputs for use in your own custom “Modules”
  • Support for transitioning between Modules (using built-in Transitions). You choose the duration and the transition effect.
  • Change the stage’s background color (wow)
  • Two active filters can be going at a time, with up to three MIDI assignable sliders – and a UI interface that you build yourself
  • Output your visuals in a separate, chrome-less window of 320×240 or 640×480 resolution (thank you Apollo team)
  • Real-time 640×480 preview screen
  • BPM Tempo Tapper for assigning some beat-driven automation to the input sliders and buttons. It’s not audio-driven but VJ-driven. You gotta tap the tempo yourself.
  • FPS (frames per second) display
  • OS X and Windows compatible — seriously — I’m actually able to jump back and forth with the same codebase and same modules without any hiccups or platform-specific code!
  • It’s internet aware – that’s the beauty of Apollo.

That’s all I’m going to say about this thing for now. But feel free to post questions. I’ll be happy to answer them.

View / leave a comment: 13 Comments

visp video output 001, 002, & 003

[first output removed due to suck. updated 08/08/2007.]

And thus we have some real-time video output. So, what I’m working on right now is a fairly versatile piece of content that still needs a bit more pushing. But I think I can pretty much sign this one off as finished.

This would be the second video from a second capture session.

And finally the third video captured this evening from that second session. Forgive me for not elaborating more, but it’s kind of late. If you’ve got questions, I’ll follow up with answers. And for the record, I will be releasing this VJ software as open-source, cross-platform software and I will be doing a run-through of its functionality and features.

You can expect that after April 28th, as I’m doing all of this for two upcoming gigs. After the 28th, I’ll be free to focus on cleaning up the code, documenting it (better), and shooting some video to show what this software does (from an interface perspective).

One thing I will note is that pretty much all motion is controlled by hand in these clips via a MIDI controller. And I’m not showing off all that this particular piece of content can do (gotta save something for the night).

View / leave a comment: 3 Comments

visp Output Sample 002

visp output 002

So, I’ve been moving further with my VJ application. These are some shots that I’ve taken after sprucing up the original “sketch” from my last post — making it a little bit more performance-friendly. I’ve really been working on features more than anything today, but keep bouncing back to the creative stuff every now and then.

Videos tomorrow perhaps?

visp output 003

visp output 004

View / leave a comment: 3 Comments

visp Output Sample 001

visp output 001

I don’t want to say a whole lot about this image other than these things:

  • I’m making a VJ application using Flex, ActionScript 3, and Apollo.
  • This is the beginning of some content for the app.
  • This looks awful in real-time (the motion is pretty uninteresting), but the output is interesting.
  • I basically “drew” this with a MIDI controller. Very awkwardly, I might add.
  • This is absolutely a rip-off of some of the approaches to the renders from this Flickr set called “particlesystem” by lennyjpg. It will evolve because, as I said, the real-time motion simply isn’t interesting.
View / leave a comment: 2 Comments

ActionScript 3 Spectrum Analyzer

Basic Audio Spectrum Analyzer Screen Capture+ view Flash demo

After some deliberation, I decided to go ahead and start learning ActionScript 3 (but not necessarily Flex). I have some ideas for an image generation technique based on audio data. The first step toward that is the audio analysis.

I was initially going to attempt this using Processing, but after looking at the new AS3 language API, I found that ActionScript had the capabilities I needed. On top of that, we’re going to start moving to some AS3 development at work. So I can kill two birds with one stone.

Let me know if you’re interested in the source code for this. I need to clean it up a bit, but it might be useful to some folks.


I’ve updated the song on the demo page to be something that’s much more beautiful and visually interesting. It’s a song called model d by a Japanese artist named so inagawa. The song is from a free netlabel release at unfoundsound’s free mp3 releases (unfound17). You can also download it from

I’ve added the source code for the project to the demo page as well. Enjoy!

View / leave a comment: 2 Comments
View / leave a comment: 3 Comments

Wall of Rotation

Last night, my friend Shikhiu and I got all kinds of nerdy. After an hour of watching him play World of Warcraft, we got on the MBPs and started toying around with Quartz Composer, cubes, the iSight, and the Replicate in Space macro patch. I accidentally wound up creating something in the same vain as my previous Image Topography Renders. Here are the results:

Wall of Rotation Screenshot 1+ view (very) large image

Wall of Rotation Screenshot 2+ view (very) large image

Wall of Rotation Screenshot 3+ view (very) large image

And then I’ve also got a video:

You can check out the higher-res Quicktime here.

Finally, I neat little glitch / bug when using a Quartz Composer Composition as a screen saver in OS X occurs when you leave the background trasparent in your composition. Here’s a nice little gem that came up last night:

Wall of Rotation Screenshot Glitch+ view (very) large image

UPDATE: If you wanted to snag the oh-so-simple source file, you can do that too:

View / leave a comment: 1 Comment

Productivity in the Nude

I just got back from a benefit called Nude Aid: An Erotic Art Making and Give Away Benefit for the Center for Sex and Culture. I’m not going to go on about the event. It was simply a great time with a great turnout. Carol Queen and Lady Monster did an excellent job of putting it together.

My role this evening: I basically had to churn out about 20 pieces of “art” in 4 hours. I’ll let you do the math. And since I had already done the math, I realized that I needed to stick to a medium that was not terribly messy and would prevent me from getting into the details. Here are the pieces in all their blurry glory — or at least most of them. Sadly, I forgot to take pictures of quite a few.

Pieces created by Mike Creighton at Nude Aid+ view (very) large image

View / leave a comment: 1 Comment

A Mix for the Holidays

So this isn’t really a mix. It’s more like a mix tape — minus the tape. We’ll call it curating.

The story: odopod is having a holiday party next week. I was asked by one of the partners, Jacquie Moss, to put together about an hour of music for the dinner-portion of the event. I asked her if there were any specific qualities I should look out for. Her reply:

Conversational. Upbeat, but low-key. Ambient. Interesting. Lovely.

So, here’s my stab at meeting that request: Download Mike Creighton’s Odopod Holiday Mix.

And for those of you that are curious about the playlist, here it is:

  1. Khonnor – Rooms
  2. DNTEL – (This Is) The Dream of Evan and Chan [Barbara Morgenstern Remix]
  3. Herrmann & Kleine – Shuttle
  4. múm – awake on a train
  5. Solvent – When the Sun Hits
  6. Air – Mike Mills
  7. Sondre Lerche – Stupid Memory
  8. John C. Kelley – surfs up
  9. Broken Social Scene – Looks Just Like the Sun
  10. Modest Mouse – Gravity Rides Everything
  11. Matmos – For the Trees
  12. Cornelius – Brazil
  13. Boards of Canada – Satellite Anthem Icarus
  14. Skanfrom – Here She Comes
  15. Herrmann & Kleine – Leaving You Behind
  16. Thom Yorke – Atoms For Peace
  17. Ulrich Schnauss – Wherever You Are

Did I do okay?

View / leave a comment: 1 Comment