Wednesday, January 20, 2010

Fun Stuff!

I was warned that Winter quarter would be extremely intense, and it is!  I'm enrolled in several extensions or previous courses, namely 256b "Mobile Music" (iPhone programming), 220b "Compositional Algorithms, Spatial Processing, and Psychoacoustics", 192b "Advanced Sound Recording Technology", and 250b "HCI Design and Performance Systems for Music".  I'm also taking my first course with the great Julius Orion Smith III AKA "King Nerd" AKA "The Janitor".  The course is Music 420 "Signal Processing Models in Musical Acoustics".  In other words, Physical Modeling.  Julius is sort of the king of audio DSP.  He writes, books, lots of books.  I've read two of them (1, 2) for the intro to DSP course, and this course is based on this one.

The quarter is already well underway and we hit the ground running, with a rocket strapped our backs.  So far I've created some music based on cellular automata, written three iPhone apps, designed a spherical midi controller (images soon to come), and learned a thing or two about physical modeling.

Tuesday, January 5, 2010

I suck at blogging

Well, It's been forever since I updated the blog.  I should have at least posted the "sorry for not posting" post some time ago.  Anyway, it's irrelevant now (and who the heck other than me reads this, anyway?).  So here's what I forgot to blog about:


- The augmented violin project.  In 250A (Musical Interaction Design) each student had to submit a final project proposal.  Mine would have been a spherical input device replete with encoders, sliders, LEDs, and an accelerometer.  However, the final projects were done in groups, so not everyone's project was realized. The one I worked on was an augmented violin, which is a regular violin with electronic sensors added, plus some software to process the sensor data as "gestural input", plus some more software to sonify this gestural data.






- The Insaniac.  The final project in 256A (Music, Computing, Desgin).  This was a cross between a granular synthesizer and a kinematics simulation, all wrapped up in an aesthetically pleasant, animated, toy/instrument program.  In other words, a glorified screen saver.









- The Mini-Instrument.  A bunch of electronic sensors and LEDs mounted on a piece of foamboard and connected via perfboard to a breadboard with an arduino-based circuit on it.  I played with this thing for hours as an input device to some software designed specifically for it.  But I didn't record it!  Now, the thing has been destroyed, the parts returning to the Max Lab aether.  There is something extremely satisfying about creating something beautiful, not using it, and then destroying it.  Ashes to ashes.

EDIT: It wasn't destroyed after all!  Yay!

- The Music Programming Toolkit.  AKA MusKit or MTK.  Inspired by the Synthesis Toolkit (STK), I wanted to create a class library that can be used to develop music software.  What does that mean, exactly?  Well, it can mean many things.  One the one hand we have STK, which leverages RtAudio and provides a suite of signal processing modules that can be used in any configuration the programmer might conjure.  On the other hand we have Juce, a fully-featured cross-platform application development environment, complete with its own audio I/O, graphics engine, IPC, and even plug-in format wrappers. MusKit will fit somewhere in between these two environments.  In other words, STK ⊂ MusKit ⊂ Juce.  Muskit will provide all the hardware support and signal processing infrastructure as STK, plus a host of classes for connecting DSP modules in a musically meaningful manner (read: sequencing, timing, external control, etc), but it won't go so far as to dictate how your application should be structured.  It will still be lightweight enough to easily integrate into a larger framework such as Juce, QT, Cocoa (via obj-c++), etc.

- The DSP final.




'nuff said.

- Lastly, I've applied to the CCRMA PhD program.  As only two slots are open for it, odds are I won't get it.  But not long into the MA program I realized a few things about myself and my goals:

  • I have a lot of respect for my professors, and I want to work with them as much as possible.
  • I am 5000% more productive than ever before.  And I was never a slacker.
  • The work I am doing here is the best I've ever done, despite the short duration of each project.
How perfect would it be to have 4-5 more years to follow my pursuits?  I would be able to take many classes (in fact, would be required to take at least 135 units), and work on a number of long-term projects.

Don't get me wrong, I want to have a company that makes great software and push the boundaries of what people have come to expect from music technology.  But spending all this time at CCRMA, learning so many things, working on so many projects, I'm constantly reminded of one simple fact:

I don't know shit.

Friday, November 13, 2009

Great show last night


Sweat Shop Boys played at CCRMA's fall concert, "A Cagian Music Circus", last night.  The event lasted 1.5 hours, with performances happening simultaneously in six areas throughout the building.  The free concert drew a crowd of about 150.  Our performance took place in the CCRMA stage, a beautiful and intimate concert space (with no actual stage) designed for multichannel electroacoustic music.  It's equipped with two rings of 8 ADAM studio monitors and four subwoofers for a grand total of 20 channels of 3-d playback.  Sweatshop Boys are only used to playing on stereo rigs, bad ones, in acoustically bad spaces.  So this was a welcome change, to say the least!  We retooled our effects busses to output four discrete channels, which were diffused to the four corners of the space.  Also new for us was a highly receptive crowd of like-minded people.    The pic above is the only one I have at the moment, but many high quality pics should be available soon.

Friday, October 30, 2009

SoundPrism


In Ge's class we had to create an audio visualizer using OpenGL that shows the waveform, the spectrum, and some other feature of the audio.  I had never really written anything with OpenGL so this assignment presented an added challenge.  But after learning how the api works and getting my head around the geometry (which is vastly different from the 2D apis I've worked with [Quartz, GDI(+), Juce, AGG, VSTGUI]), I felt like a kid in a graphics programming candy store.  Also significant is that this is (surprisingly) the first time I've worked with FFT data in C++ code.  OpenGL makes it easy to create cool looking stuff, and I think that really rubs off on this program.  I've made a lot of use of it as a scope for my synths, but I'll definitely be using it as an instructional tool as well.

If you have a mac and want to try it out, it's at https://ccrma.stanford.edu/~adam/256a/hw3/

Wednesday, October 21, 2009

Quick Reflection, and some music

The MST has been keeping me extremely busy.  I can count on one hand the number of hours I spent relaxing last week.  Saturday I spent the entire day writing code for the next 256a assignment (a sound visualization application) and Sunday I spent most of the day doing DSP homework (working out DFTs by hand, proving theorems, analyzing spectral leakage).  Another project (for 250) was using data from the iPhone's accelerometer gathered over wifi to create some music.  I stayed up almost all night last Thursday working on a piece I call "Roil." Roil.m4a.  I've also been messing around with sensors (potentiometers, piezos, force sensing resistors, flex sensing resistors, accelerometers, photocells, and encoders [my favorite]) using the Arduino.  I've found 220a (intro to computer music) and 192a (recording technology) to be rather boring so far since I covered most of these topics in my undergrad, but these aren't particularly time-consuming so I'm glad to be solidifying my prior knowledge through repetition.  Also, 220 involves homework assignments using ChucK, which is forcing me to make use of that awesome language.

Tuesday, October 6, 2009

Deep Listening






It's tuesday 10/6, but this post is actually about last tuesday, when I was getting over a nasty cold and had a splitting headache.  Every morning in MUS220 we listen to each other's music for about 45 minutes.  Three people get to present their tunes each session, and I went last this time.  15 minutes is *almost* enough time for a single Sweat Shop Boys track, so I grabbed a copy of "440 Hurts" and folded it a little to make it fit.  I should get into the habit of listening deeply early in the morning, because lately I've noticed that my mind is much more sensitive and my body much more relaxed immediately after a shower, a cup o' joe, and a 2 mile bike ride.  Afterwards, Chris (the professor) said he could 'hear the whole class listening' to the music.  Indeed, there was a stillness in the room where usually people start to fidget after a few minutes of long, repetitive music.  He was inspired then to try one of Pauline Oliveros' sonic meditations, which had the whole class droning slow, steady, quiet pitches with our voices.  My headache magically vanished.