Archive for the ‘Uncategorized’ Category

eee

Saturday, January 31st, 2009

I recently moved my portable work environment to an Asus eeepc 901 running Ubuntu (Easy-Peasy).  I actually did the install while it was still being called “Ubuntu eee,” and made the remark “easy-peasy” after completing the install.  The name is that appropriate.  Not kidding.

Beyond installing and configuring it, the move to ubuntu was likewise fairly easy as well.  My homebrew OSC cluster runs ubuntu server, so I had cut my teeth using linux without a GUI.  I compiled supercollider on the little guy.   I went with gedit instead of emacs for this laptop because I was getting tired of all the wacked-out key commands.  I’m still running emacs on the servers though, because I don’t really code directly in that environment.  Quickly I learned that the IDE in linux is very different than the IDE in OSX.  For one thing, GUI is handled completely differently.  This isn’t too much of a problem as most of my work is GUI-free, but that rule has the notable exception of remote_lang2.3 , the interface Ron Kuivila and I wrote to simplify the process of writing distributed code, as well as to protect me from karpal-tunnel syndrome (which Ron claims is the direct result of too much emacs).  While I can neither confirm nor deny its effect on my numb fingertips and shooting forearm pains, the patch is absolutely essential for me to effectively develop networked code.  I have now altered the source code to work with gedit.  It’s still as simple as I could get away with, because I’m not really interested in flashy UI tricks.  Behold.

You’ll notice it’s not an .rtf file anymore.  This is because both linux implementations of supercollider currently do not support anything but plain text files.  I am way into this.  To reformat all my old sc work into plain text, I wrote a script.  Actually, since sclang is the culprit for adding / managing the formatting anyway, I figured I’d let it sort it out.  So I wrote the script in sclang.  There is a certain type of programmer that might cringe at this, and there is a certain type who will find it funny.  I am the second type.  Behold.

As for my karpal-tunnel, I have started baking bread.  Kneading dough for ten minutes at a time is really good for the tips.  It’s also a great thing to do while code is compiling.

Lunar Lounge Pedal 2025 Edition

Saturday, July 26th, 2008

i’ve been developing a pedal for Devin to play his guitar through loudly on 8.8.08 when we take over a biker bar called Popeyes in Peekskill, NY.

the basic idea has been to pre-amplify the signal with an inverter chip, possibly after filtering it with an R-C circuit. the signal is then used as a clock for a divider circuit, which is capable of dividing the signal by several octaves until it becomes a series of clicks and the sensation of tone disappears completely. the octaves that are perceived as stable tones then become gated (turned on and off) by the lower-than-audio-rate octaves. these pulsing, detuned versions of the input signal can then either get summed back together and amplified (as in the pedal), or sent to different speakers around a space.

i think another possibility for this thing could be to generate synthetic tones using the NAND gates as oscillators, and having the pitch of the incomming signal affect the overal speed, but not the fundamental pitch of the resulting pattern.

i was considering submitting a more complete schematic and recording of the circuit for the DVD version of Nic Collin’s book, but i’m pretty sure it’s too late, and it’s not been quite perfected yet.

i played King Tubby with Soul Syndicate through it. the output signal no longer sounded like dub. occasionally when the vocals crackled through, i was reminded of Jamie Saft and Merzbow’s duo recording, Merzdub, or perhaps some Panasonic. I will get a recording of something up soon. however, as you might have guessed, it’s very unstable. i described the rules of the system in my abstracted, idealized language because i come from a computer programming background, when in reality that’s only a point of view and systems don’t all behave that way. it seems to lock on easier to higher pitched material, so i thought perhaps a guitar would take to it. i tested it with solo Derek Bailey, and the output signal no longer sounded like Derek Bailey, but it at least still sounded like a guitar. at least until it would get confused by softer material. i worry that a line-level guitar might not be enough to drive the circuit reliably. if that’s the case then i’ll put another pre-amp hex inverter stage.

i like this path because it reminds me of some granular things in the computer music world. it’s really refreshing sometimes to work in a medium that’s harder to control. in my computer music compositions, i’ve recently been focusing on allowing the system in place to be stochastic in nature, where the form merely determines a new table of probable outcomes. while this is all just peaches and cream, i’m getting proficient enough in that environment that i can occasionally predict it too well, and i need to introduce some more indeterminacy into the system. that being said, there have been some recent moments of pure exploration with supercollider. i have happened upon two parameters of granular synthesis that i hadn’t really played with yet: envelopes and phase. i did a few experiments in the past with simple phase modulations of wavelets, but it seemed like more trouble than it was worth. oh how wrong i was. ditto with the envelope thing. more to come on that later.

recent developments in a nutshell

Monday, June 9th, 2008

Sorry it has been so long since my last post. It has been a really wild ride.

I find myself running full speed ahead so often, that sometimes it seems like to reflect on what I’ve been able to accomplish would result in some kind of an explosion. At the same time, my lack of reflection robs me of the perspective I need so allow myself to burst with these new skills in a satisfying way. And so, I sponged for so long, reacting and responding to ideas and growing ever readier to finally pinpoint that thing of all things, only to continue honing tangents and indulging obsessions. I feel that the time has finally come to take a step back and account for what needs accounting for.

I have started work on an ecosystem of small musical automata, each of which demonstrates a feedback system involving a ‘crossing of levels’. The first one, pictured below,

photo-101.jpg

uses a photoresistor controlled clock to time a regular spasm of movement to a shaker motor. the photoresistor reacts to minute changes in light, which may either result from the movements of the light organic material attached to the weight, or from the freewheeling motion of the entire system. The periodic shakes occur faster as it gets more exposure to light, and the entire sculpture emits a squiggly drone through a resonant cavity in its base. He is particularly fond of lamps. I cannot thank Jeramie Belmay enough for his help with designing the body. This is the prototype. This is the final being.

The second item in this series is currently being designed as a light-emitting being of similar stature, essentially a converse of the first. Instead of blocking ambient light, this automaton blinks. The sounds are more complex as well. They play together nicely. Documentation to come.

I created a simple biofeedback composition using in-mouth galvanic response in conjunction with control-level feedback structures called “Loop”.
Asli Soncelly’s short film “Lenore” was an amazing project to be involved with. She has a really sick mind, a powerful asset when working on a horror film. I did the entire project in free open-source software, including some patches i made in SuperCollider for spectral granular synthesis. Also designing reverb in SuperCollider was an interesting process. I eventually chose convolution as my method of choice, and recorded reverb impulses in my bathroom. I also had some fun with the ambient noises, since much of the original sound had been damaged during filming. Contact microphones and freesound became my friends very quickly. It won “Best Senior Film” at Wesleyan, due to Asli’s bloody cinematic genius.

Mike Clemow and I have been building a linux cluster at NYU for the purposes of running sound synthesis and other high-level media production algorithms using OSC as a message-passing interface. We made an appearance at the ITP spring show to demonstrate some of its functionality in these beginning stages of production. Using Julian Rohrhuber’s Just-In-Time library for SuperCollider, I livecoded on the cluster using my laptop as a head-node, controlling streams of wavelets in realtime. I have learned much about the architecture of SuperCollider itself, and really about networks themselves, from this project. I cannot thank Mike enough for bearing with me as I wrap my head around these machines.

The Arboretum, a 12-node linux cluster workstation, has birthed two much lighter, more transparent “dev clusters”. Mike and I each own a few machines, and are building clusters to our own specifications. I named mine the “Cattri”, Pali for the “four”, as in the Four Noble Truths in Buddhism. Each of the four linux boxes is named the Pali word for a Noble Truth: Dukkha, or “The Nature of Suffering”, Samudaya, or “The Origin of Suffering”, Nirodha, or “The Cessation of Suffering”, and Marga, or “The Way Leading to the Cessation of Suffering”.

At this point I have set up a wireless network on which it is possible to livecode with these machines, which are piped through my monitors as well as through the loft’s new sound system– a pair of flat speakers and an amp we found in the trash, fixed, and mounted to the walls. Between those and the cluster itself, it’s shocking to think what people throw out! In addition to composing recursively symmetrical granular structures on the toilet, it is possible to wirelessly control the house’s music and have access to a shared music library.

I see myself currently working toward a greater capacity for spontaneity in my work as my skills get honed. Current obsessions include formal languages, networked microphones, analog electronics, wavelet analysis, improvisation and sculpture. I also see myself becoming more interested in extended vocal techniques. Of course, more musings on each of these will happen at a later point.