radarsat1 / LoopDub

A cross-platform audio application for live loop manipulation.

This URL has Read+Write access

README
** Welcome to LoopDub **

** For instructions on usage, see docs/index.html
** Please read INSTALL for instructions on compiling, installing and running.

LoopDub is a program for turning your computer into a live sampler
for performing electronic music.  It has been developed with three
ideas in mind:
- simplicity
- directness
- transparency

  For usual software applications like writing documents or programming, it
is very convenient to have a lot of functionality enabled through menus
and right-click context functions and customizable interfaces.  However,
to use your computer as a musical instrument, it is not necessarily
desirable to have three or four mouse clicks interjected between wanting
to perform and action and being able to carry it out.  Thus, the LoopDub
interface is designed to be very SIMPLE, and DIRECT.  Each loop is exactly
the same, and they are limited to only eight.  The buttons are always in the
same place, and the mouse actions always do what you expect.

  After using it for a few hours, you will find that the interface blends very
well with what you are doing, and because it is so simply, you will almost
forget the interface is even there.  This is what I call TRANSPARENCY.  You
will, if I have achieved my goal, feel like you are no longer using "an
application" to create music, but that you are "playing" your computer, just
as someone plays a guitar or keyboard.  An experienced guitarist achieves a
certain state where he no longer thinks about the strings and where to put
his fingers... he merely thinks of the notes that he wants to hear and they
resonate from the strings automatically.  The goal of loopdub is to use
directness to create as little interference between the musician and the
sound as possible.

  Also, music software should bear as little influence as possible on the final
outcome.  Now, obviously, as loop-oriented sampling software, anything
performed with LoopDub is going to sound... loopy.  But since it uses standard
.wav files and gives no restrictions on loop size and what can be done with
them, it is hoped that the interface will not influence the style of music
performed, within the target genre.  Any kind of electronic music oriented
around the loop, such as techno, house, or whatever, could use LoopDub for a
performance, and you should not really be able to tell they are using it.


Why I wrote LoopDub
-------------------

  I was using various tracker programs for writing music, but I found that none
of them was very good for actually playing this music in front of a crowd.
That is, there was not much to be done "live".  I would stand there with two
computers and mix my FastTracker files using a DJ mixer, using the speed
controls in Impulse Tracker to keep things on beat.  Then I finally wrote
some software that automatically did the beat matching, which was nice because
I could concentrate on being dynamic and also I could use a small laptop 
instead of lugging around two computers.  But it still felt a little dry,
because I was playing pre-made and pre-sequenced tracks.  I wanted something
that would let me just jam random loops together, without needing them to be
already sequenced into a track.

  LoopDub works very nicely for me, because I just have to create a bank of
loops and then I can make up a whole new set on the spot.  I can play the
drumline of one track with the bass of another, dropping a vocoder and synth
from another.  It's lots of fun, and I've used it a few times in front of
crowds.  I feel a lot more like I'm actually doing something on the stage,
which is far more satisfying than just hitting play on track after track.

  There is other software intended for this purpose, such as Ableton Live!, and
no doubt that you could use sequencers such as Acid Pro or even Cubase in a
dynamic and live kind of way, but I wanted something designed from scratch,
and it's been fun to design, and having it specifically oriented around live
performances has allowed me to customize certain useful features to do what
I need.  (Such as the "wait for next bar" feature, incredibly useful!)

  Besides, I really felt compelled to contribute an application to the open-
source world, since I have gained so much from it myself, and music software
is an area where I felt 1. I have a great interest and 2. there is not a lot
of quality software compared to how much there is for Windows and OS X.
(Of course there IS _some_ quality audio software, but not a lot.)  I'd really
like to see audio take off on Linux, and hopefully my small contributions can
help in some way.

  That said, this software was designed using cross-platform libraries, and as
such I would like to encourage everyone to start designing their applications
to run on any platform.  I believe there are enough solutions out there at
present for GUI, audio, and many other areas that are cross-platform
compatible.  We should no longer be letting any operating system push itself
on the application world.  The OS should be an independant entity, that can
be switched without seriously affecting the productivity of the end user.
Only when this is the case will it be possible for people to finally realize
that there's no reason for them to be using proprietary software and standards.

  It is currently Linux-only, but because I used PortAudio, PortMidi and SDL
for sound and graphics support, it should only take a few tweaks to get it
working in Windows, which I will do as soon as possible.  I would port it to
OS X as well, but I don't have a Mac!  (Actually its possible it works in
other Unix environments, but I haven't tested anything but Linux.)

  There are MANY many more things I could add or need to fix.  See the TODO
file for some examples.  It is definitely not an exhaustive list, as I keep
thinking of ideas and forgetting to add them. ;-)  But since I am currently
using this software for my own live sets, it's in my interest at the moment
to keep actively developing it.  However, I certainly would welcome
contributions on code, or ideas.  Or a new logo. :)

  LoopDub is distributed under the GPL.  See LICENSE for info.

For help, comments, or suggestions, please contact me.

Stephen Sinclair
radarsat1@gmail.com