Browse Source

man page and --version to jackd

git-svn-id: svn+ssh://jackaudio.org/trunk/jack@346 0c269be4-1314-0410-8aa9-9f06e86f4224
tags/0.109.0
trutkin 21 years ago
parent
commit
22e0ee339b
8 changed files with 213 additions and 7 deletions
  1. +4
    -4
      Makefile.am
  2. +2
    -1
      configure.in
  3. +1
    -0
      jackd/.cvsignore
  4. +4
    -0
      jackd/ChangeLog
  5. +4
    -1
      jackd/Makefile.am
  6. +184
    -0
      jackd/jackd.1.in
  7. +13
    -1
      jackd/jackd.c
  8. +1
    -0
      jackd/jackstart.1

+ 4
- 4
Makefile.am View File

@@ -23,11 +23,11 @@ DIST_SUBDIRS = jack libjack jackd drivers example-clients doc
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = jack.pc

EXTRA_DIST = depcomp COPYING COPYING.GPL COPYING.LGPL

AUTOMAKE_OPTIONS = foreign

rpm: dist
rpm -ta $(distdir).tar.gz

dist-hook: dist-check-doxygen

EXTRA_DIST = depcomp COPYING COPYING.GPL COPYING.LGPL

AUTOMAKE_OPTIONS = foreign

+ 2
- 1
configure.in View File

@@ -13,7 +13,7 @@ dnl micro version = incremented when implementation-only
dnl changes are made
dnl ---
JACK_MAJOR_VERSION=0
JACK_MINOR_VERSION=61
JACK_MINOR_VERSION=62
JACK_MICRO_VERSION=0

dnl ---
@@ -234,6 +234,7 @@ jack.spec
jack/Makefile
jack/version.h
jackd/Makefile
jackd/jackd.1
libjack/Makefile
drivers/Makefile
drivers/alsa/Makefile


+ 1
- 0
jackd/.cvsignore View File

@@ -4,3 +4,4 @@ Makefile
Makefile.in
jack_md5.h
jackd
jackd.1

+ 4
- 0
jackd/ChangeLog View File

@@ -1,3 +1,7 @@
2003-03-05 Taybin Rutkin <taybin>

* jackd.c: added version flag. -V and --version are accepted.

2003-02-21 Paul Davis <paul>

* jackd.c: modified signal catching design to actually follow


+ 4
- 1
jackd/Makefile.am View File

@@ -1,4 +1,4 @@
MAINTAINERCLEANFILES = Makefile.in jack_md5.h
MAINTAINERCLEANFILES = Makefile.in jackd.1 jack_md5.h

if USE_CAPABILITIES
CAP_PROGS = jackstart
@@ -39,6 +39,9 @@ endif
jackstart_SOURCES = jackstart.c md5.c
jackstart_LDFLAGS = -lcap

man_MANS = jackd.1 jackstart.1
EXTRA_DIST = $(man_MANS)

dist-hook:
rm -f $(distdir)/jack_md5.h
distclean-local:


+ 184
- 0
jackd/jackd.1.in View File

@@ -0,0 +1,184 @@
.TH JACKD "1" @VERSION@ "March 2003"
.SH NAME
jackd, jackstart \- JACK Audio Connection Kit sound server
.SH SYNOPSYS
\fBjackd\fR [ \fI options \fR ] \fB \-d \fI driver \fR
[\fI driver options \fR ]
.br
\fBjackstart\fR [ \fI options \fR ] \fB \-d \fI driver \fR
[\fI driver options \fR ]
.br
\fBjackd \-\-help\fR
.SH DESCRIPTION
\fBjackd\fR invokes the JACK audio server daemon. When using JACK's
built-in support for realtime capabilities, use the \fBjackstart\fR
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
applications. JACK also supports internal clients, which run within
the \fBjackd\fR 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:
synchronous execution of all clients, and low latency operation.

For the latest JACK information, please consult the web site,
<\fBhttp://jackit.sourceforge.net\fR>.
.SH OPTIONS
.TP
\fB\-h, \-\-help\fR
.br
Print a brief usage message describing the main \fBjackd\fR options.
These do not include driver options, which are obtained using the
\fB\-\-help\fR option for that specific driver, instead.
.TP
\fB\-a, \-\-asio\fR
.br
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 interrupt from the audio
interface. This only makes sense when used with an ASIO-style
configuration where there are 2 periods per buffer (see
\fB\-\-nperiods\fR). It is safe to omit this parameter, if you don't
need to enforce strict realtime limits.
.TP
\fB\-R, \-\-realtime\fR
.br
Use realtime scheduling. This is needed for reliable low-latency
performance. It requires \fBjackd\fR to run with special scheduler
and memory allocation privileges, which may be obtained in two ways.
The first method is to run \fBjackd\fR 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
\fB<linux/capability.h>\fR include file). Then, an ordinary user can
invoke the daemon using \fBjackstart\fR, and later launch JACK clients
without running as root.
.TP
\fB\-P, \-\-realtime\-priority \fIint\fR
When running \fB\-\-realtime\fR, set the scheduler priority to
\fIint\fR.
.TP
\fB\-D, \-\-tmpdir \fIdirectory\fR
Set the \fIdirectory\fR to use for temporary files.
.TP
\fB\-v, \-\-verbose\fR
Give verbose output.
.TP
\fB\-V, \-\-version\fR
Print the current JACK version number and exit.
.TP
\fB\-d, \-\-driver \fI driver \fR [ \fI driver-options \fR ]
.br
Select the output driver. The only \fIdriver\fR currently documented
is \fBalsa\fR (see below).
.SS ALSA DRIVER OPTIONS
.TP
\fB\-h, \-\-help\fR Print a brief usage message describing only the
\fBalsa\fR driver options.
.TP
\fB\-d, \-\-device \fIname\fR
.br
The ALSA pcm device \fIname\fR to use ("default" if none specified).
.TP
\fB\-r, \-\-rate \fIint\fR
Specify the sample rate. The default is 48000.
.TP
\fB\-p, \-\-period \fIint\fR
.br
Specify the number of frames between JACK \fBprocess()\fR calls. The
default is 1024. If you need low latency, set \fB\-p\fR as low as you
can go without seeing xruns. A larger period size yields higher
latency, but makes xruns less likely.
.TP
\fB\-n, \-\-nperiods \fIint\fR
.br
Specify the number of periods in the hardware buffer. The default is
2. The period size (\fB\-p\fR) times \fB\-\-nperiods\fR times four is
the JACK buffer size in bytes.
.TP
\fB\-D, \-\-duplex\fR
Provide both capture and playback ports (the default).
.TP
\fB\-C, \-\-capture\fR
Provide only capture ports.
.TP
\fB\-P, \-\-playback\fR
Provide only playback ports.
.TP
\fB\-H, \-\-hwmon\fR
.br
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 satisfied by
creating a direct signal path between audio interface input and output
connectors, with no processing by the host computer 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 \fB\-\-hwmon\fR. In the future, some consumer cards may also
be supported by modifying their mixer settings.

Without \fB\-\-hwmon\fR, port monitoring requires JACK to read audio
into system memory, then copy it back out to the hardware again,
imposing the basic JACK system latency determined by the
\fB\-\-period\fR and \fB\-\-nperiods\fR options.
.TP
\fB\-s, \-\-softmode\fR
.br
Ignore xruns reported by the ALSA driver. This makes JACK less likely
to disconnect unresponsive ports when running without
\fB\-\-realtime\fR.
.TP
\fB\-z, --dither [rectangular,triangular,shaped,-]
Set dithering mode. If \fB\-\fR or unspecified, dithering is off.
Only the first letter of the mode name is required.
.SH EXAMPLES
.PP
Print usage message for options specific to the \fBalsa\fR driver.
.IP
\fBjackd \-d alsa \-\-help\fR
.PP
Run the JACK daemon with realtime priority using the first ALSA
hardware card defined in \fB/etc/modules.conf\fR. This must be run on
a kernel with capabilities enabled.
.IP
\fBjackstart \-\-realtime \-\-driver=alsa \-\-device=hw:0\fR
.PP
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,
<\fBhttp://jackit.sourceforge.net/docs/faq.php\fR> has some useful
suggestions.
.IP
\fBjackstart \-R \-d alsa \-d hw:0 \-p 128 \-n 3 \-r 44100\fR
.PP
Run \fBjackd\fR with realtime priority using the "sblive" ALSA device
defined in ~/.asoundrc. Apply shaped dithering to playback audio.
This must be run as root.
.IP
\fBjackd \-R \-d alsa \-d sblive \-\-dither=shaped\fR
.PP
Run \fBjackd\fR 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.
.IP
\fBjackd \-d alsa \-d sblive \-p1024 \-n3 \-\-softmode \-zr\fR
.SH SEE ALSO:
.BR <\fBhttp://www.alsa-project.org\fR>
.SH BUGS
Please send bug reports to <\fBjackit-devel@lists.sourceforge.net\fR>.
.SH AUTHORS
Paul Davis and others.
.PP
Manpage originally written by Stefan Schwandter
<e9925373@student.tuwien.ac.at> and later adapted by Jack O'Quin
<joq@joq.us>.

+ 13
- 1
jackd/jackd.c View File

@@ -273,6 +273,7 @@ static void usage (FILE *file)
" [ --realtime OR -R [ --realtime-priority OR -P priority ] ]\n"
" [ --verbose OR -v ]\n"
" [ --tmpdir OR -D directory-for-temporary-files ]\n"
" [ --version OR -V ]\n"
" -d driver [ ... driver args ... ]\n");
}

@@ -280,7 +281,7 @@ int
main (int argc, char *argv[])

{
const char *options = "-ad:D:P:vhRFl:";
const char *options = "-ad:D:P:vhVRFl:";
struct option long_options[] =
{
{ "asio", 0, 0, 'a' },
@@ -291,6 +292,7 @@ main (int argc, char *argv[])
{ "realtime", 0, 0, 'R' },
{ "realtime-priority", 1, 0, 'P' },
{ "spoon", 0, 0, 'F' },
{ "version", 0, 0, 'V' },
{ 0, 0, 0, 0 }
};
int option_index;
@@ -299,6 +301,7 @@ main (int argc, char *argv[])
char *driver_name = 0;
char **driver_args = 0;
int driver_nargs = 1;
int show_version = 0;
int i;
#ifdef USE_CAPABILITIES
int status;
@@ -356,6 +359,10 @@ main (int argc, char *argv[])
realtime = 1;
break;

case 'V':
show_version = 1;
break;

default:
fprintf (stderr, "unknown option character %c\n", optopt);
/*fallthru*/
@@ -365,6 +372,11 @@ main (int argc, char *argv[])
}
}

if (show_version) {
printf ( "jackd version " VERSION "\n");
return -1;
}

if (!seen_driver) {
usage (stderr);
exit (1);


+ 1
- 0
jackd/jackstart.1 View File

@@ -0,0 +1 @@
.so man1/jackd.1

Loading…
Cancel
Save