OS X Usage

For the OS X package, a double-clickable application is provided that starts the GUI and and engine for you. Before starting the SooperLooper application, be sure to start the JACK system using the JackPilot application that came with JACK-OSX. You need to explicitly press the Start button after launching JackPilot. Then use the Routing features of JackPilot to connect the inputs and outputs of SooperLooper to the desired places. Click on the source, double-click on the destination. Read JACK's documentation PDF for all the details on the flexibility of its inter-application routing system. Also note that AU and VST insert plugins are available to route JACK audio from within other apps as well.

To connect your MIDI device, you need to use a MIDI patchbay such as the one found here.

AudioUnit Plugin

The AudioUnit plugin SooperLooperAU is a Music Effect type plugin, which means that it accepts both audio and midi input and output. Some plugin hosts do not handle this properly. For instance Garageband does not allow you to send midi events into the plugin for control. Ableton Live does, and allows you to patch the audio inputs as sidechains from other Audio Tracks and choose In monitoring on that audio track. You can route MIDI to the SL plugin on an audio track from a separate MIDI Track (be sure to use In monitoring for midi too).

IMPORTANT NOTE: You do not need to run JACK when using the AU plugin in a host. You still can, however, to take advantage of JACK's inter-application routing capabilities among your other audio applications.

Use the Add and Remove Loop menu items from the Session menu to control the loop count. Note that the default maximum loop memory per loop is around 40 seconds, so you might want to use the Add Custom Loop GUI command to choose the maximum time used per channel of each loop. Don't use too large a number if your RAM is limited, your system can slow down to a crawl.

Linux Usage

Assuming the software is already installed (see Download page for details), you must first start the JACK audio server. Please see the JACK documentation for details.

Run the following in a terminal (or by running it from an application menu or icon):

slgui &
to start the GUI, which will also start an engine in the background. If there is already an engine running at the default port on the local machine, it will connect to this one. Note that the GUI has two Quit commands, one of which will not stop the engine. The audio ports may now be connected with your favorite JACK patchbay.

Use the Add and Remove Loop menu items to control the loop count. Note that the default maximum loop memory is around 40 seconds, so you might want to either use the -t engine command line option or the Add Custom Loop GUI command to choose the maximum time used per channel of each loop.


Alternatively you can run the engine separately, if not in a graphical setting, or in a headless computer system.

sooperlooper &

See the MIDI control section for specifying MIDI bindings that allow you to control the looper. Command line options are listed below.

Command Line Options

GUI options
Usage: slgui [-h] [-V] [-l ] [-c ] [-t ] [-H ]
             [-P ] [-m ] [-s] [-N] [-E ] [-J ] [-S ]
  -h, --help                    show this help
  -V, --version                 show version only
  -l, --loopcount=         number of loopers to create (default is 1)
  -c, --channels=          channel count for each looper (default is 2)
  -t, --looptime=          number of seconds of loop memory per channel
  -H, --connect-host=      connect to sooperlooper engine on given host (default is localhost)
  -P, --connect-port=      connect to sooperlooper engine on given port (default is 9951)
  -m, --load-midi-binding= loads midi binding from file
  -s, --force-spawn             force the execution of a new engine
  -N, --never-spawn             never start a new engine
  -E, --exec-name=         use name as binary to execute as sooperlooper
					     engine (default is sooperlooper)
  -J, --jack-name=         jack client name, default is sooperlooper
  -S, --jack-server-name=  specify JACK server name

Engine options

Usage: sooperlooper [options...]
Options:
  -l  , --loopcount= number of loopers to create (default is 1)
  -c  , --channels=  channel count for each looper (default is 2)
  -t  , --looptime=  number of seconds of loop memory per channel
			           (default is 40), at least
  -L  , --load-session= load initial session from pathname			
  -D , --discrete-io=[yes]  initial loops should have discrete input and
			            output ports (default yes)
  -p  , --osc-port=  udp port number for OSC server (default is 9951)
  -j  , --jack-name= jack client name, default is sooperlooper_1
  -S  , --jack-server-name= specify jack server name
  -m  , --load-midi-binding= loads midi binding from file or preset
  -q , --quiet                 do not output status to stderr
  -h , --help                  this usage output
  -V , --version               show version only