[Jack-Devel] Jack Problems

Holger Marzen holger at marzen.de
Sat Mar 23 09:45:17 CET 2019


On Fri, 22 Mar 2019, liebrecht at grossmann-venter.com wrote:

> I havent been on an audio related usergroup where anything positive has been
> said (except largely what I posted) about jack. By large 95% of users complain
> about jack.

Many people can't handle if they get too many screws they can turn. They
see Windows, they can increase the buffer size and not more, they are
happy.

But that should be no reason to distribute a "simplejackd" that's
hardcoded to use the ALSA backend, 2 buffers and the same audio adapter
for in and out.

> If I cannot make sense of it and become an "expert" who will unless they have
> special information. Do the expert study the coded, basically become a
> developer. ?
> 
> With software, a lack of proper specification and scriptable advice, leads to
> no one being able to come to grips unless they go study the code - even if the
> application is dead simple. I dont want to do that and shouldnt need to as
> just need to be a user in this case that wants to become an expert if
> possible.

As I wrote before: Most of the confusion results in the many audio
architectures available for Linux. That's one of the reasons for audio
oriented Linux distributions.

But the other way (using my main PC for audio, too) is possible. I did
it and after I understood that Pulsaudio can be a problem I configured
it to

- not autospawn
- output via jackd

and start a script automaticall when logging in that handles it all for
me. There are many, many other ways to do it but I am a more technical
guy and want it simple and reproducable.

-- snip --

#!/bin/bash

FREQ=48000
BUFFERS=2
PERIODS=128
PRIO=90

killall -9 pulseaudio
killall -9 jackd
killall -9 alsa_out
killall -9 jack_mixer
killall -9 jack_thru
killall -9 jack-plumbing

sleep 1

aplay -l | grep CODEC 2>&1 >/dev/null
RC=$?

if [ $RC = 0 ]
then
  HW=CODEC
else
  aplay -l | grep USB 2>&1 >/dev/null
  RC=$?
  
  if [ $RC = 0 ]
  then
    HW=USB
  else
    HW=PCH
  fi
fi

/usr/bin/jackd -P$PRIO -p512 -t2000 -dalsa \
  -r$FREQ -p$PERIODS -n$BUFFERS -Xseq -dhw:$HW \
  >/tmp/jackd-hm.log 2>&1 &
JACKPID=$!

jack_wait -w

pulseaudio --exit-idle-time=-1 -D
PULSEPID=$!

sleep 1

jack_thru main &
JACKTHRUPID=$!

xfce4-terminal -T jack-plumbing -e ~/scripts/jack-plumbing.sh &
JACKPLUMBINGPID=$!

wait
-- snap --



More information about the Jackaudio mailing list