jackd (1)





NAME

       jackd, jackstart - JACK Audio Connection Kit sound server


SYNOPSYS

       jackd [  options  ]  -d  driver [ driver options  ]
       jackstart [  options  ]  -d  driver [ driver options  ]
       jackd --help


DESCRIPTION

       jackd invokes the JACK audio server daemon.  When using JACK's built-in
       support for realtime capabilities, use the jackstart command,  instead.
       All options are the same.

       JACK  is  a  low-latency  audio  server,  originally  written  for  the
       GNU/Linux operating system.  It can connect a number of different  JACK
       client  applications  to an audio device, and also to each other.  Most
       clients are external, running in their own processes as normal applica-
       tions.  JACK also supports internal clients, which run within the jackd
       process using a loadable "plugin" interface.

       JACK differs from other audio servers in being designed from the ground
       up  for  professional  audio  work.   It focuses on two key areas: syn-
       chronous execution of all clients, and low latency operation.

       For  the  latest  JACK  information,  please  consult  the  web   site,
       <http://jackit.sourceforge.net>.


OPTIONS

       -h, --help
              Print  a  brief usage message describing the main jackd options.
              These do not include driver options, which  are  obtained  using
              the --help option for that specific driver, instead.

       -a, --asio
              Force  absolute  realtime  behaviour on the system.  Rather than
              allowing clients to take a time determined by the  kernel,  they
              are  determined  to have timed out on receipt of the next inter-
              rupt from the audio interface.  This only makes sense when  used
              with  an  ASIO-style configuration where there are 2 periods per
              buffer (see --nperiods).  It is safe to omit this parameter,  if
              you  don't  need  to  enforce strict realtime limits.  It can be
              useful for testing the realtime behavior of a new JACK  clients.

       -t, --timeout int
              Set  client  timeout  limit in microseconds.  The default is 500
              msec when not in realtime mode (see: -R).

       -R, --realtime
              Use realtime scheduling.   This  is  needed  for  reliable  low-
              latency  performance.   It  requires  jackd  to run with special
              scheduler  and  memory  allocation  privileges,  which  may   be
              obtained  in  two  ways.   The first method is to run jackd with
              root privileges, which means that all JACK clients must also run
              as  root.  The second method requires a kernel with "POSIX draft
              capabilities"  enabled  (see  the  <linux/capability.h>  include

       -v, --verbose
              Give verbose output.

       -V, --version
              Print the current JACK version number and exit.

       -d, --driver  driver  [  driver-options  ]
              Select the output driver.  The only driver currently  documented
              is alsa (see below).

   ALSA DRIVER OPTIONS
       -h, --help Print a brief usage message describing only the
              alsa driver options.

       -d, --device name
              The ALSA pcm device name to use ("default" if none specified).

       -r, --rate int
              Specify the sample rate.  The default is 48000.

       -p, --period int
              Specify  the number of frames between JACK process() calls.  The
              default is 1024.  If you need low latency, set -p as low as  you
              can go without seeing xruns.  A larger period size yields higher
              latency, but makes xruns less likely.

       -n, --nperiods int
              Specify the number of  periods  in  the  hardware  buffer.   The
              default  is 2.  The period size (-p) times --nperiods times four
              is the JACK buffer size in bytes.

       -D, --duplex
              Provide both capture and playback ports (the default).

       -C, --capture
              Provide only capture ports.

       -P, --playback
              Provide only playback ports.

       -H, --hwmon
              Enable hardware monitoring of capture ports.  This is  a  method
              for  obtaining  "zero  latency"  monitoring  of audio input.  It
              requires support in hardware and from the underlying ALSA device
              driver.

              When  enabled,  requests to monitor capture ports will be satis-
              fied by creating a direct signal path  between  audio  interface
              input and output connectors, with no processing by the host com-
              puter at all.  This offers the lowest possible latency  for  the
              monitored signal.

              Presently (March 2003), only the RME Hammerfall series and cards
              based on the ICE1712 chipset (M-Audio  Delta  series,  Terratec,
              and others) support --hwmon.  In the future, some consumer cards
              may also be supported by modifying their mixer settings.

       -s, --softmode
              Ignore xruns reported by the ALSA driver.  This makes JACK  less
              likely  to  disconnect  unresponsive  ports when running without
              --realtime.

       -z, --dither [rectangular,triangular,shaped,none]
              Set dithering mode.  If none or unspecified, dithering  is  off.
              Only the first letter of the mode name is required.


EXAMPLES

       Print usage message for options specific to the alsa driver.

              jackd -d alsa --help

       Run  the  JACK daemon with realtime priority using the first ALSA hard-
       ware card defined in /etc/modules.conf.  This must be run on  a  kernel
       with capabilities enabled.

              jackstart --realtime --driver=alsa --device=hw:0

       Run the JACK daemon with low latency.  A reasonably well-tuned current-
       generation system with a decent sound card  and  a  low-latency  kernel
       with  capabilities  enabled can handle these values reliably.  Some can
       do better.  If you get xrun messages, try a larger  buffer.   Tuning  a
       system    for    low   latency   is   challenging.    The   JACK   FAQ,
       <http://jackit.sourceforge.net/docs/faq.php> has  some  useful  sugges-
       tions.

              jackstart -R -d alsa -d hw:0 -p 128 -n 3 -r 44100

       Run jackd with realtime priority using the "sblive" ALSA device defined
       in ~/.asoundrc.  Apply shaped dithering to playback audio.   This  must
       be run as root.

              jackd -R -d alsa -d sblive --dither=shaped

       Run  jackd  with  no  special privileges using the "sblive" ALSA device
       defined in ~/.asoundrc.  Any xruns reported by the ALSA driver will  be
       ignored.   The  larger  buffer  helps  reduce  data  loss.  Rectangular
       dithering will be used for playback.

              jackd -d alsa -d sblive -p1024 -n3 --softmode -zr


SEE ALSO:

       <http://www.alsa-project.org>


BUGS

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


AUTHORS

       Paul Davis and others.

       Manpage  originally  written  by   Stefan   Schwandter   <e9925373@stu-
       dent.tuwien.ac.at> and later adapted by Jack O'Quin <joq@joq.us>.