On Sat, 27 Jul 2019, liebrecht(a)grossmann-venter.com wrote:
Anyone have an in depth treatise on xruns and how to minimize them. By that I
dont mean just adjusting the buffer size, I mean really getting into the gears
of why xruns happen and how to potentially minimize them.
Reason I ask is that I use jack on a live music basis amd it is crucial for me
to get no more than 2.9ms latency.
I can hear and feel every latency above above that.
I am lucky with mixbus and jack on Linux to get 2.9ms with the occasional xrun
every 2 minutes, but I want to see if I cannot eliminate them.
Any advice or point to very relevant reference material will be appreciated.
Besides the fact that some USB ports on my notebook computer allow
buffer sizes down to 24 without xruns (when just playing music via
Firefox -> Pulseaudio-> jackd) and others only allow bigger sizes I
could eliminate occational xruns by:
- use 48000 Hz, not 44100 to get 1 ms-chunks with appropriate bufsizes
- use multiples of 48 for the bufsize
- blacklist modules for wifi, camera, bluetooth, onboard-audio
- switch off kernel parms that were introduced mainly for multi client
data centers after some flaws in intel cpus were discovered
/etc/default/grub:
GRUB_CMDLINE_LINUX_DEFAULT="nohz=off threadirqs noibrs noibpb nopti nospectre_v2
nospectre_v1 l1tf=off nospec_store_bypass_disable no_stf_barrier mds=off mitigations=off
quiet splash"
/etc/modprobe.d/blacklist-audiotuning.conf:
blacklist bluetooth
blacklist btrtl
blacklist btintel
blacklist btbcm
blacklist btusb
blacklist uvcvideo
blacklist iwlwifi
blacklist snd_hda_intel
blacklist snd_hda_core
blacklist snd_hda_codec
blacklist snd_hda_codec_realtek
blacklist snd_hda_codec_hdmi