Your next diagnostic step should be to open a terminal while Ardour is running (and the other DAWs) and run pw-top there. Trigger a beep/notification/whatever, and observe the behavior in pw-top … is the sound generator running at the hw sample rate? Also, what quant(um) size is in use for the hardware?
I’m not really that good at the understanding of the audio related stuff, so I’ll try my best.
I’m running Ardour at 48kHz, the sounds that are produced by the system are using 44.1kHz, the espeak tool that I’ve used for text-to-speech sound generation is running at 22.05kHz.
When I’m executing
$ while true; do espeak 'test' && sleep 1; done
During a running session, the sound stutters, like with the system sounds.
Then I’ve tried running Ardour via the pw-jack
$ pw-jack -p 1024 -s 44100 ardour8
If I got it right, then both Ardour and the system should produce sounds at the same sample rate (44.1), but the stuttering is still there.
Well, actually, it’s not only system sounds, from time to time, I’m trying to listen to some tracks from let’s say Spotify, in parallel to the track I’m mixing to compare the loudness etc, and it’s becoming impossible with Ardour because of this thing
The next thing I’ve tried: I’ve listened to some mp3 in parallel using pw-play, and it has worked out perfectly well, both sounds (Ardour output and pw-play) were just playing along, this is what it looks like in pw-top:
R 89 1024 48000 966.7us 5.1us 0.05 0.00 1221 S32LE 2 48000 alsa_input.usb-Focusrite_Scarlett_2i2_USB_Y81P4VP063F930-00.pro-input-0
R 50 0 0 163.0us 24.1us 0.01 0.00 0 + Midi-Bridge
R 54 0 0 44.9us 117.1us 0.00 0.01 0 S32LE 2 48000 + alsa_input.pci-0000_00_1f.3.analog-stereo
R 64 0 0 97.0us 12.0us 0.00 0.00 0 + bluez_midi.server
R 79 0 0 188.3us 65.1us 0.01 0.00 0 S16LE 1 48000 + alsa_input.usb-Lenovo_ThinkPad_USB-C_Dock_Audio_000000000000-00.mono-fallback
R 88 0 0 40.9us 46.1us 0.00 0.00 1 S32LE 2 48000 + alsa_output.usb-Focusrite_Scarlett_2i2_USB_Y81P4VP063F930-00.pro-output-0
R 143 0 0 52.5us 562.2us 0.00 0.03 1 + ardour
R 232 4800 48000 55.0us 82.7us 0.00 0.00 0 F32LE 2 48000 + pw-play
but when I’ve tried the following, the stuttering appeared again
$ while true; do espeak 'test' --stdout | pw-play -; done
$ pw-top
R 89 1024 48000 321.4us 1.5us 0.02 0.00 1221 S32LE 2 48000 alsa_input.usb-Focusrite_Scarlett_2i2_USB_Y81P4VP063F930-00.pro-input-0
R 50 0 0 56.1us 8.3us 0.00 0.00 0 + Midi-Bridge
R 54 0 0 13.4us 42.0us 0.00 0.00 0 S32LE 2 48000 + alsa_input.pci-0000_00_1f.3.analog-stereo
R 64 0 0 60.3us 4.1us 0.00 0.00 0 + bluez_midi.server
R 79 0 0 65.1us 24.9us 0.00 0.00 0 S16LE 1 48000 + alsa_input.usb-Lenovo_ThinkPad_USB-C_Dock_Audio_000000000000-00.mono-fallback
R 88 0 0 12.1us 16.3us 0.00 0.00 1 S32LE 2 48000 + alsa_output.usb-Focusrite_Scarlett_2i2_USB_Y81P4VP063F930-00.pro-output-0
R 143 0 0 19.5us 179.7us 0.00 0.01 1 + ardour
R 232 2205 22050 45.4us 81.2us 0.00 0.00 0 S16LE 1 22050 + pw-play
I’ve tried finding something out in pw-top but all the DAWs looked the same to me, I can also make some screenshots if you expect that I could’ve missed something there, that can absolutely be the case, but when I’m loading a DAW, it just looks like that:
R 89 1024 48000 418.5us 5.2us 0.02 0.00 1221 S32LE 2 48000 alsa_input.usb-Focusrite_Scarlett_2i2_USB_Y81P4VP063F930-00.pro-input-0
R 88 0 0 86.4us 52.9us 0.00 0.00 1 S32LE 2 48000 + alsa_output.usb-Focusrite_Scarlett_2i2_USB_Y81P4VP063F930-00.pro-output-0
R 143 0 0 98.4us 167.8us 0.00 0.01 0 + REAPER
R 89 1024 48000 245.5us 1.1us 0.01 0.00 1221 S32LE 2 48000 alsa_input.usb-Focusrite_Scarlett_2i2_USB_Y81P4VP063F930-00.pro-input-0
R 50 0 0 38.8us 6.1us 0.00 0.00 0 + Midi-Bridge
R 54 0 0 8.2us 30.2us 0.00 0.00 0 S32LE 2 48000 + alsa_input.pci-0000_00_1f.3.analog-stereo
R 64 0 0 55.6us 2.7us 0.00 0.00 0 + bluez_midi.server
R 79 0 0 45.1us 17.5us 0.00 0.00 0 S16LE 1 48000 + alsa_input.usb-Lenovo_ThinkPad_USB-C_Dock_Audio_000000000000-00.mono-fallback
R 88 0 0 9.6us 12.1us 0.00 0.00 1 S32LE 2 48000 + alsa_output.usb-Focusrite_Scarlett_2i2_USB_Y81P4VP063F930-00.pro-output-0
R 143 0 0 12.4us 146.1us 0.00 0.01 1 + ardour
Apart from extra devices that are not used by Reaper, it looks more or less the same, and I’m not sure if it can be the reason, but I tend to doubt it.
I’ve also checked what the whole setup looks like in Helvum, and actually there I’ve seen the most noticeable difference between Ardour/Mixbus and other DAWs. Both Reaper and Bitwig are represented as a simple entry with one stereo input and one stereo output, while Ardour and Mixbus are both complex entries with a lot of inputs and outputs for each track/bus, metronome, master output, etc, I’m not sure though, if it is relevant for my issue, but to me, it seems like it can produce a way more load on Pipewire.
UPD: Another interesting observation I’ve made, was that when I run two DAWs in parallel, and both of them are playing ~20 tracks with a lot of reverbs, they are playing along just fine, and I can hear no issues at all, no stutters, freezes, nothing stops to respond. That most probably means that my idea about overloading Pipewire is wrong