[HN Gopher] Gpwgraph - PipeWire Graph Qt GUI Interface
       ___________________________________________________________________
        
       Gpwgraph - PipeWire Graph Qt GUI Interface
        
       Author : jlpcsl
       Score  : 93 points
       Date   : 2022-10-22 10:46 UTC (12 hours ago)
        
 (HTM) web link (gitlab.freedesktop.org)
 (TXT) w3m dump (gitlab.freedesktop.org)
        
       | 8K832d7tNmiQ wrote:
       | Quick question, is there a single GUI app that actually let me
       | control Pipewire pipeline? the command line approach is very
       | user-unfriendly and there are tons of options that no normal user
       | even understand what each of those parameters even mean for.
        
         | rektide wrote:
         | What does pavucontrol not do that you want? It seems like by
         | far the most powerful option I've seen on any OS. Nicely usable
         | by regular users, and still good caoabilities for power users.
         | Works great via the built in pulseaudio api support in pipewire
         | which nicely wraps pipewire capabilities.
        
       | Dx5IQ wrote:
       | I love this! It makes it trivial to route audio to/from any
       | devices and programs. Does anyone know anything similar for
       | Windows?
        
         | mook wrote:
         | Because of pipewire this works for the whole system, and I
         | don't think there's a Windows equivalent for that. But for
         | editing a graph for a single playback pipeline there's
         | GraphEdit+ for DirectShow which is kind of similar (but not as
         | powerful)?
         | 
         | + https://learn.microsoft.com/en-
         | us/windows/win32/directshow/u...
        
         | alexvoda wrote:
         | There used to be such tools for DirectAudio, but that is
         | deprecated(but in Windows style, never abandoned). Not sure
         | about the newer framework.
        
         | rvense wrote:
         | This is just a GUI for the underlying Pipewire sound software,
         | which is what the applications actually talks to. I don't think
         | you get something like that on Windows.
        
         | spacechild1 wrote:
         | Jack also works on Windows.
        
           | viraptor wrote:
           | True, but applications have to support it explicitly. For
           | pipewire, you see everything, so if you want to wire up
           | Firefox to your daw, you can.
        
         | Cloudef wrote:
         | ASIO, you can use it with JACK https://www.asio4all.org/ Note
         | however, unlike pipewire, this only works with ASIO (or JACK)
         | compatible software.
        
       | aquova wrote:
       | I've been using this program for a while (and it's GTK
       | alternative Helvum), and it's quickly become one of my favorite
       | tools. I picked up an inexpensive USB capture card, and the
       | ability to simple pipe the audio stream into any sink I wish,
       | such as headphones, speakers, OBS, etc. Is such a simple solution
       | compared to struggling with audio settings trying to get the
       | right combination. It's also probably the simplest solution to
       | getting audio sharing in Discord, since they continue to not
       | support it in Linux, even if the solution is still a bit of a
       | hack.
        
       | dundarious wrote:
       | The title is wrong, it's a "Q" prefix not a "G" prefix.
        
         | jlpcsl wrote:
         | True. I did use correct qpwgraph (with lowercase q), and don't
         | even know who broke the title as I did not touch it at all.
        
           | teawrecks wrote:
           | Well that is odd...
        
       | kevincox wrote:
       | Interesting that it is based off of QjackCtl and looks nearly
       | identical. I've been using QjackCtl with pipewire and haven't
       | found any issues so I wonder what the differences with this
       | version are.
        
         | Cloudef wrote:
         | I would imagine it having video stream support as well would be
         | a major difference
        
         | carlhjerpe wrote:
         | The underlying API that the application talks to would be one
         | thing.
        
         | rvense wrote:
         | It's the same main author, I think. He writes the Qtractor DAW,
         | too.
        
           | jlpcsl wrote:
           | Yes, the same author, Rui Nuno Capela AKA rncbc, creating a
           | lot of cool audio software - https://www.rncbc.org/drupal/
           | also can be followed on Twitter https://twitter.com/rncbc
        
             | kinleyd wrote:
             | Good to know. Great to see established devs in linux audio
             | bringing in new tools for pipewire.
        
         | jcelerier wrote:
         | qpwgraph would also handle video streams I guess
        
       | mnd999 wrote:
       | Is it possible that if you need to visualise it on a graph that's
       | an indication that it's too complex.
        
         | capableweb wrote:
         | What's the alternative? Bunch of rows where you connect things
         | by selecting in/out in a dropdown?
         | 
         | Some problems are just complicated and visualizations help make
         | it easier to understand. More complex audio routing than
         | "application > audio out" tend to be one of those problems.
        
         | bluGill wrote:
         | People have simple problems don't need to visualize the graph,
         | the automatic connections just work. However there are people
         | doing a lot of complex things. When i'm watching YouTube
         | I.don't open the graph, but when i'm recoding audio I do as
         | then I need to control where each connection is going, and the
         | whole setup is very complex
        
         | chris_wot wrote:
         | Things should be as simple as possible, and not simpler.
        
         | anthk wrote:
         | BeOS/Haiku was like that.
        
         | kaba0 wrote:
         | I think a directed graph is probably as intuitive and close to
         | the truth regarding streaming audio/visuals that it is a very
         | good mental model to have as an end user.
         | 
         | Also, it's wide spread use in e.g. blender and other
         | professional video editors do make me think that it is a great
         | abstraction.
        
       | kinleyd wrote:
       | Just stumbled across this a few days ago. Very pleased to have it
       | in my pipewire audio stable. Linux audio is moving along very
       | nicely!
        
       | ZoomZoomZoom wrote:
       | It would be great if you could actually set some default
       | connections right in there.
        
         | majewsky wrote:
         | You might be interested in this little tool of mine:
         | https://github.com/majewsky/jack-autoplug - It's using the JACK
         | API, so it works with PipeWire out of the box. I run instances
         | of this tool as systemd services, grouped into targets. To
         | switch pluggings on and off on demand, I have global keybinds
         | connected to scripts like this:                 #!/bin/sh
         | set -euo pipefail       if systemctl --user is-active --quiet
         | autoplug-group.target; then         systemctl --user stop
         | autoplug-group.target       else         systemctl --user start
         | autoplug-group.target       fi
        
         | kinleyd wrote:
         | I haven't tried it yet, but wouldn't a patchbay profile
         | suffice?
        
       ___________________________________________________________________
       (page generated 2022-10-22 23:00 UTC)