Schon vor ein paar Wochen habe ich mein System auf Linux Mint 22 aktualisiert und auf verbesserte Funktionalitäten mit PipeWire und Jack gehofft, doch der Umgang mit dem neuen Soundserver ist zunächst hakelig. PipeWire hat nun die Versionsnummer 1.0.5, PipeWire ist der neue Standard für Linux.
Ich benutze auf meinem älteren Laptop bisher eine komplexe Audiokonfiguration mit ALSA, Jack2 und PulseAudio. Als Software verwende ich QjackCtl 0.9.13, OMB v12.2 for Windows unter Wine 9, Carla 2.5.8 mit diversen Plugins, u. a. dem Synth1 von Daichi V1.13 unter Wine 9, Ardour 8.4.0, Musescore 3.0, Mixxx 2.4.1 und weitere Audioplayer.
Als Patchbay kommt bisher Graph von QjackCtl zum Einsatz, da die Patchbay von Carla immer noch die Positionen vergisst.
Mixxx kann bisher leider nur unter ALSA eingerichtet werden.
Es wird bisher nur die native Installation von Jack genutzt, nicht die Emulation in PipeWire. Qpwgraph zeigte nur wenige Knoten an, die Patchbay von Carla allerdings viele davon. Beim Upgrade auf Linux Mint erfolgt die Migration zu PipeWire offensichtlich nicht automatisch.
Irgendwie ist das so nicht optimal.
PulseAudio deinstalliere ich gemäß Empfehlung vollständig, installiere dafür den Sessionmanager wireplumber. Benutzbar bleibt pavucontrol trotzdem, obwohl es ein Lautstärke-Tool pwvucontrol gibt. Die beiden unterscheiden sich ein wenig.
Experimentieren ist nun angesagt. Nach geraumer Zeit wird mir klar, dass die Jack-Emulation in PipeWire, also pw-jack, nicht aktiv ist. Was tun? Die unübersichtlichen, vielen .conf-Files von PW und Jack in /usr/share/pipewire/ verändern und nach /etc/pipewire/ kopieren? Das Utility coppwr für wireplumber, aus Flatpack geladen, könnte das eventuell per GUI ermöglichen. Das Tool ist aber bedauerlicherweise nichts für engagierte Laien, da viel zu kompliziert und undokumentiert.
Irgendwann komme ich auf Ubuntu Studio, denn da gibt es neuerdings eine Audio Configuration Utility mit GUI für Pipewire und Jack. Eine Version davon, ubuntustudio-pipewire-config (24.04.26), ohne GUI, finde ich in der Synaptic Paketverwaltung von Linux Mint, Suche nach ubuntustudio pipewire jack. Die ist schnell installiert. Sie schaltet die Jack-Emulation unter PipeWire ein und stellt basale Größen wie die Puffergröße auf 1024 und die Samplerate auf 48000 ein. Danach funktioniert alles wie geplant und erhofft.
Ein simples Konfigurationsscript für PW-Jack wird hierdurch unter /sbin/ abgelegt. Das ermöglicht beim Aufruf mit sudo /sbin/ubuntustudio-pwjack-config die Einstellung der obigen drei Parameter. Nach Neustart sind sie als gewählt erkennbar, Carla zeigt das in der unteren Leiste an, ohne dass QjackCtl bzw. Jack nativ laufen.
Nun füllt sich die differenzierte Patchbay von qpwgraph mit beschrifteten Knoten (PW, Jack, ALSA, PA-Zeichen, farbliche Unterschiede). a2j_config ist ab sofort überflüssig wegen der MIDI-Bridges von PW. Das funktioniert tatsächlich. Und sichern kann man die Patchbays auch endlich, sogar unter frei wählbaren Namen. QjackCtl kann man zum Test starten, das ruft aber nicht mehr den nativen Jack-Server auf. Ich finde keine Konflikte zwischen der nativen Installation und der Emulation von Jack.
Da die automatische Samplerate-Konvertierung von PW noch buggy ist, stelle ich überall 512/48000 manuell ein. Danach kann ich die erwähnten Software-Pakete alle gleichzeitig aufrufen, ohne dass es zu Dropouts kommt. Der DSP ist dann zu maximal 30 % ausgelastet. Bitte bei Mixxx nur die zweitbeste Pitch-Korrektur Rubberband einstellen, sonst kommt es doch zu Dropouts.
Die kleine externe USB-Soundkarte kann ich einfach einstecken. Sie wird erkannt, automatisch konfiguriert und ist sofort benutzbar, auch unter Mixxx mit Konfiguration Jack Audio Connection Kit.
Das war einmal mehr eine komplizierte Story aus Nerdistan. Es bleibt festzuhalten, dass PipeWire als multifunktionaler Soundserver mit Jack unter Linux Mint 22 bei richtiger Konfiguration nach Aktivierung tatsächlich die eierlegende Wollmilchsau oder das berühmte Schweizer Taschenmesser zu sein scheint.
Vermutlich ist es für Newcomer besser, gleich Ubuntu Studio zu installieren. Andererseits, was macht man mit gewachsenen Audio-Systemen unter Linux? Für diese ist das Ubuntu Studio Pipewire Jack configuration utility aus der Linux Mint Paketverwaltung die Lösung schlechthin. Jedenfalls war es so bei meinem System.
Further reading: https://blog.rtrace.io/posts/the-linux-audio-stack-demystified/
MuseScore 3 kann danach sowohl über die ALSA als auch über Jack mit MIDI genutzt werden. Das, was vorher hakelig wirkte, funktioniert nun dank Pipewire in richtiger Konfiguration problemlos.
Super, das Konfigurationsscript schaltet pw-jack (Pipewire-Jack Plugin) ein. Danach funktioniert Linux Audio unter Linux perfekt. Die Patchbay ist logisch, nach den Typen ALSA, Jack, Pusaudio und PW benannt. Dropouts gibt es auch keine mehr!