Skip to content

stuin/PipeflowIm

Repository files navigation

PipeFlow

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

Features

  • 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

Menu options

  • 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)

ToDo

  • Live audio visualization

Run

pip install -r requirements.txt
python3 pipeflowIm.py

Requirements

Structure

  • 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

About

Pipewire patchbay GUI using DearPyGUI

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages