Ardour seems not to be detected by pipewire (fedora 36)

Hello everybody,
I did reinstall some times ago my fedora35 (a previous update had not been correctly implemented, reason why I reinstalled everything). But I discover today that Ardour does not appear in my qjackctl graph, and no sound go out…
I tried with another DAW (Reaper, to name it), ant it appeared. Other softwares using sounds appear also (firefox or Rhythmbox).
Could you help me sort this out ?
Thx,

Fedora, again, packages Ardour’s backends (JACK, ALSA, Dummy) separately, and also recently changed things to use pipewire by default.

Perhaps check if there are any ardour-* packages that you may have missed to install.

Short of using an official binary from http://ardour.org/download.html, best ask Fedora packagers.

Not sure if it is applicable to this case (running Fedora 35), but a recent Fedora 36 update replaced the separate Ardour and backend packages with a single package named ardour6. The latest and one previous release are usually kept synchronized for package updates, so a similar change may have occurred for Fedora 35 as well.

I did just check, and the Fedora 36 repository version of Ardour 6.9.0 (ardour6-6.9.0-10) did connect to the repository version of JACK (1.9.20-2), so I don’t think there is a general problem affecting all Fedora builds currently.

One thing of note is that looking through the repository mirrors I see the updated Ardour build in the F35 updates, but I only saw JACK version 1.9.19, so possibly the 1.9.20 update was not made available in F35, only Fedora 36.

Hello, Thx for your advices.
I updated to fedora 36. Tried Ardour from fedora package and Ardour official binary. Does not change anything… Sound is fine with rhythmbox, firefox, Reaper…etc but nothing for Ardour.

PS : I changed the title, I suppose it’s pipewire that is not connected to ardour…

If it is a pipewire problem you may have to start Ardour using pw-jack.
I seem to have to do that for certain programs for some reason.

Start a Terminal and run pw-jack /path/to/your/ardour/binary and see if that works.
You can also add flags like -p 512 -s 44100 , for 512 periods and 44.1kHz sample rate respectively.

If that does not fix your problem, you may need to step back and verify all the basics first.

With pipewire Ardour gets a little more complicated, because Pipewire can run with or without JACK API support. The first to verify is that your Pipewire installation actually has JACK support installed. That would be indicated by having the package pipewire-jack-audio-connection-kit installed. Firefox and Rhythmbox don’t use JACK, so the fact that they work just indicates that the Pipewire ALSA emulation is working correctly, it doesn’t tell you anything about JACK support.

If pipewire-jack-audio-connection-kit is not installed, fix that first. Likely that package is already installed, I believe that by default Fedora will install that package with Pipewire, but possibly you need to add it explicitly.
I think qjackctl would show an error if the Pipewire JACK interface was not running, so I do not expect that is the problem, just listing it for completeness. I will also mention that you have the option of using jackd from the JACK project, but that turns into a workflow where you segregate audio production and normal desktop use, you lose the convenience of easily having all audio applications usable along with JACK-aware production applications such as Ardour. Probably not what you want, just mentioning it for completeness.

The last step is to verify that when you start Ardour it is actually using the JACK backend and not the Alsa or Pipewire backend.
Look in the Audio/MIDI setup window, and verify that it lists JACK as the backend in use (listed in the Audio System setting). The window example in the manual shows the ALSA driver in use, you would want to make sure your session shows JACK and not ALSA in that first selection:
Audio/MIDI setup in Ardour manual

The session samplerate will need to match the running JACK samplerate. Unless there is some recent development that I have not seen, changing the Pipewire settings is more cumbersome than using jackd.

Looking back at some old notes, this seems to be the way that you modify the audio settings temporarily from the defaults:

pw-metadata -n settings 0 clock.force-rate 44100
pw-jack /opt/Ardour-6.9.0/bin/ardour6

That would change the sample rate to 44100 if your default is 48000. You could of course go the other way, if your default is 44100 you could temporarily force 48000 if needed. I do not remember if you can also set the pipewire-jack buffer sizes with that same command.

I am not sure if there is any difference is making setting changes using pw-metadata then starting programs with pw-jack compared to adding the -p and -s flags to the pw-jack call like Peder Hedlund recommended. Pipewire has been changing so quickly that the best action is to check the latest documents to verify the recommended method.
The Fedora update repository currently has version 0.3.51, and that is the latest tag in the Pipewire source server, so I think development has slowed enough that Fedora installs the latest version. That should simplify checking the online documentation, since your running version will not be outdated compared to the latest available project version.

It may also be useful to install jack-audio-connection-kit-example-clients if you do not have that package installed. That includes the programs jack_lsp to list all the jack ports available, and jack_bufsize and jack_samplerate to verify the current buffer size and sample rate (in case you need to create a new Ardour session for testing and need to match the current sample rate). The jack_bufsize app can also request a change in buffer size for a running JACK instance, but I’m not sure if Pipewire supports that yet, and if it does what happens to running clients.

Hello again,
I followed almost all the steps, and the solution was rather straight forward since it was in the audio/settings that Jack was not selected. Once done, everything went fine.
Thx to all and specially to @ccaudle with this extensive answer :slight_smile: