Dear #linuxaudio friends, what are your thoughts on my dream of a new #pipewire / #wireplumber app? 🤔
https://amadeuspaulussen.com/blog/2026/a-new-pipewire-and-wireplumber-app
Dear #linuxaudio friends, what are your thoughts on my dream of a new #pipewire / #wireplumber app? 🤔
https://amadeuspaulussen.com/blog/2026/a-new-pipewire-and-wireplumber-app
@amadeus what an amazing - and bold - idea! I could see this go in many directions.
I personally only use Helvum, and I rarely ever open it, since Bitwig has native pipewire and other than that, I use Carla to use VST3s on a line in for OBS use.
That being said: If the things you mention are all possible, it would be a crazy strong argument for using Linux for more complex and interesting approaches to audio production.
@amadeus I could also see how this, if build open and with the right approach, could create opportunities for producers of audio interfaces, to make their new complex software mixers, so control the interfaces with - with functions you would never or rarely have on other platforms.
That could especially be exciting for systems like UAD; that could create an even stronger system than their current Universal Console, which could actually make the audio devices usable as full featured live mixers.
@amadeus the idea that you could use your audio interface as a live mixer - instead of using your live mixer as an audio interface - would really be attractive to people doing a lot of live recordings.
I have actually done this with my UAD setup for streams during the lockdowns - but I needed to manually route different channels to an AUX, so I could use physical wires to connect the channels into a masterchannel, where I could have different effects.
@sandycorzeta You might be right, maybe I went toofar. But, you know, I just wrote down what I would love to use. 😜😇
The “plug-in injection” feature in particular could be great for achieving some kind of UAD (and others) workflow for live applications—with more latency, but still convenient and powerful. Not sure if that makes any sense.
@amadeus is coppwr on your radar? Some of the config & monitoring stuff might be possible with it, and it might be worth suggesting features there too.
I currently just use qpwgraph for routing and I manually edit the jack buffer size in the config file. Some of the features you've listed would be nice, eg xrun monitoring, but I'd probably only use them in a lightweight tray applet, not a kitchen-sink app. Just my preference.
@dried I looked at it once, but it was too technical for me at the time. 🫣😅 However, given the circumstances, I now need to take a closer look at it. Thanks for mentioning it!
@fortifieduniverse Are you familiar with coppwr?
@fortifieduniverse I didn’t think about Session Mixer yesterday 🫣—somehow I seem to have filed it away in my tired brain under “Focusrite.” I’m sorry 😞
Do you see me using Session Mixer in the future with the features I am looking for?
I simply had the impulse to write down what I’d like to see in an app like this.
But let’s talk about it soon, okay?
@mosgaard @amadeus Yes, the goal would eventually be to support a range of interfaces with different capabilities. What you'll ultimately be able to do with SessionMixer will be determined by what your interface exposes via ALSA.
The Focusrite interfaces just happen to expose all of the internals through ALSA, so it's quite possible to control the internal mixers and routing and such.
Ultimately SessionMixer will also end up managing PipeWire, also.
@fortifieduniverse @amadeus that sounds like a really great approach. I have been a fan of the project all the way, and now even more.
I think it's smart starting with the ALSA part, I presume this means you can route directly from an input to an output (at least that's how I interpreted your posts and Github) without the need to go through Pipewire? If yes, would there be a latency advantage in that?
Pipewire routing is quite easily managed now, so I understand if that's not a priority.
Yes, you can control all of the routing inside the interface with SessionMixer. There is definitely a huge latency advantage in that. That's typically why people want onboard mixing.
Minor thing... ALSA in this case is only used because that's where the internal controls for the interface are exposed. ALSA isn't used to pass audio of any kind... it just provides the mechanism to manage the state of the hardware.
@fortifieduniverse @amadeus I’m afraid we enter technical things I’m not completely sure I understand.
So sorry if this is just repeating.
Can it be expected that sound can be internally routed in all class compliant interfaces?
And if yes: What does it take for SessionMixer to start supporting a specific audio interface?
@fortifieduniverse @amadeus thanks!
So to make internal routering (if the hardware design allows), the system needs to get a usable driver for that specific unit?
Because I could see this be REALLY awesome with my Allen Heath QU-SB. It has internal routing using the Allan Heart app, which kind of sucks (atleast to me).
@fortifieduniverse @mosgaard
I’m not sure how mature your vision for a universal SessionMixer is. I’ve looked at the roadmap, but I’d love to learn more.
Personally, I’d like to identify the best concepts and workflows from coppwr, qpwgraph, Cable, helvum, Loopback, UAD Console, RME TotalMix, and Focusrite Control; distill them together with our own ideas; and design UI/UX sketches for a PipeWire app so good that distros will want to ship it by default. 😎
The vision is more mature than what's on that roadmap board. It's just not well documented yet.
I think we have similar goals, but we may or may not be headed in the same direction with the approach. We can certainly discuss...
@amadeus I agree that this all sounds quite nice to have, but I make minimal use of routing at this time as I don't have an audio interface and everything is "in the box".
I wonder if it might help to have it shown why these are things we should want to have?
@amadeus I think anything that makes pipework better, even if it doesn't affect me is a good thing.
Currently, in order to toggle mute in my system I fire off a keyboard event for the special keyboard button that toggles audio mute.
I tried doing it through the pipewire cli first but gave up and did it this way instead.
@amadeus This almost sounds like raysession but with pipewire features added.
Having a kind of "session management" where you can store both connections and application state (that NSM for JACK already provides and which pipewire supports) would be pretty important in a studio setting.
@amadeus I don't see the relation to hardware interfaces though. This is fundamentally a completely different problem to solve.
Also if you start your design with a list of feature creep then you will never create a functioning product ;)
So find the most pressing issues to solve (like config level things that are currently hard) and start there!
I would like a modern replacement for pavucontrol made for pipewire ;)
@dreamer Thanks for the good advice! Makes total sense. At the very least, the features in my wishlist need to be prioritized, and there are certainly quite a few priority 2 and 3 items on my list. 🫣😜
Doesn't that already exist? See: https://github.com/saivert/pwvucontrol
@dreamer That's interesting you say that, thanks for sharing!
As new to Linux, all my audio-trouble disappeared when I started using Bitwig, which also gave me - internally - more features than other DAWs I tried.
That could of course be a question about how the DAW is wired, but I took it as a clear sign that Pipewire was a step forward - especially for me as a "new to Linux" user.
@mosgaard When you run a DAW as the central hub for an audio system you usually don't need pipewire or jack at all. You can just run alsa and have the DAW take control of everything.
For me that's a huge limitation and the poor integration with Linux MIDI is my biggest gripe with Bitwig ;)
@dreamer I really appreciate you taking the time to explain this, thanks!
I just tried to open a project in Bitwig and switch the driver model to ALSA, and so far, that also works really well for me on my system. So what I experienced could just be other DAWs not working properly regarding driver model on the distros I have tried.
Could you elaborate on the limitations with MIDI? Is it general to LINUX or depended on driver model?
@mosgaard Bitwig requires "direct access" to hardware devices which means these devices are subsequently blocked from other applications on the system. By extension Bitwig cannot communicate with other software MIDI applications either.
There is a tedious workaround using virtual midi ports, but this has bad UX and doesn't always work.
@dreamer ah, ok. I understand!
This is not something I have encountered since I don’t have the need to use midi other places. But I could see this becoming a problem for some, especially on a live setting.
Is it your impression it’s intentional?
@mosgaard I have spoken to one of the devs over the years, it was originally a design choice, but not necessarily deliberate. I thought it had to do with hardware integration, but that was not the case.
For proper Linux MIDI integration I prefer Qtractor and Ardour ;)
(but their MIDI sequencing isn't as good/fun)
If Bitwig ever decides to bring the same level of integration they have with audio (jack and pipewire) to MIDI then I'll have a good incentive to upgrade my license!
@amadeus Also, but I don't really see why such an application for configuring the system also needs to have highly specific hardware control.
While I understand wanting to put everything + kitchen sink into a single place, this also lowers the chances of success for such a project ;)