A new strain has escaped from the laboratory, and is threatening to decimate mankind (or gigging musicians at least). This version is capable of extreme mutation. Due to a process known as "a window layout", it can completely change its appearance. Every graphical control can be individually added, removed, moved, and sized. You can arrange numerous controls on a "panel", which flips in and out of view with a mouse click or shift-tab. You can have as many panels as you want, and give them names. You can add your own text annotations anywhere in the window/panels. Read about this strange malady in the new document in Docs/window_layout.htm.

Create your own custom interface. Get rid of what you don't need. Arrange what you need for max ease-of-use. Then report back here your impressions, so I can evaluate my design decisions vis-a-vis simplicity versus versatility, etc.

But wait. If you order now, you'll receive a bonus level of customization, the BackupBand Source Code Configuration tool. For those who want to compile BackupBand, this tool allows you to easily customize BackupBand by choosing which features you want or don't want compiled in the binary executable itself. The tool then modifies the source code to compile only those features you want. This creates a version of BackupBand that is leaner, faster, and easier for you to use. You need to run this tool once only to customize BackupBand's source code. Every time you compile the source, you'll automatically get your custom binary version. If you update to the latest source code, your customization will automatically be applied to the new version.

If you later decide you'd like to restore a feature that you have removed, simply run the tool again to enable that feature.

To run the tool, open a terminal in the BackupBand folder (where the Makefile is) and type:


Then just follow the instructions.

p.s. Gordon, the strlen() problem should be fixed.

The new "Output Busses" feature is done and successfully tested with LinuxSampler replacing BackupBand's sound engine (Internal Synth). But i haven't had time to write up the tutorial yet. In a nutshell:

Go to BackupBand's Setup -> General screen. There you'll see 5 buttons representing 5 "Out" busses. The are labeled "Internal Synth", "MIDI Out 1", "MIDI Out 2", "MIDI Out 3", and "MIDI Out 4".

Internal Synth is BackupBand's built-in sampler. Click the button to bring up its routing. Under "Enable", click "Off". The builtin sampler is now offline. Click the "Ok" button to go back to the General settings.

You've got 4 midi out busses. To each midi out buss, you can attach one standalone softsynth (like QSampler), or one plugin host (like carla), or one external midi hardware synth.

Click the MIDI Out 1 button. Under "Enable", click "On". Click on "Other software" which means you're going to connect some other software to BackupBand (as opposed to external hardware). Click "Ok".

Go to BackupBand's Setup -> Accompaniment screen. You'll see that the drummer, bassist, guitarist, and background player are all currently set to use the Internal Synth. Change each robot musician so that he's going to instead use "MIDI Out 1".

Now run QSampler or Carla. Load a bass guitar sfz or plugin and set it to midi channel 2. Load a guitar sfz or plugin and set it to midi channel 3. Load a GM drmkit sfz or plugin and set it to midi channel 10. Load a violin, brass, or organ sfz or plugin and set it to midi channel 4.

Run QJackCtl, and under Connections -> Alsa, connect BackupBand's "MIDI Out 1" to LinuxSampler's or Carla's midi in. If using LinuxSampler, also flip to the JACK connections, and connect LinuxSampler to your system's (audio) out.

And finally, there's a brief tutorial Docs/make_a_kit.htm that explains how to make a drum kit for BackupBand's internal sampler. So if you want to play with that, it's there. I'll be adding more tutorials for adding bass, guitar, and other instruments.