In big sessions when new jack port is appearing in the system, the ardour sound is cut

Hi, I’ve decided to try once again to figure out the issue, that I’ve initially described here: Ardour seems to conflict with other sounds in the system - #15 by allanger

And this time I have another idea about what is going on, though I’m still absolutely not sure. The issue is that on bigger sessions when some system sound is being produced, the sound from the ardour is cut.

I’m using pipewire (1.4.9) and jack as the ardour backend. I can’t reproduce it with alsa and pulseaudio backends, it’s only happening with jack. And it’s also happening when ardour and system are configured to use two different output devices.

I have it with the ardour downloaded from here, with a flatpak, one from the distro repos and with the one I’ve built myself. I’ve also had it on 3 different laptops, and on Fedora and Arch.

I’ve uploaded an example here: https://s3.badhouseplants.net/public-download/ArdourIssue/Ardour.webm

But since then I’ve figured out that a session must not be heavy in terms of plugins. I’ve created a session with one synth and 20 empty tracks. And while testing, I’ve also understood that the trigger for the glitch is not the sound that is produced by the system, but more likely it’s the appearances and the disappearances of the jack port that is created when the system is producing the sound.

Every system notification or the sound that is produced when the system volume is changed is creating and removing a new jack port.

I’ve run ardour with this env variable: PIPEWIRE_DEBUG=3

And during the sound hiccups, I see these logs popping up. It’s a log for a small session with 1 track, for a session with 20 it’s obviously a way more.

Pipewire logs
[I][01:30:26.404113] jack         | [ pipewire-jack.c: 4121 registry_event_global()] 0x3563db20: client added "MakBook" emit:1
[I][01:30:26.408684] jack         | [ pipewire-jack.c: 4127 registry_event_global()] 0x3563db20: port added 133/279 "MakBook:send_FL" emit:1
[I][01:30:26.409058] jack         | [ pipewire-jack.c: 4127 registry_event_global()] 0x3563db20: port added 131/280 "MakBook:monitor_FL" emit:1
[I][01:30:26.409110] jack         | [ pipewire-jack.c: 4127 registry_event_global()] 0x3563db20: port added 134/281 "MakBook:send_FR" emit:1
[I][01:30:26.409147] jack         | [ pipewire-jack.c: 4127 registry_event_global()] 0x3563db20: port added 135/282 "MakBook:monitor_FR" emit:1
[I][01:30:26.428082] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_in 1 set 0 latency range 0 0
[I][01:30:26.428138] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 1 set 0 latency range 1024 1024
[I][01:30:26.428209] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 2 set 0 latency range 1024 1024
[I][01:30:26.428229] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_out 1 set 0 latency range 1024 1024
[I][01:30:26.428393] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 1 set 0 latency range 0 0
[I][01:30:26.428439] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 2 set 0 latency range 0 0
[I][01:30:26.428495] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 1 set 0 latency range 1024 1024
[I][01:30:26.428535] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 2 set 0 latency range 1024 1024
[I][01:30:26.428584] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 1 set 0 latency range 0 0
[I][01:30:26.428629] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 2 set 0 latency range 0 0
[I][01:30:26.428687] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 1 set 0 latency range 0 0
[I][01:30:26.428736] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 2 set 0 latency range 0 0
[I][01:30:26.428775] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MTC out set 0 latency range 0 0
[I][01:30:26.428843] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MIDI Clock out set 0 latency range 0 0
[I][01:30:26.428867] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Cue Control in set 0 latency range 0 0
[I][01:30:26.428904] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC in set 0 latency range 0 0
[I][01:30:26.428947] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC out set 0 latency range 0 0
[I][01:30:26.428986] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:x-virtual-keyboard set 0 latency range 1024 1024
[I][01:30:26.429015] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene out set 0 latency range 0 0
[I][01:30:26.429040] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene in set 0 latency range 0 0
[I][01:30:26.429348] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_in 1 set 0 latency range 0 0
[I][01:30:26.429378] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 1 set 0 latency range 1024 1024
[I][01:30:26.429418] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 2 set 0 latency range 1024 1024
[I][01:30:26.429438] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_out 1 set 0 latency range 1024 1024
[I][01:30:26.429521] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 1 set 0 latency range 0 0
[I][01:30:26.429547] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 2 set 0 latency range 0 0
[I][01:30:26.429583] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 1 set 0 latency range 1024 1024
[I][01:30:26.429629] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 2 set 0 latency range 1024 1024
[I][01:30:26.429676] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 1 set 0 latency range 0 0
[I][01:30:26.429733] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 2 set 0 latency range 0 0
[I][01:30:26.429833] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 1 set 0 latency range 0 0
[I][01:30:26.429855] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 2 set 0 latency range 0 0
[I][01:30:26.429891] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MTC out set 0 latency range 0 0
[I][01:30:26.429919] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MIDI Clock out set 0 latency range 0 0
[I][01:30:26.429944] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Cue Control in set 0 latency range 0 0
[I][01:30:26.429970] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC in set 0 latency range 0 0
[I][01:30:26.429994] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC out set 0 latency range 0 0
[I][01:30:26.430034] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:x-virtual-keyboard set 0 latency range 1024 1024
[I][01:30:26.430063] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene out set 0 latency range 0 0
[I][01:30:26.430089] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene in set 0 latency range 0 0
[I][01:30:26.430336] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 1 set 1 latency range 32 32
[I][01:30:26.430365] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 2 set 1 latency range 32 32
[I][01:30:26.430407] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 1 set 1 latency range 16 16
[I][01:30:26.430429] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 2 set 1 latency range 16 16
[I][01:30:26.430532] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 1 set 1 latency range 0 0
[I][01:30:26.430560] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 2 set 1 latency range 0 0
[I][01:30:26.430595] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_out 1 set 1 latency range 0 0
[I][01:30:26.430614] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_in 1 set 1 latency range 16 16
[I][01:30:26.430750] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 1 set 1 latency range 32 32
[I][01:30:26.430794] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 2 set 1 latency range 32 32
[I][01:30:26.430900] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 1 set 1 latency range 32 32
[I][01:30:26.430925] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 2 set 1 latency range 32 32
[I][01:30:26.430997] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MTC out set 1 latency range 0 0
[I][01:30:26.431026] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MIDI Clock out set 1 latency range 0 0
[I][01:30:26.431054] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Cue Control in set 1 latency range 0 0
[I][01:30:26.431079] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC in set 1 latency range 0 0
[I][01:30:26.431106] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC out set 1 latency range 0 0
[I][01:30:26.431148] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:x-virtual-keyboard set 1 latency range 16 16
[I][01:30:26.431186] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene out set 1 latency range 0 0
[I][01:30:26.431211] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene in set 1 latency range 0 0
[I][01:30:26.431597] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 1 set 1 latency range 32 32
[I][01:30:26.431627] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 2 set 1 latency range 32 32
[I][01:30:26.431668] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 1 set 1 latency range 16 16
[I][01:30:26.431689] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 2 set 1 latency range 16 16
[I][01:30:26.431795] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 1 set 1 latency range 0 0
[I][01:30:26.431825] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 2 set 1 latency range 0 0
[I][01:30:26.431847] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_out 1 set 1 latency range 0 0
[I][01:30:26.431876] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_in 1 set 1 latency range 16 16
[I][01:30:26.431977] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 1 set 1 latency range 32 32
[I][01:30:26.432006] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 2 set 1 latency range 32 32
[I][01:30:26.432060] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 1 set 1 latency range 32 32
[I][01:30:26.432087] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 2 set 1 latency range 32 32
[I][01:30:26.432127] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MTC out set 1 latency range 0 0
[I][01:30:26.432162] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MIDI Clock out set 1 latency range 0 0
[I][01:30:26.432189] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Cue Control in set 1 latency range 0 0
[I][01:30:26.432221] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC in set 1 latency range 0 0
[I][01:30:26.432249] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC out set 1 latency range 0 0
[I][01:30:26.432294] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:x-virtual-keyboard set 1 latency range 16 16
[I][01:30:26.432324] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene out set 1 latency range 0 0
[I][01:30:26.432351] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene in set 1 latency range 0 0
[I][01:30:30.561921] jack         | [ pipewire-jack.c: 4187 registry_event_global_remove()] 0x3563db20: port 133/279 removed "MakBook:send_FL"
[I][01:30:30.561985] jack         | [ pipewire-jack.c: 4187 registry_event_global_remove()] 0x3563db20: port 134/281 removed "MakBook:send_FR"
[I][01:30:30.562049] jack         | [ pipewire-jack.c: 4187 registry_event_global_remove()] 0x3563db20: port 131/280 removed "MakBook:monitor_FL"
[I][01:30:30.562075] jack         | [ pipewire-jack.c: 4187 registry_event_global_remove()] 0x3563db20: port 135/282 removed "MakBook:monitor_FR"
[I][01:30:30.562096] jack         | [ pipewire-jack.c: 4180 registry_event_global_remove()] 0x3563db20: client 130 removed "MakBook"
[I][01:30:30.566769] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_in 1 set 0 latency range 0 0
[I][01:30:30.566859] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 1 set 0 latency range 1024 1024
[I][01:30:30.566887] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 2 set 0 latency range 1024 1024
[I][01:30:30.566906] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_out 1 set 0 latency range 1024 1024
[I][01:30:30.567049] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 1 set 0 latency range 0 0
[I][01:30:30.567075] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 2 set 0 latency range 0 0
[I][01:30:30.567097] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 1 set 0 latency range 1024 1024
[I][01:30:30.567116] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 2 set 0 latency range 1024 1024
[I][01:30:30.567147] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 1 set 0 latency range 0 0
[I][01:30:30.567177] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 2 set 0 latency range 0 0
[I][01:30:30.567261] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 1 set 0 latency range 0 0
[I][01:30:30.567284] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 2 set 0 latency range 0 0
[I][01:30:30.567320] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MTC out set 0 latency range 0 0
[I][01:30:30.567346] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MIDI Clock out set 0 latency range 0 0
[I][01:30:30.567382] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Cue Control in set 0 latency range 0 0
[I][01:30:30.567406] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC in set 0 latency range 0 0
[I][01:30:30.567430] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC out set 0 latency range 0 0
[I][01:30:30.567472] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:x-virtual-keyboard set 0 latency range 1024 1024
[I][01:30:30.567499] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene out set 0 latency range 0 0
[I][01:30:30.567520] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene in set 0 latency range 0 0
[I][01:30:30.567831] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_in 1 set 0 latency range 0 0
[I][01:30:30.567861] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 1 set 0 latency range 1024 1024
[I][01:30:30.567881] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 2 set 0 latency range 1024 1024
[I][01:30:30.567900] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_out 1 set 0 latency range 1024 1024
[I][01:30:30.567979] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 1 set 0 latency range 0 0
[I][01:30:30.568003] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 2 set 0 latency range 0 0
[I][01:30:30.568023] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 1 set 0 latency range 1024 1024
[I][01:30:30.568042] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 2 set 0 latency range 1024 1024
[I][01:30:30.568072] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 1 set 0 latency range 0 0
[I][01:30:30.568091] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 2 set 0 latency range 0 0
[I][01:30:30.568134] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 1 set 0 latency range 0 0
[I][01:30:30.568162] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 2 set 0 latency range 0 0
[I][01:30:30.568195] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MTC out set 0 latency range 0 0
[I][01:30:30.568234] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MIDI Clock out set 0 latency range 0 0
[I][01:30:30.568258] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Cue Control in set 0 latency range 0 0
[I][01:30:30.568278] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC in set 0 latency range 0 0
[I][01:30:30.568297] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC out set 0 latency range 0 0
[I][01:30:30.568329] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:x-virtual-keyboard set 0 latency range 1024 1024
[I][01:30:30.568357] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene out set 0 latency range 0 0
[I][01:30:30.568382] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene in set 0 latency range 0 0
[I][01:30:30.568585] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 1 set 1 latency range 32 32
[I][01:30:30.568612] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 2 set 1 latency range 32 32
[I][01:30:30.568632] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 1 set 1 latency range 16 16
[I][01:30:30.568649] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 2 set 1 latency range 16 16
[I][01:30:30.568748] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 1 set 1 latency range 0 0
[I][01:30:30.568773] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 2 set 1 latency range 0 0
[I][01:30:30.568792] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_out 1 set 1 latency range 0 0
[I][01:30:30.568810] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_in 1 set 1 latency range 16 16
[I][01:30:30.568927] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 1 set 1 latency range 32 32
[I][01:30:30.568952] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 2 set 1 latency range 32 32
[I][01:30:30.569021] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 1 set 1 latency range 32 32
[I][01:30:30.569045] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 2 set 1 latency range 32 32
[I][01:30:30.569087] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MTC out set 1 latency range 0 0
[I][01:30:30.569112] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MIDI Clock out set 1 latency range 0 0
[I][01:30:30.569134] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Cue Control in set 1 latency range 0 0
[I][01:30:30.569195] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC in set 1 latency range 0 0
[I][01:30:30.569219] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC out set 1 latency range 0 0
[I][01:30:30.569249] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:x-virtual-keyboard set 1 latency range 16 16
[I][01:30:30.569272] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene out set 1 latency range 0 0
[I][01:30:30.569299] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene in set 1 latency range 0 0
[I][01:30:30.569687] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 1 set 1 latency range 32 32
[I][01:30:30.569715] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_out 2 set 1 latency range 32 32
[I][01:30:30.569735] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 1 set 1 latency range 16 16
[I][01:30:30.569763] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Master/audio_in 2 set 1 latency range 16 16
[I][01:30:30.569894] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 1 set 1 latency range 0 0
[I][01:30:30.569923] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/audio_out 2 set 1 latency range 0 0
[I][01:30:30.569943] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_out 1 set 1 latency range 0 0
[I][01:30:30.569966] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Vital/midi_in 1 set 1 latency range 16 16
[I][01:30:30.570072] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 1 set 1 latency range 32 32
[I][01:30:30.570099] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:auditioner/audio_out 2 set 1 latency range 32 32
[I][01:30:30.570146] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 1 set 1 latency range 32 32
[I][01:30:30.570205] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Click/audio_out 2 set 1 latency range 32 32
[I][01:30:30.570325] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MTC out set 1 latency range 0 0
[I][01:30:30.570364] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MIDI Clock out set 1 latency range 0 0
[I][01:30:30.570391] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Cue Control in set 1 latency range 0 0
[I][01:30:30.570413] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC in set 1 latency range 0 0
[I][01:30:30.570435] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:MMC out set 1 latency range 0 0
[I][01:30:30.570479] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:x-virtual-keyboard set 1 latency range 16 16
[I][01:30:30.570506] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene out set 1 latency range 0 0
[I][01:30:30.570532] jack         | [ pipewire-jack.c: 6743 jack_port_set_latency_range()] 0x3563db20: ardour:Scene in set 1 latency range 0 0

I’ve also tested playing sounds with the espeak tool and I’ve got the same results: when playing a short word in a loop, the sound is cut on every loop, when playing a long word, it’s just happening once in the beginning. The same with for example videos from youtube: only when firefox is creating a new output device (when video is started), glitch is happening.

I have two ideas what it could be, (and both can be total nonsense, considering that I don’t understand audio programming at all): either Ardour is blocking the audio playback while discovering new jack devices, or my pipewire is blocking the audio thread to write a huge amount of logs.

Is there a way I can easiliy eliminate the first one? I wanted to try disabling the device enumiration when the playback is active, just to make sure it’s not the case, but I struggle to understand the codebase, so I’ve decided to ask here again.

Or maybe somebody will have another idea about it?
Thanks

I think this is a PulseAudio bug. EDIT: I meant a Pipewire bug, not Pulse. sorry. I have seen it myself. Sometimes I forgot to turn off my home automation audio announcements, in example, when they trigger Ardour audio will disappear for a few seconds. I think it has something to do with Pulse trying to open/add a new device/source, but failing to keep existing devices opened during that duration. I learned to just disable that when using Ardour.

Thanks for the idea. I have only pipewire-pulse, the “real” pulseaudio is not installed. And even when the pipewire-pulse service is not running, the glitch is happening exactly the same.

I mistyped. I meant Pipewire, not Pulseaudio. I am running the Pipewire-pulse service here so you are right, it is probably not related then.

I have also discovered with PW 1.5.9 it will open a lot of connections without closing them. I wrote a small script to restart all those services whenever this happens.

Alright, I’m not pretty sure that it’s related only to pipewire and not to ardour, cause the problem is actually affecting the whole system. It seems like it’s happening when there are a lot of piperwire devices. Probably something is just misconfigured on my side