For JACK, there is a GUI application called QJackCtl that lets you graphically route audio from sinks to sources in arbitrarily complex ways, especially when used in conjunction with additional mixers (e.g. jack_mixer):

Example of routing in QJackCtl

I'm wondering whether something like this exists for PulseAudio. I know that the basic building blocks for it are there (e.g. PulseAudio already lets you send audio from/to different applications to/from different sinks/sources, using pavucontrol or pactl), but what I'm missing is this graph-like view, with nodes and edges representing sinks/sources/mixers and connections, respectively.

The reason I'm asking is that I don't need JACK's realtime capabilities and running a hybrid PulseAudio/JACK setup is not only a waste of resources but also makes this kind of routing more cumbersome (as you have to set appropriate inputs/outputs both in pavucontrol and in QJackCtl). A pure-PulseAudio solution would be much nicer.

Slightly related to that (but not as important) is the question whether something like jack_mixer (linked above) exists for PulseAudio, which would present itself as several sinks and a source and allows the user to mix the incoming streams into an outgoing one, with a GUI for volume levels. pavucontrol by itself does not fit the bill, as it only allows setting volume levels for different streams "globally", not locally for just a specific mixing output.


Answering my own question because I finally found something: pagraphcontrol seems like exactly what I'm looking for.

pagraphcontrol example showing complex audio routing setup as graph

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.