[ardour-users] jackd, jackstart, qjackctl
kevinc at doink.com
Thu Feb 3 20:27:43 PST 2005
I hope it's OK to ask a jack question here.
I'm running kernel 2.6.7 patched for multimedia use, and from the
Mandrake contrib packages. Myself I added the realcap patch and
load that module with permissions for the audio group so that I
don't have to run all my jack aware audio apps as root. When I
start jack like this:
jackd -R -d alsa -d hw -r 44100 -p 2048 -n 2
I get no error messages. When I start jack with jackstart through
qjackctl, then I get these errors:
12:01:24.812 Statistics reset.
12:01:25.705 MIDI connection graph change.
12:01:25.713 MIDI connection change.
12:01:26.496 Startup script...
12:01:26.497 artsshell -q terminate
12:01:26.841 Startup script terminated with exit status=256.
12:01:26.843 JACK is starting...
12:01:26.844 /usr/bin/jackstart -R -dalsa -dhw:0 -r44100 -p1024 -n2
12:01:26.851 JACK was started with PID=1436 (0x59c).
jackstart: cannot get realtime capabilities, current capabilities are:
probably running under a kernel with capabilities disabled,
a suitable kernel would have printed something like "=eip"
12:01:26.858 JACK was stopped with exit status=1.
12:01:28.897 Could not connect to JACK server as client.
Why would jackd not complain, but jackstart would complain?
If I start jackd before qjackctl, then qjackctl connects to the
already running jackd. If I look at the status window, it tells
me "Realtime Mode: Yes". I would think this says that my jackd
is actually getting realtime capabilities, right?
I want to run qjackctl for the patchbay and connection features, and
if I have to run jackd first, that's OK. But, I'd rather have it
work more simply.
The FAQ on the jackit website says:
There is an allcaps=1 option, which duplicates the effect of
running Linux 2.4 with the capabilities patch. To use that
you must compile JACK with --enable-capabilites as you would
for the 2.4 kernel. You will need this if you prefer to run
jackstart -R rather than jackd -R. If you only use Linux 2.6,
you need not bother with it.
Are the differences I'm seeing between jackd & jackstart somehow
related to the above statement in the FAQ? I wouldn't think so given
the FAQ statement about 2.6, but...
Immediately following the above FAQ info is this:
Currently (as of 2.6.7) JACK has a serious problem creating
SCHED_FIFO threads for real-time processing. It is unclear
whether this is a bug in JACK, in the new Native PThreads
Library (NPTL), or in the 2.6 kernel. At the moment no
one has a solution, but there is a workaround: define
LD_ASSUME_KERNEL=2.4.19 in the environment of the jackd
process and of every JACK client.
I tried the LD_ASSUME_KERNEL trick, but the differences between jackd
& jackstart persist.
I rebooted with the Mandrake contrib multimedia patched 2.4.22
kernel and repeated the above jackd/jackstart comparison.
jackstart runs fine with that 2.4.22. Unfortunately, there are
some things broken with that kernel package -- networking doesn't
run on my system -- that keep me from using it.
Any thoughts folks?
More information about the Ardour-Users