JAMIN(1)

NAME
jamin - JACK Audio Mastering interface

SYNOPSIS
jamin [ options ] [ inport1 inport2 [ outport1 outport2 ]]

jamin-scene <scene-num>

DESCRIPTION
The jamin command invokes JAMin, the JACK Audio Mastering interface which is based on the JACK Audio Connection Kit, <http://jackit.sourceforge.net>.

JAMin is designed for professional stereo audio mastering. It provides of a number of tools: a 1024-band hand-drawn EQ with parametric controls, a 31-band graphic EQ, 3-band compressor, 3-band stereo width control, lookahead limiter, boost, and other features.

For the latest JAMin information, see <http://jamin.sourceforge.net>.

OPTIONS

-f filename
    Load session file filename on startup. If no session file is specified, JAMin loads "~/.jamin/default.jam" if that exists, or else uses some system-provided default settings.

-h
    Print a brief usage message describing the main jamin options, including some developer options not intended for normal users.

-j servername
    Connect to JACK server servername. Otherwise, use the default server.

-n clientname
    Set JACK clientname used to identify input and output ports. Otherwise, use "jamin".

-s frequency
    Set the spectrum update frequency (per second). The range is 1 to 10 with 10 as the default. Set to 0 to disable spectrum update.

-c time
    Set the crossfade time in seconds. The range is 0.0 to 2.0 with 1.0 as the default. WARNING: fast crossfade times in combination with large jack buffer sizes may introduce zipper noise to some signals (especially sustained sounds in the bass range).

-p
    Don't automatically connect any JACK output ports.

    Without this option, JAMin will connect to outport1 and outport2 if they were explicitly listed on the command line. If not, it connects to the first two physical output ports with the string ":playback" in their names.

-i
    Use IIR type crossover instead of the default FFT type crossover. The IIR crossover is less CPU intensive but the FFT crossover will give better results (YMMV).

-l
    Set to 0 to use Steve Harris' fast-lookahead-limiter or 1 for Sampo Savolainen's foo-limiter. At this time there is a problem with the foo-limiter if you push the input too hard.

-r
    Load GTK resource information from an example JAMin resource file. If the -r option is not specified, look for a user-defined resource file in ~/.jamin/jamin_ui. Otherwise, use the system-wide GTK settings.

-v
    Print verbose output. Use -vv or -vvv for more detail.

-V  Print version and copyright information, then quit.

FILES

~/.jamin
    Directory containing per-user JAMin data. Created automatically if it does not already exist.

~/.jamin/jamin_ui
    Default resource file for GTK user interface customization, used when the -r command option is not specified. JAMin provides a default resource file in ${prefix}/share/jamin/examples/jamin_ui. To customize that file, copy it to ~/.jamin/jamin_ui and make changes.

~/.jamin/*.jam
    Normal location for user-defined session files. They can be stored elsewhere, if desired.

~/.jamin/default.jam
    If this session file exists, it is loaded by default on startup, except when overridden by the -f option.

IPC

If JAMin has been built with OSC support enabled it responds to UDP OSC messages on port 4444.

Messages to /jamin/scene with a numerical argument cause the scene number to change. A commaind line tool (jamin-scene) and LADSPA Plugin (jamin_cont, ID:1912) are provided for remote scene changes.

EXAMPLES

Since jamin is not a standalone program we generally need other programs to provide input audio and receive the mastered output. This example uses alsaplayer with output going to the first two ALSA playback ports:

    jackd -R -d alsa -p 2048 -r 44100 &
    alsaplayer -o jack -s src -d noconnect song.wav &
    jamin src:out_1 src:out_2

That was the brute force method. It is much easier to have qjackctl start the JACK server and handle its connections. After the server is running, start jackplayer and jamin. The "transport" option tells jackplayer (an alsaplayer alias) to start and stop under JACK transport control.

    qjackctl &
    jackplayer -d noconnect/transport song.wav &
    jamin

Any JACK-aware player such as rezound, ecasound or ecamegapedal can be used, instead.

A more advanced technique uses ardour for both the source and destination. In ardour, run all of your track outputs into a stereo bus, connect its output ports to JAMin, then run the JAMin outputs back into a record-enabled stereo track. This allows mixing and mastering at the same time. If JAMin is already running when ardour reopens the session, it will automatically reconnect all these ports.

    qjackctl &
    jamin &
    ardour

SEE ALSO:
<http://jamin.sourceforge.net>
<http://www.alsa-project.org>
<http://jackaudio.org>
<http://qjackctl.sourceforge.net>
<http://www.suse.de/~mana/jack.html>
<http://alsaplayer.sourceforge.net>
<http://www.ardour.org>
<http://rezound.sourceforge.net>
jackd(1)
alsaplayer(1)
ardour(1)

BUGS
Please send bug reports to <jamin-devel@lists.sourceforge.net>.

AUTHORS
Steve Harris is the principal JAMin author and team leader. Other developers include: Jan Depner, Jack O'Quin, Ron Parker, Emmanuel Saracco, and Patrick Shirkey. Alexandre Prokoudine and Yuri N. Sedunov developed the translation infrastructure. Alexandre also translated JAMin into Russian and is our (really good) web engineer.