Category Archives: software - Page 4

production quality

i just read an article on some news site talking about the death of the audiophile. wow. welcome to 10 years ago!

when i first got into the idea of the mp3, it occurred to me that we were moving away from the CD and toward the computer as the audio component of the home. with the popular adoption of the ipod, i was proven correct. yet my first concern back in 1996 was that my hard drive was not big enough for me to manipulate many of my recordings, so how much music could i really hold? mp3 (and plummeting storage costs in subsequent years) solved that problem for me nicely.

in some other article i read a couple of months ago (note the lack of links because i am really, really lazy) the author was declaring that the peak of consumer audio was with the CD and we are headed on a downhill slide. i am not sure that i disagree with that at all. i follow a lot of mailing lists and forums that go on and on about “pro audio” this and “pro audio” that and i wonder what that means any more. yes, the more precision we have in the digital domain the better our dithering when it comes out and all that jazz. but if i am taking my high quality master and shrinking it down to a 128 kbps mp3 that will be heard on earbuds on the bus or even worse, routed through a cassette adapter in a car that is traveling at 75 mph down the freeway at rush hour, does it even matter? the subtle nuances of my carfully crafted reverb will be lost forever amidst the tire noise.

tack on to this the number of people producing albums with nothing but garageband and an internet connection and we soon see that the high end is really suffering. and no one cares. except for the high end and the folks who have bought into it (protools/logic studio/cubase users…i’m looking at you).

does this mean anything? probably not. i have an enormous music “collection” and i don’t listen to a lot of it. i am quite glad that i don’t own physical copies of most of it because we would have no place to store it. i get to listen to what i want when i want and that convenience is worth a ding in quality that i honestly don’t notice most of the time due to the circumstances of the world around me (dog, chattering baby, neighbor’s car alarm, traffic, people trying to talk to me in random coffee shops).

none of this means that i will be giving up my sennheiser headphones or my CD recordings of shostakovich’s string quartets. but it does mean that i will continue to be content with my ipod and cassette adapter for the car where the majority of my listening takes place.

oh and i’ll probably be investing more in microphones than in software in the future. after all, paying a ton of money doesn’t make it a professional recording. getting paid or paying for it does. and maybe i’m a composer and not a professional.

pure data and data structures

I hate it when I arrive on that place where I start to really think about art and the tools that I use to make it. it really does put me in a mood. why spend time thinking about how I do things when I could be using that same time to do it? I suppose that’s just part of the creative process. or at least my creative process.

so I think about it.

I think about how I work. the tools I choose. the method. when I have an inkling of an idea, where do I start to realize it? the sad truth is that I sometimes let my instrument lead me.

I always thought that one of my greatest strengths as a student composer was that I was a horrible pianist. I spent a lot of time in front of a baby grand pounding out all manner of sonorities with none of the prejudice of a skilled performer pouring forth from my fingers. as any of my poor former teachers (those patient and wonderful artists!) would point out, my hands just didn’t get it. I was not predisposed to any of the shapes that sometimes lead to predictable sounds. this is precisely why I never compose for the guitar with it in my lap. it’s too easy to let my hands lead. but what does one do when the medium, the instrument, and the performer is a computer?

I have been playing around with data structures in pure data. there are a few papers out there and I would send anyone interested in the topic either to wikipedia (http://en.wikipedia.org/wiki/Pure_Data) or to frank barknect’s paper found here: http://lac.zkm.de/2006/papers/lac2006_frank_barknecht.pdf. one might also look up references to hans-christoph steiner’s work “solitude.”

I tend to work in a determinate fashion with my computer music. I may set up some scenarios where chance is involved, but I usually like to know what i’m going to get when I set one of my creations in motion (think of a music box that winds up or down at random but still plays a set tune). maybe not to the specificity of a midi file, but perhaps with the same level of certainty I have when I present a human performer with a traditional score. I know that there will be some interpretation, but I can rely on certain elements occurring in a particular fashion and order. staccato is staccato, forte is forte, and this pitches will come in the order specified (if it is specified). and it’s this desire for some form of control over the output that interested me in the data structures. this desire to encode my intentions led down quite an interesting path.

when I started playing around with the data structures, I tried to create a piano roll interface. I quickly lost interest in this when I studied the score for the aforementioned “solitude” and the pure data documentation. there is more to life than lines and rectangles. there are points! and colors! and slopes! and did I say colors?

colors. what a brilliant idea! I started immediately to encode data by color. I could set the color of lines and points. each would trigger some sort of change in the instrument. it was like marking dynamics or articulation. but it started me thinking: do the colors matter?

I caught myself doing something silly: I made a chart of colors and what they “mean.” then I wrote a patch that translated the colors into numbers that I could use to manipulate voices or sound files. i’m not sure how it dawned on me, but it eventually did: the computer doesn’t care. 900 isn’t “red.” 900 is 900. an integer. a simple number. 9 isn’t “blue.” it’s 9. nine. 5 + 4. 10 – 1. all the same.

but something in me cared. i’m not reading the score. i’m not interpreting it. i’m using it to program a sequence of events. as long as my LFO changes at that point in time to 9 Hz, I should be happy. yet i’m not. I want blue to signify something. I want it to mean that the vibrato is going to decrease. that the sound is going to become more placid. that tranquility is spreading across my piece like the brilliant western sky.

nevertheless, all pure data gets out of it is 9.

when I set up an interface like this, when I start to encode sounds in lines and colors and shapes, am I losing some of the intellectual control over the sound and giving in to an instinct that may lead me toward a score that looks attractive instead of a sound that is? after all, the listener will likely never see the score. and there is no way to interpret the score outside of the patch. blue only means 9 Hz in this specific patch. there is no standard application for blue. perhaps if I were to codify my use of symbols…but that sounds like an awful lot of work.

I think that most users of pure data will agree that though there are times when things can be reused it is more often the case that a patch is used for a particular piece and that is the end of it. in a strange way, each patch becomes a unique endeavor and is almost a work of art in itself. and not in the “is-programming-art-?-(no,-it’s-not)-slashdot-wank-fest” way either. it’s the encoding of a process that leads to an end in a very particular fashion. it’s a process of discovery and when one is open to it, it can lead to unforeseen and incredible results. and I wonder if that’s where my experiments with these data structures will take me.

and I wonder what the practical implications of encoding data this way might be. it’s likely not the most efficient way to encode the data, but it might be the fastest way to alter it. maybe that will turn out to be the genius of it. perhaps it will prove to be most useful in the fine tuning of a composition and the easiest way to avoid messy text files, etc for storing performance data.

more on this after further experimentation.

GarageBand as sketch pad

when i got my first laptop (a brick made by “twinhead” back in 1996) my dream was to be able to have a mobile studio. the kind of thing i could open up and just dive into. i had visions of realtime synthesis, recording, non-destructive editing and controlling midi devices. but at that time, it was difficult to get midi to sync over the serial bus as it was quite flakey. i needed to tweak IRQs and all that jazz. and windows 3.1 (i always thought 95 was crap!) wasn’t exactly overflowing with cool software. and audio interfaces? um. well, there was the minijack that went into some 16 bit thingy, but…

over the years my dream waxed and waned. then i got my powerbook. everything changed. i could do everything that i wanted to do on the go. my studio was anywhere with an outlet and some headphones. i had to bust my butt to get free software to work on it, but it was worth it. puredata was my miracle application. and it helped me make music for a long time.

but as time passed, i realized that i wanted something more integrated. i wanted to be a lazy user. i wanted to open up my laptop and start composing or mixing as easily as i would browse the web or send email. for the longest time i equated my desire with laziness. and then i realized that i was spending more time minding, researching and building tools than i was actually making music. and the bottom line is: that sucks.

my music requires tools. most art does. tools need to be maintained. they should be examined. workflows should be analyzed and adjusted from time to time. but tools should never come between the creator and the creation of new work.

as i stewed over this for about two weeks, i began to wake up to the fact that what i needed to get started on my latest project was something with a simple piano roll editor and the ability to run audio files along with it. the catch? i didn’t want to spend $700 to get it. i tried intuem with sketchy results. basically, i think it hates camel audio’s cameleon 5000 which is my AU synth of choice right now. i got random crashes, hangs on freezing audio, etc. i’m pretty sure, after an analysis of the crash logs, that it’s a disagreement between the sequencer and the AU that results in me losing all of my work with no crash recovery. so that didn’t work out. and that’s a shame because intuem is pretty tasty stuff. i’ll keep an eye on it though. and if cameleon gets updated, i’ll try it again. after all, i paid for it.

then i tried running a debian vm in parallels on my macbook. um. no. that got me MusE running on my macbook (which if i’m going to be honest is REALLY what i want) but it wasn’t stable, didn’t use my AU stuff and wasn’t the integrated “open and go” that i need to be productive. and bootcamp? no thanks. i don’t reboot on purpose.

i hacked up some things in puredata and almost went so far as to learn the GEM extensions to see what i could do with an interface there. i quickly assessed that as three weeks of coding and not really arriving at what i wanted. i searched the free applications and found some things here and there but nothing that really did what i wanted it to do. i thought my list of features was pretty simple. so easy, in fact, that i opened Xcode.

and then i closed Xcode.

finally, i did what i didn’t want to do: i opened GarageBand.

the iLife suite is amazing. i don’t think that one could spill enough ink about the coolness that things like iPhoto, iMovie and iDVD have brought to the table. it lets a moron like me take the red eye out of a photo without having to think about it. i can whip up a movie out of a set of stills and fool my family and friends into thinking that i have a gift for the visual arts. it has everything i could need to use my computer for what i want to do. it was even pre-installed on my machine. and that’s why i fear GarageBand. i’m afraid that it has the potential to be a creative crutch.

why don’t art photographers use point and shoot, autofocus cameras? because they rely on their tools for their art and they want control the results. and that’s why i stayed away from GarageBand for as long as i did. i was afraid of the loops and the auto-this and auto-that that might be buried in there were just waiting to take over my work and make me sound like every other mac nut who popped open iLife and built a “multimedia experience.”

but it wasn’t like that at all. i don’t use loops, so i didn’t bother with that. for people who want to do that sort of thing it’s there, though certainly not required. the piano roll editor does what i want it to do, though it’s lacking in some parameter controls that i’d like to see. it handles audio like a dream and is a rock solid AU host. and as for opening my macbook and getting to work? it’s never been easier and i’ve never been more productive. three songs in one week can’t be wrong!

the evil of it lies in the fact that i have to work in 44.1 kHz 16 bit format and can only export to m4a. but the billions of tools that i have lying around my HD can take care of some of that for me. i can even dump the output into ardour for further tweaking, though that hasn’t been my way of using GarageBand yet.

i’m treating it like a sketchpad. i can pop it open any time i like and be as detailed or abstract as i want. i can test out arrangements and mix things up for my ipod in minutes. and it makes my lunch hour incredibly productive. for a “serious” musician who has been conditioned to do things the hard and disciplined way, it makes getting things done even more efficient because all of the pre-thinking that was once done before using an environment like puredata or other more intense toolchains is coupled with an interface that makes executing those plans more like a gesture and less like programming.

this should not be underrated.

and it doesn’t mean that GarageBand, or any other piece of software i’ve met, is magic. it has a niche in my creative process where it really shines. i’m still looking, but not as feverishly as before. i have a tool that i can use to capture my ideas. i can use my myriad of other more sophisticated and nuanced tools later. but for a rough cut or sketch? GarageBand is a killer app.

thoughts on a free digital audio workstation

a recent thread on the LAU list got me thinking. there were some posts to different blogs along the lines of “gnome and kde are dying!” “linux on the desktop is dead!” “nothing is moving anymore!” this was brought up as off-topic on LAU and folks started to weigh in on what the slowing of development on GTK+ and all that meant for the desktop experience on gnu/linux and the odds of us ever having an audio distro that works “out of the box.”

i should pause for a second and qualify some things. first off, i’ve been a professional windows programmer for just over 10 years now. i’ve been running debian gnu/linux since 1998 or so and i’ve had a powerbook with os x for around 3 years. i use what works for what i need to have done. and i’m not looking for some kind of “experience.” my computers are tools and i expect them to perform given tasks efficiently and reliably, but not without some level of expertise on my part. simply picking up an instrument doesn’t make one a musician, right?

and that’s where our first and most destructive assumption about any kind of audio appication on any platform enters. if i were to plop “joe geetar” in front of a 64 channel mixer and a DAT recorder would he expect to be able to push a button and start recording his album? i doubt it. but because joe can check his email and type up his resume should he assume that he can now click a button on his computer screen and master an album? that’s quite a leap. why? because checking email and recording a song are two entirely different processes requiring entirely different knowledge bases and having enitrely different system requirements.

i understand that the majority of folks are looking to walk up to a computer, open an app, point something at a microphone and record for a bit. that’s great! and that SHOULD be a safe assumption. it’s certainly an assumption one can make with garageband on any os x box. but i’m talking about “state of the art” level audio work. to me this means: low latency multi-track recording with non-destructive editing and the maximum amount of digital magic that can be forced into an application and run comfortably on a modern (2 year old) piece of hardware.

someone who is serious about using a digital audio workstation (DAW) knows that the more a user wants from an application, the more the application wants from its environment. if one desires low latency recording, one needs to be sure that the given hardware can handle it. an onboard sound chip and an off-the-shelf harddisk with the system and audio data stored on it won’t handle that (in most situations). an experienced DAW user
would expect that on any platform. that user would also know all about the performance of disks, how to partition them, what filesystems to use and how to configure the OS to maximize performance. and that’s on any platform. that user will also know that audio hardware is key. superior converters with onboard dsp means that there is more room to move on the system. more RAM helps as well. the user would know that having two browsers, an email client and four IM conversations open while trying to record or edit could damage performance.

but how would this user know all of these things? because anyone who is serious about working with digital audio will take the time to do a little research regardless of platform or software package preferences. the would be engineer who runs out and buys whatever is on the shelf at the local music barn is courting disaster and will get exactly what is deserved. think about it, a musician doesn’t simply buy any guitar. she buys the guitar that sounds and feels the best for her for the money she can afford spend. why should a DAW be any different?

it’s not.

i understand that learning the internals of a kernel and figuring out how to patch and recompile is an enormous roadblock. but that’s clear now from what i can tell. it’s easy to get a distro installed and have jack up and running with ardour in an afternoon (likely the same amount of time it takes to install windows and crack the light version of protools that was “borrowed” from a friend). with debian, it’s an apt-get away. maybe it’s my conservatory training talking here but nothing that produces worthwhile results is ever easy. practicing is never easy. learning a new instrument isn’t a simple affair. getting that first gig or finding a well suited collaborator doesn’t usually just happen. it’s work!

i’m not naive. i understand that we expect our computers to do more than one thing. we want a machine that will meet our DAW needs and still check email, browse the web, edit documents, layout flyers and keep our
finances. it would be pretty sweet if copy and paste worked across applications too. and if we could expect the desktop to behave the same way in all environments that’d be keen. these are all excellent goals and in most respects total no-brainers. that said, anyone who is serious about recording will likely be willing to give a little to gain a lot in terms of achieving his goals. when automating mixes in ardour using my midi faderbox of choice i seldom find myself wishing that i had a weather widget on my task bar.

there will be those who will say that simply going to os x or windows will solve those issues and that a user can have it all right out of the box, but that’s not true. after the amount of cash that gets laid out there is still a pile of configuration and tweaking to be done. the hurdles have different names, but they still exist. getting results requires education and work.

at the end of the day, someone who is serious about using a computer for something like digital audio needs to do some research and become educated in the use of the tool that she is trying to acquire. this is true of most things in the world and i’m not sure why computers and software are supposed to be exempt.