Python dearpygui based patchbay interface for PipeWire
Intended to be an easy to use graph of nodes, with more power than a traditional list but focusing on QOL options instead of advanced controls and effects. Vaguely based on https://github.com/stuin/pipeflowQt, which was originally by Oskude
- Display Nodes, Ports and Links
- Create and Destroy Links with mouse
- Or ctrl-click to destroy link
- Set channel volumes
- Lock volume sliders together
- Mute nodes
- Set default audio Sink and Source
- Hide nodes by name or with button
- Sort by API/Type/Name
- Group into connected sets
- Link/Unlink both node channels at once
- Shortcut to create audio loopback
- Menu for custom command shortcuts
- Log of control commands in menu
- Option to log commands to file
- Config options are saved to file (
pipeflow_config.json)
- Live audio visualization
pip install -r requirements.txt
python3 pipeflowIm.py
python3- https://www.python.org/dearpygui- https://dearpygui.readthedocs.io/en/latest/index.htmlpipewire(pw-dump,pw-link,pw-metadata, etc.) - https://pipewire.org/
- pipeflowIm - main runtime, all GUI setup and callback functions
- pipeflowData - data structures for holding pipewire nodes and gui elements
- pipeflowMonitor - looping thread to read from pw-dump and update pipeflowData
- pipeflowControl - commands to send to pipewire
