This is still a WIP, node layouting is kinda jank at the moment.
A compiled binary is available on the releases page.
To build pw-viz, you will need to have Rust installed. The recommended way to install Rust is from the official download page, using rustup.
Download and extract the source code to the latest release over on the releases page.
Alternatively, you can clone the main branch, although its NOT guaranteed to be stable or bug free.
git clone https://github.com/Ax9D/pw-viz
You'll need a few dependencies installed on your system depending on your distro to build pw-viz.
pacman -S pipewire pkg-config clang libxcb
sudo dnf install pipewire pipewire-devel clang libxcb-devel
If you are building on another distro, you can help fill in this section by opening a pull request.
Next, cd
into your source folder and then start the build using:
cargo build --release
Then you can copy the resulting binary(pw-viz) which will be found inside target/release
to a directory in your $PATH
, like /usr/bin/
Description | |
---|---|
Left Click + Drag | Move nodes, create links between ports |
Alt + Left Click + Drag | Remove links |
Middle Mouse + Drag | Pan the graph |
Ctrl | Shows pipewire ids of nodes and ports |
Zooming is not supported currently
- pipewire-rs: Rust bindings for PipeWire
- egui-rs: an easy-to-use immediate mode GUI in pure Rust
- A modified fork of egui-nodes: A egui port of imnodes
Pipewire connection code is inspired by helvum's implementation
- helvum: A GTK patchbay for pipewire.
pw-viz is licensed under the terms of the GNU General Public License v3.0. See LICENSE for more information.