The Linux audio dashboard Live SSE

Audiogravity

Take control of your Linux audio chain. From a browser.

Your streamer runs MPD, Roon Bridge, HQPlayer NAA, upmpdcli, Shairport-Sync — sometimes all at once, sometimes fighting for the same DAC. Audiogravity is the unified interface that orchestrates all of it from any device on your local network. No SSH. No terminal. No cloud.

30 d
Free trial
€29
Pro · one-time
Machine · perpetual
9:41

Services

Live SSE
All Running Critical RT
HQPlayer NAA
networkaudiod.service
UP
CPU18.4 %
Mem72 MB
DSD256 RT 80
MPD
mpd.service
UP
CPU0.6 %
hw:0,0 FIFO
Roon Bridge
roonbridge.service
DOWN
CONFLICT stopped
Sirens, pt. ii
Nicolas Jaar · A.A.L.
DSD256
Browse
Search
Services
System
The problem it solves
"The enemy of bit-perfect playback isn't the software. It's the kernel scheduler interrupting your audio thread for 200 µs to handle a network IRQ."

Built for the
listening room.

Twelve modules covering everything from one-click profile switching to microsecond-scale RT latency benchmarks. Starter tier ships with the essentials; Pro unlocks the deep audio-engineering surface.

PRO

Live signal-path visualisation

An interactive SVG graph of your entire Hi-Fi chain — source (NAS, UPnP, Qobuz, Tidal) through every active audio process down to the DAC. Pan, zoom, zoom-to-fit, minimap for complex topologies. Each link shows the exact stream format (PCM / DSD / MQA · 44.1 kHz → 768 kHz · 16 → 32 bit), a bit-perfect badge, per-link latency, and live play state. Click a link to hot-reroute MPD, HQPlayer NAA or AirPlay to a different DAC — without interrupting playback.

DAG · pan · zoom · minimap · hot rerouting
STARTER

One-tap profile scenarios

"Roon + HQPlayer" for serious listening. "MPD + upmpdcli" for UPnP. "AirPlay only" for background music. Each profile lists exactly which services to start and stop — conflicts resolved automatically. Atomic activation with detailed toast on failure.

Conflict resolution · atomic · history
PRO

Pin audio threads to dedicated CPU cores

SCHED_FIFO or SCHED_RR with priority 1–99. CPU affinity per service. MEMLOCK locks pages in RAM — no swap during playback. All written as systemd drop-ins. Reversible. Upgrade-safe.

FIFO · RR · MEMLOCK · RTPRIO
PRO

µs-scale latency benchmarks

Cyclictest from the browser. Histograms at the microsecond — the definitive proof that your RT kernel is operational, not just installed. Compare before/after, timestamped, archived.

cyclictest · iPerf3 · jitter histograms
PRO

Per-core governor control

Performance governor on audio cores, powersave elsewhere. Per-core thermal map. A THROTTLED badge fires the instant the kernel reports throttling — before your ear hears anything.

Performance · Powersave · thermal map
PRO

Edit audio service configs without breaking them

Form view for common settings (output, format, buffer). Raw CodeMirror editor with syntax highlighting for JSON, INI, XML and libconfig. Live validation before save — syntax, existing systemd units, circular dependencies, duplicates. Side-by-side diff. Automatic timestamped backup before every change.

mpd.conf · roon · shairport-sync · upmpdcli · live diff
PRO

Unified player across every source

Transport control over MPD, Roon, AirPlay and UPnP from a single interface. Play, pause, seek, volume (software or hardware), high-res cover art. Live Hi-Fi readout — format (PCM / DSD / MQA), sample rate, bit depth, instantaneous bitrate — refreshed on every track change. Pick the output zone: Roon zone, UPnP renderer or ALSA port.

MPD · Roon · AirPlay · UPnP · live Hi-Fi readout
PRO

High-resolution library

Browse Roon, MPD, MinimServer, upmpdcli, Qobuz and Tidal from one interface. Album view, full-text search, queue management, output-zone picker. No separate client needed. Qobuz and Tidal require an active subscription to their respective services.

Roon · MPD · UPnP · Qobuz · Tidal
STARTER

Service tile + 60 s sparklines

Live systemd state. Instantaneous CPU, memory, network and disk with LOW/MEDIUM/HIGH thresholds. Expected throughput reference (CD ≈ 1.4 MB/s, Hi-Res ≈ 10 MB/s, DSD64 ≈ 22 MB/s). Uptime shown.

Live systemd · sparklines · uptime
STARTER

Complete audio device inventory

Every ALSA card, USB interface, subdevice and hardware capability your kernel sees — without aplay -l or lsusb. Plus CPU, temperature, memory, disk and network at a glance.

ALSA · USB · sub-devices · hardware caps
STARTER

WebAuthn passkeys

Face ID, Touch ID, fingerprint, YubiKey. Multiple devices per user, managed individually. Role-based access — Admin, User, Guest — with session history.

FIDO2 · Face ID · YubiKey · RBAC
Now playing · HQPlayer NAA · DSD256
Shameika
Fiona Apple — Fetch the Bolt Cutters
Roon → HQPlayer → Heed Abacus S → Naim Nait 2
iPhone 15 Roon Core HQPlayer NAA Heed Abacus Naim Nait 2

Every device.
Every connection. Live.

The pipeline graph is the identity screen of Audiogravity. It renders your audio-topology.json — the physical and virtual map of your Hi-Fi chain — as a live, interactive SVG you can pan, zoom and steer from. Click any link to open the steering popover and reroute ALSA output without interrupting playback.

Qobuz · TidalHi-Res streaming Roon CorePCM 24/192 MinimServerUPnP · NFS HQPlayer NAADSD256 · upsampleFIFO 80 · MEMLOCK DAC · USBHolo May KTEDSD256 · bit-perfect AmplifierNaim Nait 2 Click any link → reroute ALSA output to a different DAC without stopping playback. Latency, RSSI and 802.11 protocol shown for every network hop.
Idle Active stream Bit-perfect

End the jitter.

A 200 µs interrupt is enough to make a DSD256 stream audibly grainy. Audiogravity configures the kernel scheduling parameters of every audio service through systemd drop-ins — never touching the original unit files. Upgrade-safe. Reversible. Verifiable with cyclictest.

What you control, per service

  • PolicySCHED_FIFO (strict) or SCHED_RR (round-robin RT)
  • Priority1 → 99. MPD at FIFO/80, shairport-sync at FIFO/60, workers below.
  • AffinityPin each service to one or more dedicated cores, isolated from the rest of the system.
  • MEMLOCKLock memory pages in RAM — no swap during playback.
  • RTPRIOCap RT priority for internal threads of the process.
  • GovernorPerformance on audio cores, powersave on idle cores, re-applied at boot.
# /etc/systemd/system/mpd.service.d/audio.conf
# written by Audiogravity · upgrade-safe drop-in
 
[Service]
CPUSchedulingPolicy=fifo
CPUSchedulingPriority=80
CPUAffinity=2 3
LimitMEMLOCK=infinity
LimitRTPRIO=95
Nice=-19
 
# verified by cyclictest
# max latency 47 µs · ✓ bit-perfect
2s

SSE telemetry, peak

Live CPU, temperature, I/O and network streamed to every connected browser. Backs off to 30 s at idle.

47µs

Cyclictest max latency

On a tuned Pi 5 with FIFO/80, CPU pinning and MEMLOCK — measured from the browser, archived with timestamp.

0

Cloud dependencies

Everything runs on your local machine. No account. No telemetry. Your music metadata, credentials and system state stay on your network.

An app on your phone.
Without an app store.

Audiogravity isn't just a web interface — it's a Progressive Web App, installable from Safari or Chrome to your home screen. Full-screen, dedicated icon, biometric login, push notifications when a service falls over.

Install in one gesture. Unlock with your face.

From Safari (iOS) or Chrome (Android), add Audiogravity to your home screen. The app opens full-screen, without browser chrome, with its own icon. After a first password login, register a passkey on the device — every subsequent login is Face ID, Touch ID, fingerprint or YubiKey.

InstallSafari / Chrome → Add to Home Screen → full-screen PWA
LoginFace ID, Touch ID, Android fingerprint, Windows Hello, YubiKey
Multi-deviceSeveral passkeys per user, managed one-by-one in your profile
PushNotification when a service fails, temperature crosses threshold, critical event — even with the app closed
Touch targetsWCAG 2.1 AA · 44 px minimum · responsive layout
9:41● ●●
Audiogravity
Streamer · online
Face ID to unlock
Roon Bridge stopped
2 s ago · streamer

Three tiers.
One-time payment.

Audiogravity ships in three tiers: a 30-day Trial with full access, a free Starter Edition that activates automatically when the trial ends, and a Pro License — a one-time purchase that permanently unlocks all features on one machine.

Trial
0
30 days · auto-activated

Full access to every feature on first install. No action required. Days remaining shown in Admin › License.

All Starter features
All Pro features
Pipeline · Player · Library
RT scheduling · cyclictest
·After 30 d → Starter
Start trial
Starter Edition
0
Free · forever · unlimited

Activates automatically when the trial expires — no action required. Everything you need to run and monitor your audio system.

Profiles — one-click chain switching
Services — live monitoring · start / stop / restart
Software — install · update · dry-run
System — hardware dashboard + audio inventory
Users — Admin / User / Guest roles
·Pro features locked
Get started
Recommended platform
Linux Debian or DietPi on x86_64 / Raspberry Pi (aarch64). Other distributions may work but are not officially supported. License is bound to the machine — moving to a new device requires a license reset, available on request.
01 Pay with PayPal Click "Pay with PayPal" in Admin › License. €29 one-time.
02 Receive your key License key delivered by email within seconds. Order code unique to you.
03 Activate this machine Click "License Key", enter the key, confirm. The signed .lic file is bound to your device.
04 Listen All features immediately available. No restart, no logout. No subscription.

On your streamer
in two commands.

No compilation, no dependency hell, no manual configuration. The installer detects your architecture, generates security keys, configures the systemd service and starts everything. Under five minutes from curl to listening.

  • RecommendedDietPi on x86_64 or Raspberry Pi (aarch64)
  • SupportedDebian / Ubuntu — any recent kernel
  • AccessAny browser on your network — phone, tablet, laptop
  • NetworkLocal only. Your data never leaves your home.
  • Trial30 days full access · auto-activated on first run
DietPi
Recommended
Raspberry Pi
4 / 5 · CM4
Debian / Ubuntu
x86_64
# 1. Backend curl -fsSL https://github.com/ad5030/audiogravity-releases/releases/latest/download/install-backend.sh \   | sudo bash # 2. Frontend curl -fsSL https://github.com/ad5030/audiogravity-releases/releases/latest/download/install-frontend.sh \   | sudo bash # Then open in your browser: https://<ip-of-your-streamer>