Update 15 September 2007: I have fixed the code so it will now run on Windows too - see also Processing and ChucK 'Hello World' demo

A couple of weeks ago my colleague Barth mentioned Processing to me. I knew the works of John Maeda and Ben Fry from a number of years back, but I found it too small, too closed at that time. Now I was surprised by the growth of the platform and the community. I decided to give Processing a try during my holidays. More about that work later...

Linked on the Processing site I found ChucK, a new audio programming language. I see a lot of possibilities to create audio by visual means.

I have created a demo application to let Processing and Chuck talk to each other through OSC. The demo loads 4 audio files. Volume and panning values are controlled by Processing and sent to ChucK. ChucK analyses the sound spectrum and sends back analysis data.

This is a non-interactive sketch, but interactivity would be trivial to add. PS: if this demo looks a bit similar to SoundField, this is no coincidence...

The demo needs ChucK to be installed, so it won't play on a web page. But this is how the demo will look like (listen with headphones):

Yes, I have updated the video as well. Watch the previous video demo on YouTube


(updated 15 September 2007)

Comments (edit)

emoc - 11 Sep 2007:

Hi Arthur, it looks & sounds nice! I tried to run the demo application on windows XP, but it seems there are some troubles : the sounds are not loaded (perhaps because of the semi-colon in the full path), so the scripts.

Arthur Clemens - 12 Sep 2007:

On windows somehow the chuck file does not get called. I am investigating the issue.

Arthur Clemens - 15 Sep 2007:

I have updated the demo - now it works on Windows as well.

OSX - 03 Nov 2007:

here's what it looks like when i run it: ProcessingAndChuckDemo.png

blank window is the demo app. of course when it's selected it says something more like BlogComments.ChuckPlayFileDemo instead of Activity Monitor

note the values for memory. it's clearly doing something. just not showing me anything. this is under 10.4.10.

sure i don't need processing installed.

if i'm supposed to do anything besides install chuck (which works and is accessible from the command line (though not installed in /usr/bin if thats where you need it to be), i don't know about that. the demo app is installed in /Applications.

% java -version java version "1.5.0_07" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_07-164) Java HotSpot(TM) Client VM (build 1.5.0_07-87, mixed mode, sharing)

you can ignore this line: - 03 Nov 2007:

of course when it's selected it says something more like VisibleArea.ChuckPlayFileDemo instead of Activity Monitor

forgot i cropped it out.

this demo is working now - 03 Nov 2007:

turns out it was that assumption that i could put chuck anywhere accessible from the command line (via a changed path) that was afoul. note the requirement that chuck be installed in /usr/bin for this demo to work!

thanks arthur. look forward to messing about with this more. do you have any clue what the breakdown of cpu usage between processing and chuck is in this demo? my machine (1.5 Ghz PPC) is devoting between 20 and 30 percent CPU to this demo right now... (note: no judgement attached to that statement. just info porn)

watson - 03 Nov 2007:

clarification: i noticed that ChucK is actually running as a separate process from the demo thread (which presumably includes all the Processing stuff). on my machine (stats above) the former is using up around 35% CPU while the latter, as I said above is ~20-30%. just for comparison, if i run "chuck otf_04" (five chuck thread in parallel producing about the same sonic complexity) from the chuck examples page i see a CPU of ~15%.

Leave your comment