iArt.ai
AI motion graphics software — the After Effects alternative anyone can use. Create animations and explainer videos from a text prompt in minutes.
Fonyx puts each Linux application on its own mixer channel, with EQ, dynamics and routing to any output. Free software, built on PipeWire.
MediaRust · HTMLGitHub @ArdenDiagoOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
A modular audio routing system for managing channels, buses, signal paths, and real-time DSP
Loading the full README.
Read the full README ↗Spotify in your headphones, Discord on the speakers, the game on both with its own EQ, and a browser tab that ducks everything when it talks. Fonyx puts each application's audio into a group: a real PipeWire bus with its own fader, its own processing chain and as many outputs as you like.
A background daemon owns the audio graph and does all the processing, so
nothing stops when you close the window. The desktop app, the fonyx CLI
and the Quickshell surfaces are all thin clients over one D-Bus interface.
Fonyx is new, and in public beta. Its features are in daily use on Arch Linux and checked by automatic tests on Ubuntu 24.04, but it hasn't met many other systems yet. Try it, and tell us how it works on yours:
Reproducible bug reports are the most useful feedback there is.
From source, as systemd user services with a watchdog (no root):
git clone https://github.com/ArdenDiago/Fonyx.git && cd Fonyx
sh packaging/install-user.sh
As an AppImage, to try it without installing anything: download
Fonyx-x86_64.AppImage,
then:
chmod +x Fonyx-x86_64.AppImage
./Fonyx-x86_64.AppImage
It starts its own audio engine and stops it when you close the window. It needs PipeWire with WirePlumber on a recent distribution (Debian 12, Ubuntu 23.04, Fedora 37, Arch, or newer).
From the Snap Store: coming soon. A one-line snap install fonyx is on
its way. Until then, use the AppImage or build from source.
Then drive it from the window, or from a terminal:
fonyx group create Music
fonyx input move spotify Music
fonyx fader set Music -6dB
fonyx system status
wpctlclang (for pipewire-rs bindings) and
webkit2gtk-4.1 (Tauri's webview)quickshell for the shell surfaces, Node.js for the UI testspacman -S clang webkit2gtk-4.1 # Arch Linux
cargo build --workspace # daemon, UI and CLI
cargo test --workspace # unit tests, no PipeWire needed
cargo run -p fonyx-daemon # RUST_LOG=info for stream and group logging
cargo run -p fonyx-ui # in a second terminal
The UI connects to the daemon at startup, so start the daemon first. Developed on Arch Linux; CI builds and tests on Ubuntu 24.04. Install details are in Packaging, every command in Command line.
Captured in a throwaway PipeWire session with four demo streams playing.
Routing
Every app lands in a protected Default group, so nothing bypasses the mixer
Send a group to several outputs at once, each with its own gain, switch and delay compensation
Master bus: the sum of every group, routable on its own
Cue bus: solo an app into your headphones while the rest ducks there
Own DSP: give one app its own group, cloned from where it was
Per-stream left / right / stereo isolate
Sound, per group
Gain under a master fader
High-pass and low-pass filters
Six-band parametric EQ with a whole-curve level offset
Compressor and gate
Plugins: Soft Clipper, Stereo Widener, Deep Bass, Mids
Mono/stereo, pan, and an always-on safety limiter
Every parameter smoothed. Nothing clicks, nothing snaps
Automation
Scenes: capture and recall the whole mixer
Profiles: an app returns to its group and volume when it restarts
Rules: react to app start/stop, device plug/unplug, scenes, resume from sleep
Ducking: lower chosen groups while another one is active
Tools
Record a group's processed signal to WAV or FLAC
Doctor: health checks for groups, buffer, underruns and outputs
Signal-flow graph from streams through groups to outputs
Live meters, spectrum, gain reduction, CPU and RAM
Three ways in
Desktop app (Tauri): ten tabs, a draggable EQ graph, a live compressor curve, keyboard control, light and dark themes
fonyx CLI: every mixer function by name, prefix or alias, with --json for scripts
Quickshell: a standalone app, a status-bar fader widget and a keybind popup
Built for Linux
PipeWire for every byte of audio
One D-Bus session service: org.fonyx.Daemon
systemd user services with a watchdog
Config in plain TOML at ~/.config/fonyx/
Close or crash any window; the audio keeps playing
Each group is a virtual PipeWire sink: a filter node that apps are linked into port by port, running the DSP chain in its realtime callback. Its output is linked to one small route node per output (gain, delay), and those to the devices. It is all one PipeWire graph cycle, so Fonyx adds no latency of its own.
| Area | Technology |
|---|---|
| Daemon and DSP | Rust, PipeWire via pipewire-rs |
| IPC | D-Bus session bus via zbus |
| Desktop app | Tauri 2, one HTML file, no framework, no build step |
| Shell integration | Quickshell (QML) through busctl |
| Packaging | Snap Store, user install script, systemd user units |
| Tests | Rust unit tests; Playwright endpoint and UI tests against a real daemon |
Solid arrows are calls or data flow at run time; dotted arrows show what the config file stores.
This is the beginning of the README. Read the rest at the original. Read the full README ↗