now playing:
In case you’re not super minimal like we are and don’t already know, Richie Hawtin is the Berlincoolest musician ever. His label, M-NUS, is celebrating its 10th anniversary with, among other things, a blue lighted cube (pictured left). Ali Demirel, visualist for Richie Hawtin, includes Quartz Composer in his arsenal of interactive and realtime media tools, and has been using a couple of Kineme tools to control and interact with his visuals.
He used Particle Tools to get some interesting effects in the visuals displayed behind the musicians during their set. He modified the “Fire” sample to fit with the other visuals and the music.
He also used Kineme File Tools String with URL to access the information acquired by the Cube. Members had RFID chipcards, and it would get their name whenever anyone held up their RFID chipcard to it. Demirel then chose the right moment to display their name in the visuals.
For an interview with Mr. Demirel, including links to videos, check out the full story on Kosada.com.
In the wee small hours of this morning, Kineme Interactive Media released its first commercial product, QuartzCrystal.
QuartzCrystal is an offline renderer that turns Quartz Compositions into portable QuickTime movies. It supports 3rd party plugins, as well as patches that do not work in safe-mode-only environments (such as QuickTime Pro). It also supports software scene antialiasing, so if you have a Mac with plenty of RAM and a hard-core video card, you can make spectacularly beautiful renderings of your plugins, effects, and compositions.
Beside QuartzCrystal, the only other product that renders and encodes compositions to movies is Apple’s own QuickTime Pro, which doesn’t support plugins, unsafe patches, or antialiasing.
The Kineme Quartz Composer patches now have a proper home at http://kineme.net/, including forums, bug reports, comments, and feature requests — complete with voting!
Along with the new site, a few new patches are available as well based on requests from users.
Making pop-up menus in custom Quartz Composer patches is actually surprisingly easy.
This release is only compatible with Tiger (10.4).Please see kineme.net for Leopard-specific informations.
- Set up a QCIndexPort input. QCIndexPorts provide values from 0 to whatever max you specify using
- (void)setMaxIndexValue:(unsigned int)max;.
Here’s a new version of the Xcode Template for Custom Quartz Composer Patches.
Changes:
- Rebuilt from scratch — no longer depends on QCJP’s work — and, by extension, the Creative Commons “Attribution-NonCommercial-ShareAlike” license. My Xcode Template, as of version 0.2, is released into the Public Domain. You are free to use it for whatever — commercial or non-commercial.
- QCJP’s headers were replaced with headers assembled directly from the QuartzComposer framework — now located in the QuartzComposer/ folder of the project. I’ve exported a few more headers than QCJP had constructed, so there’s some added functionality (namely, image input/output ports).
- The project now automatically assigns an icon to the patch bundle, and installs it in /Library/Graphics/Patches/ for you each time you build, for faster edit-build-test workflow.
Download the installer, version 0.2.
See the old version’s blogpost for some additional instructions and user comments.
A few weeks ago I stumbled upon a P5 Glove listed on eBay for $20. It arrived a couple of days later, and I started playing with libp5glove by Jason McMullan, Tim Kreger, and Ross Bencina. I built a very simple Quartz Composer patch around it.
I took Martin Kahr’s Apple Remote Controller Wrapper Class and built a Quartz Composer patch around it.
This release is only compatible with Tiger (10.4).Leopard (10.5) includes a built-in Apple Remote patch.
Please see also kineme.net for Leopard-compatible patches.
Some notes:
- The events received from the Apple Remote are fairly strange to begin with.. You don’t simply get “key down” / “key up” events as I would have assumed, but instead get cooked events — for many of the buttons, holding the button down generates a different event than tapping it.
- My patch queues events, to ensure that each keypress is visible for at least one frame.
In addition to writing the inspector panels for custom Quartz Composer patches tutorial, I spent this weekend writing up some advanced custom-patch-development documentation and posted it on QC Wiki:

