Re: [linux-audio-dev] ableton live

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] ableton live
From: Lance Blisters (geoff_AT_lek.ugcs.caltech.edu)
Date: Fri Jul 04 2003 - 22:11:44 EEST


i develop gdam (gdam.ffem.org) which is about halfway between
traktor and live. it's focus is dj mixing / live performance,
although there is some synthesis and sequencing as well. like live,
it keeps a database of songs, tempos, and other information; it has
a "beat calculator" which shows beat markers over a waveform display;
it can automatically align tracks by this beat information; it can
timestretch and transpose. in fact, the more i learn about live the
more similar it seems to what gdam has been doing.

gdam can: play many tracks at once, supports wav aif mp3 ogg flac
etc, any number of filters on each track, reorder filters without
disrupting sounds, etc.

hardware controllers include midi, joysticks, dancepad, "dj man"
toy turntable, "thin air" interface based on ultrasonic rangefinders,
any usb human interface device, etc. hardware control over almost
everything, and an xml spec for writing "binding files" to accomplish
complex macros and presets via any hardware controller.

lots of great audio effects, the ability to perform multiple actions
(start, stop, mute, switch loop, set filter params etc) with the mouse but
trigger them all at the same instant, a flexible system for graphical
skins, an OSX port, and tons of other features.

gdam has 90% of the audio capabilities required for live-alike,
maybe 100%. what is missing is primarily a compact graphical interface,
geared towards a simple mix-and-match of locked loops.

i spent a little time working on a live-style skin. it supports six
channels at a time (multiple windows for 12 18 24 etc) you can start
different channels in and out of phase, control multiple channels as
if they were one (a "transport bus" lets user specify which channels
are tied to the transport), solo and mute, switch samples cleanly
within a channel, switch multiple channels at once, each channel has
an effect stack, send any channel to headphones vs room, etc.

if you work from gdam, you can get most of live's features
by simply creating a custom skin which is compact and clean.
there are a few limitations which require a little c programming;
such as a tiny drift when swapping loops of different original
tempos within the same channel. every shortcoming i've come across
has been straightforward to fix, i just haven't gotten to all of
them myself.

if you are interested, browse the website and ask me questions. i can
describe in more detail how our skin system works. the latest linux
release of gdam is a bit old, but the CVS version has the "turntable array"
skin which offers much of live's functionality without the nice layout.

finally, think long and hard and repeatedly before starting a new
project. whether or not you work with gdam, it is often much much much
better to start from an established project rather than create your own.
many one-person projects fail to meet their goals, there are dozens
(hundreds?) of half-finished open-source audio apps. finding other people
to work on your project can be difficult, especially if it is a new one;
people like to start their own projects, and if you don't have an established
code base they don't see any reason to work with you versus on their own.
many projects end up requiring more time than expected just to get
something useful running, much less feature complete. try to find
an established project and improve it to do what you need. if not
gdam, perhaps you could build something on top of puredata or
some other existing app. working from the right app, not only is much
of your required functionality already in place, but chances are there
is lots of other funtionality you can incorporate to improve on live
rather than spending your time catching up to it; for instance, live
has one window and you can only run one instance. built on puredata
or gdam, your live-alike would be one window, you could create multiple
instances, run alongside other pd/gdam skins and tools, etc.

  -geoff


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Fri Jul 04 2003 - 22:23:40 EEST