« NIME Progress Report #4 | Main | NIME Progress Report #6 »

NIME Progress Report #5

This week has so far been devoted to experimentation and rehearsal. For "rehearsal" read finding bugs: one problem I identified a few days ago is that my ChucK patch gives out after about 47 concurrent threads (or shreds or whatever). This limitation turned a rather stirring headphone performance of Spider and Web into a stuttering fiasco. There's not much I can do to optimize the code at this point—each thread contains just a single sine oscillator going into an envelope generator—so I'm trying to think of ways to cut down on the number of threads I create, or some way to cull uninteresting threads. One idea is to look for and drop objects past a certain age that have only ever been attached to one parent.

Or I could just make sure that the story file I write and/or perform never plays more objects than my patch can handle.

One major change to the patch this week was that an object's note sequence gradually gets quieter unless some activity occurs that involves that object. This has the benefit of decluttering the sound a little bit, but has the side effect of making the piece time-sensitive: if I don't keep playing at a certain speed, the piece will fade to silence. I like this. I'm enjoying the added sense of dynamics and urgency. A little bit of analog control goes a long way.

I've also been experimenting with a few new audio textures. One idea that seems promising (though I haven't implemented it yet) is to introduce sustained droning sounds for parent objects. As an object has more children attached to it, its drone will increase in volume. (There will probably be some kind of lower limit to the number of attachments necessary.) This fits in pretty well with the mapping I'm already working with, and adds a number of musical possibilities.

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)