Ardour 7.3-7.5 Certain projects will cause endless xruns and lockup on loading

Greetings - I wanted to ask here before filing an official bug report so as to get some assistance in figuring out what exactly I am experiencing to better phrase a proper report (and if it isn’t something dumb).

Problem: Since Ardour 7.3 (and up to, and including 7.5) certain projects halt loading at the “Setup Editor” phase and the program becomes unresponsive. QjackCtl then starts showing endless xruns accumulating, and the following is spammed into the log:

CheckRes error Could not write notification Jack: JackClient::ClientNotify ref = 2 name = qjackctl notify = 10 ClientNotify fails name = ardour notification = 10 val1 = 39 val2 = 0 Jack: JackClient::kPortRegistrationOff port_index = 39 Jack: JackEngine::PortUnRegister ref = 3 port_index = 44 Jack: JackEngine::PortDisconnect ref = -1 src = 44 dst = 65535 Jack: JackGraphManager::DisconnectAllInput port_index = 44 Jack: JackConnectionManager::RemoveInputPort ref = 3 port_index = 44 Jack: JackEngine::ClientNotify: no callback for notification = 10 Jack: JackEngine::ClientNotify: no callback for notification = 10 Jack: JackExternalClient::ClientNotify ref = 2 client = qjackctl name = qjackctl notify = 10 Jack: JackExternalClient::ClientNotify ref = 3 client = ardour name = ardour notify = 10 Cannot write socket fd = 26 err = Broken pipe CheckRes error Jack: JackClient::ClientNotify ref = 2 name = qjackctl notify = 10 Could not write notification Jack: JackClient::kPortRegistrationOff port_index = 44 ClientNotify fails name = ardour notification = 10 val1 = 44 val2 = 0 Jack: JackEngine::PortUnRegister ref = 3 port_index = 45 Jack: JackEngine::PortDisconnect ref = -1 src = 45 dst = 65535 Jack: JackGraphManager::DisconnectAllInput port_index = 45 Jack: JackConnectionManager::RemoveInputPort ref = 3 port_index = 45 Jack: JackEngine::ClientNotify: no callback for notification = 10 Jack: JackEngine::ClientNotify: no callback for notification = 10 Jack: JackExternalClient::ClientNotify ref = 2 client = qjackctl name = qjackctl notify = 10 Jack: JackExternalClient::ClientNotify ref = 3 client = ardour name = ardour notify = 10 Cannot write socket fd = 26 err = Broken pipe

Does anyone know what this might indicate? My solution so far has been to downgrade to Ardour 7.2, which works perfectly, but of course I would like to keep up to date with with Ardour if possible. System information to follow:

OS: Manjaro Linux x86_64
Kernel: 6.1.38
CPU: AMD Ryzen 7 3700X
Memory: 32GB
GPU: AMD RX6600XT
Audio interface: M-Audio Delta 44
Ardour version: 7.5

QjackCtl settings:
Driver: alsa
Sample rate: 96000
Frames/period: 256
Periods/buffer: 2
Use server synchronous mode: yes

Note: this does seem to affect files that have a lot of audio plugins in them, I am currently working on trying to isolate and see if I can find a culprit but it is so far eluding me.

UPDATE: this may be due to Analog Obsession’s VST3 plugins. Some work unless I turn on oversampling, some just lock Ardour up if enabled at all (like Rare). I’m not 100% sure this is the issue, but it seems most likely at this time.

If there’s any other information you would like to have, please let me know. Thank you so much in advance for taking the time to look at this with me.

A process cycle of just 2.6 msec with a default kernel is borderline, and will likely require tweaking the system.

Have you setup rtIRQ [1] to prioritize the soundcard? Does your user have permission to set CPU DMA latency [2]?

[1] GitHub - rncbc/rtirq: rtirq - Startup script for realtime-preempt enabled kernels or the more modern GitHub - jhernberg/udev-rtirq: Use udev to automatically change the priority of soundcard interrupt handling threads.

[2] https://github.com/Ardour/ardour/tree/master/tools/udev#folder-row-2 , The Ardour Manual - Preferences

Hello Robin, thanks for responding. Increasing the latency has no effect, the problem still occurs. This also worked fine under 7.2. I’ll double check both those things… I will install the udev rules and script and see what happens… UPDATE: unfortunately both #1 and #2 you suggested above have had no effect.

… but also I think I’ve found the cause. It appears to be Analog Obsession’s VST3 plugins (which I like to use a lot). Some lock up Ardour when I turn oversampling on, some lock it up by simply being put on a track and enabled. This is the strongest lead I have so far. Found this in the tracker:
https://tracker.ardour.org/view.php?id=9274&nbn=11

1 Like

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.