Wednesday, February 28, 2007

GDAM

GDAM is audio software I've been developing for almost a decade, and provides the foundation for a lot of my experiments in audio and control.

Dave Benson, a brilliant fellow who had ten times my programming experience, started the project with me around 1997. It began as an engine for crossfading playlists controlled by clients across the network, but very soon grew to encompass live mixing. The early GUI was written in JAVA, this was rewritten in GTK in 1998.

When we started, there weren't many options for digital DJ mixing software... if I recall, VTT by carrot interactive, virtual 1200s, maybe an early version of PCDJ. Early DJ software was either winamp with crossfades, or an attempt to clone vinyl turntables or CD decks. The field was young, there wasn't existing software to learn from, these were the first attempts. There was TerminatorX on linux, focused on scratching, but nothing which really treated the problem in terms of manipulating audio files with rhythmic content.

Although I had a turntable and sample, beat, and hip-hop records, I didn't have a large body of experience tied to the turntable interface. I wanted a tool geared towards arranging and presenting a mix of digital music files.

By 1999 we had a tool with a database of beatmaps for song files, sample-accurate beatmatching, and different techniques for arranging song files in real time. A number of GDAM's groundbreaking features have made their way into modern apps, but many still seem to be unique to GDAM.

At first we talked about "going beta" and the version number crept to 0.9, 0.912, 0.945... I think we were both interested in working on it for our own reasons, and didn't focus the effort on a single bugfree release with all the niceties of a finished product. GDAM is available in projects such as planetCCRMA and on bootable discs such as dynebolic. I've kept extending GDAM to accomodate my experiments and music projects. Although I haven't made a tarball release in years, I still commit new features to CVS and it keeps getting more powerful. There was an OSX version for a while, but as OSX grew from 10.0 to 10.1 and later versions, every minor update was breaking the install and I didn't feel it was worth the effort to keep up. Lately, GTK-based apps such as ARDOUR have been ported to native OSX versions, so an OSX install may be easy in the near future. I do still have instructions for compiling on OSX for the brave ones willing to type in terminal, these worked at least as recently as OSX 10.4.

Other posts detailing aspects of GDAM:
Beatmatching
Time Access

No comments: