jackaudio / jack2

jack2 codebase
GNU General Public License v2.0
2.19k stars 374 forks source link

Uncontrollable xruns with Presonus 1818VSL but not other interfaces #299

Open woolgathering opened 6 years ago

woolgathering commented 6 years ago

Running Lubuntu on a Dell Precision 5520, with an Intel(R) Core(TM) i7-7820HQ CPU @ 2.90GHz and 16GB RAM. Using JACK with the Presonus 1818VSL gives xruns regardless of the buffersize, periods/buffer, samplerate, etc. Under output only, sound quality markedly improves but is still unusable. The USB Sync light blinks red and blue.

JACK works with the built-in audio, a Presonus AudioBox, and the dinky Startech 7.1 interface with no problems. However, connecting Pd directly to the 1818 not via JACK gives good audio and minimal latency. Strangely, using the same software setup on an old Macbook Pro and the same 1818, there are no issues.

I've attempted disabling pulseaudio, installing pulseaudio-module-jack, reinstalling JACK, ensuring realtime is enabled, adjusted rtprio and memlock in /etc/security/limits.conf, make sure I'm added to the audio group, etc. Also tried disabling and turning off unnecessary processes and enabled rtirq. Basically at a loss of how to get this interface to work with JACK. I do not, however, have a lowlatency kernel installed.

Output of uname -a:

Linux RAM 4.10.0-37-generic #41-Ubuntu SMP Fri Oct 6 20:20:37 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

JACK-specific packages installed:

Listing...
jackd/zesty,zesty,now 5 all [installed]
jackd2/zesty,now 1.9.10+20150825git1ed50c92~dfsg-2ubuntu2 amd64 [installed,automatic]
jackd2-firewire/zesty,now 1.9.10+20150825git1ed50c92~dfsg-2ubuntu2 amd64 [installed,automatic]
libjack-jackd2-0/zesty,now 1.9.10+20150825git1ed50c92~dfsg-2ubuntu2 amd64 [installed,automatic]
libjack-jackd2-dev/zesty,now 1.9.10+20150825git1ed50c92~dfsg-2ubuntu2 amd64 [installed]
pulseaudio-module-jack/zesty,now 1:10.0-1ubuntu2 amd64 [installed]
qjackctl/zesty,now 0.4.2-0ubuntu2 amd64 [installed]

Output of perl -I ./ ./realTimeConfigQuickScan.pl:

== GUI-enabled checks ==
Checking if you are root... no - good
Checking filesystem 'noatime' parameter... 4.10.0 kernel - good
(relatime is default since 2.6.30)
Checking CPU Governors... CPU 0: 'performance' CPU 1: 'performance' CPU 2: 'performance' CPU 3: 'performance' CPU 4: 'performance' CPU 5: 'performance' CPU 6: 'performance' CPU 7: 'performance'  - good
Checking swappiness... 60 - not good
** vm.swappiness is larger than 10
set it with '/sbin/sysctl -w vm.swappiness=10'
See also: http://linuxmusicians.com/viewtopic.php?f=27&t=452&start=30#p8916
Checking for resource-intensive background processes... none found - good
Checking checking sysctl inotify max_user_watches... < 524288 - not good
increase max_user_watches by adding 'fs.inotify.max_user_watches = 524288' to /etc/sysctl.conf and rebooting
For more information, see http://wiki.linuxaudio.org/wiki/system_configuration#sysctlconf
Checking access to the high precision event timer... not readable - not good
/dev/hpet found, but not readable.
make /dev/hpet readable by the 'audio' group
For more information, see http://wiki.linuxaudio.org/wiki/system_configuration#hardware_timers
Checking access to the real-time clock... not readable - not good
/dev/rtc found, but not readable.
make /dev/rtc readable by the 'audio' group
For more information, see http://wiki.linuxaudio.org/wiki/system_configuration#hardware_timers
Checking whether you're in the 'audio' group... yes - good
Checking for multiple 'audio' groups... no - good
Checking the ability to prioritize processes with chrt... yes - good
Checking kernel support for high resolution timers... found - good
Kernel with Real-Time Preemption... not found - not good
Kernel without real-time capabilities found
For more information, see http://wiki.linuxaudio.org/wiki/system_configuration#installing_a_real-time_kernel
Checking if kernel system timer is high-resolution... found - good
Checking kernel support for tickless timer... found - good
== Other checks ==
Checking filesystem types... ok.
not found.
** Warning: no tmpfs partition mounted on /tmp
   For more information, see:
   - http://wiki.linuxaudio.org/wiki/system_configuration#tmpfs
   - http://lowlatency.linuxaudio.org
** Set $SOUND_CARD_IRQ to the IRQ of your soundcard to enable more checks.
   Find your sound card's IRQ by looking at '/proc/interrupts' and lspci.

qjackctl's output upon opening:

19:44:42.302 Statistics reset.
19:44:42.306 ALSA connection change.
19:44:42.308 D-BUS: Service is available (org.jackaudio.service aka jackdbus).
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for 4294967295, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for 4294967295, skipping unlock

But it was booting and seemed to be running... I wanted to check here before digging in further, especially since the interface works without JACK.

woolgathering commented 6 years ago

Solved. Problem was with the interface's firmware, though it's still unclear why it worked without JACK...