Quartz Composer 3.0 in Leopard contains templates for Graphic Animation (Keynote backgrounds, etc); Graphic Transition (iMovie '08 transitions); Image Filter (iChat effects); Music Visualizer (iTunes visualizers); RSS Visualizer (?); and Screen Savers. Create a new composition from one of these templates, put your composition into /Library/Compositions (or ~/Library/Compositions if you're timid) and it will be available to any application that requests a list of that class of composition.

I've been playing with the iTunes visualizers and iChat effects. I put a few in the "Compositions" page. This sure makes it easy to extend the built-in effects; I'm amazed more online publications (especially Ars Technica!) haven't expounded on this feature at length. Video effects for the masses! Viva la revolution!

My First Plug-Ins

I wrote my first two Quartz Composer 3.0 plug-ins today. Some of the code was lifted from my old "hack" plug-in for QC 2.0 that I never released, and other code was pulled from all the great examples in the QC Examples directory. To use the plug-ins, download them and unzip them, then copy the plug-in out of the "build/release" directory into your "~/Library/Graphics/Quartz Composer Plug-Ins" directory (creating it if you don't have it), then re-start QC. Beware, use with caution, alpha-quality, and all that should be applied.

The plug-ins basically attempt to track N features across a video stream using a KLT (Kanade-Lucas-Tomasi) feature tracker I found in the public domain (written by Stan Birchfield and Thorsten Thormaehlen). It's really inefficient (especially the plotter), but I'll figure out how to get better. I think the feature tracking itself is pretty fast-- just my handling of the QC buffers leaves something to be desired. Full source is included, although I haven't attached any licenses to it yet. Just ping me and I'll give you permission to use it however you want. I also posted a little composition that uses the two plug-ins.

Needless to say, with the new built-in patches and the ability to write your own, QC has gained a lot of power. I could see using it as the mediator for all sorts of processing pipelines. If only Apple was at all interested in Java I could tie it in to the stuff I do for my day job. (Besides being faster to develop and execute than a lot of the Objective C stuff these days, and having a modern IDE, Java would give Apple access to zillions of trained developers, but I digress...)

So anyway, feel free to check it out and please offer suggestions. I'll probably get back to composition writing during the week instead of plug-in hacking.

Sam's Quartz Composer Site Rebirth

After installing Leopard on Friday and seeing how much they've added to Quartz Composer, I've decided to start tinkering with it again. Since I don't even have the files or software used to create the old site, I'm starting over with a DreamWeaver site. Hopefully this time I'll be able to keep it a little more organized.

I plan on posting most of my old compositions as well as any new ones I create on the Compositions page, and I'm going to try my hand at some custom plug-ins now that they're officially supported and post them as well and post them on the Custom Plug-Ins page. I'll also have to check out all the old sites like and see what's up over there.

Last time I got into Quartz Composer I didn't have a kid (now I have two), so don't expect as quick progress as I used to make...