Audiogravity - The conductor of your music streamer

Audiogravity - The conductor of your music streamer

Audiogravity is the conductor of your music streamer. It orchestrates every audiophile engine already on your box — MPD, Roon Bridge, HQPlayer NAA, AirPlay, upmpdcli, UPnP — and every source you rely on (NAS, Qobuz, Tidal, HIGHRESAUDIO, internet radio, MinimServer), then tunes the Linux kernel underneath. One interface, from your phone. Total control.

  1. Audiogravity
    Your streamer is your source. Audiogravity is the conductor.
    1. Editions
    2. Feature Overview — 21 modules
      1. Starter (free)
      2. Pro (€49 lifetime)
    3. Where it sits — five layers, three owned, two managed
    4. How it compares
    5. Audio priority — example drop-in
    6. Product Tour
      1. Profiles — one-click orchestration
      2. Services — granular control & sparklines
      3. Audio Software — install & update
      4. Audio Pipeline (Pro) — interactive signal path
      5. Performance (Pro) — measure & tune
      6. Systemd — safe RT drop-ins
      7. System dashboard
      8. Admin & RBAC
      9. Configuration editor
    7. Architecture
    8. Mobile · PWA · WebAuthn
    9. Installation
      1. Recommended — all-in-one (core + ui on one box)
      2. Advanced — split core and UI
      3. Optional flags (core installer)
      4. HTTPS — for passkeys and push
      5. Uninstalling
    10. Updates
    11. Privacy & Security
    12. Documentation
    13. License
    14. Acknowledgments

Audiogravity
Your streamer is your source. Audiogravity is the conductor.

The audiophile streamer interface. MPD, Roon, HQPlayer, AirPlay, UPnP sources and renderers, internet radio — every player, every source, down to DSD and Hi-Res PCM. Send your library to any network renderer. Audiogravity coordinates each component of your stack, from the system to your Qobuz, Tidal and HIGHRESAUDIO libraries, without replacing any of them. One interface. Total control.

Audiogravity is a control app for your music streamer: a single browser/PWA interface — phone, tablet, laptop — that runs on a Linux host next to your Hi-Fi. It does not replace the audio engines audiophiles already trust: it installs, configures, drives and orchestrates them (MPD, upmpdcli, Shairport-Sync, HQPlayer NAA + DSP, Roon Bridge, network UPnP renderers), connects the content sources they rely on (NAS, Qobuz, Tidal, HIGHRESAUDIO, internet radio, MinimServer), and tunes the Linux kernel underneath.

The enemy of bit-perfect playback isn’t the players you trust. It’s the kernel scheduler interrupting your audio thread for 200 µs to handle a network IRQ.

Designed for DietPi (recommended), Raspberry Pi (aarch64) and Debian / Ubuntu (x86_64).

Editions

Audiogravity ships in three tiers. Trial gives full access for 30 days; Starter takes over automatically after that and stays free forever; a lifetime Pro licence permanently unlocks the deep audio-engineering surface.

EditionPriceDurationNotes
Trial€030 days · auto-activated on first runFull access to every feature
Starter€0Free · unlimitedActivates automatically when Trial expires
Pro€49Lifetime · 1 machineBound to one installation; all v1.x updates included; preferential upgrade price for future majors

Payment is by PayPal from Admin › Licence. Key delivered by email in seconds. Activate by clicking Licence Key, paste the key, confirm — the signed .lic file is bound to your device. No restart, no subscription.

License model. The .lic file is cryptographically tied to the machine’s Device ID (hardware fingerprint). Lost your file after an OS reinstall? Re-download it yourself from the self-service portal (purchase email + Device ID — no account needed). Moving to a new machine? License reset available on request — contact contact@audiogravity.app.

Open core. The UI is open source (MIT). The core engine remains proprietary under EULA (French law).

Feature Overview — 21 modules

Starter (free)

  • Profiles — one-tap orchestration: “Roon + HQPlayer” for serious listening, “MPD + upmpdcli” to expose the streamer as a UPnP renderer (BubbleUPnP, Kazoo, OpenHome), “AirPlay only” for background music. Each profile lists the exact services to start / stop; conflicts resolved automatically; atomic activation with detailed toast on failure.
  • Services — live monitoring: start / stop / restart individual systemd units. Instant CPU, memory, network and disk with LOW / MEDIUM / HIGH thresholds. 60 s sparklines. Throughput reference (CD ≈ 1.4 MB/s, Hi-Res ≈ 10 MB/s, DSD64 ≈ 22 MB/s).
  • Audio Software — install, update, dry-run: MPD, Shairport-Sync, upmpdcli, HQPlayer NAA, Roon Bridge — one-click install and update with live SSE deployment logs. Architecture-aware (x86_64, aarch64).
  • System — hardware dashboard: every ALSA card, USB interface, subdevice and hardware capability the kernel sees — without aplay -l or lsusb. CPU, temperature, memory, disk, network at a glance.
  • Audio Services Config — safe in-place editing: guided setup detects DAC + music library and generates minimal bit-perfect configs for MPD, AirPlay and UPnP. Form view + full text editor with syntax highlighting (JSON, INI, XML, libconfig). Live validation before save, side-by-side diff, automatic timestamped backup.
  • Users & RBAC: Admin / User / Guest roles. WebAuthn passkeys (Face ID, Touch ID, fingerprint, YubiKey), multiple per user. Session history. Persistent or session-only login.
  • Internet radio: on the same transport as your FLAC library — same output zone, same Hi-Fi readout, live metadata, cover art. Curate stations, filter the catalogue down to Hi-Res.
  • Push notifications: service down, CPU critical temperature, update available, profile activated — even when the PWA is closed.
  • Auto-update with rollback: update banner in Admin, one click + password, live progress across the restart. Automatic rollback if health-check fails. No terminal.

Pro (€49 lifetime)

  • Unified transport across every player: one set of controls, every engine simultaneously — MPD, Roon, HQPlayer, AirPlay, UPnP. Stream origin badge always shows where the audio is coming from. Live Hi-Fi readout (format, sample rate, bit depth, instantaneous bitrate) refreshes on every track change. Queue reads every source with per-source badges and filter.
  • Live signal-path visualization: interactive SVG graph of the entire chain — every source, every active audio process, down to the DAC. Each link shows exact stream format (PCM / DSD · 44.1 kHz → 768 kHz · 16 → 32 bit), bit-perfect badge, per-link latency, live play state. Click a link to hot-reroute — gapless on MPD; AirPlay warns first (its receiver has to restart).
  • High-resolution library: Roon, MPD, MinimServer, Qobuz, Tidal, HIGHRESAUDIO from one interface. Album view, full-text search, direct playback with cover art. Star an album to favourite it on its streaming service; tap an artist to open their albums across every source. Local NAS/USB files cast to a network renderer, bit-perfect.
  • Audio priority — end the jitter: SCHED_FIFO / SCHED_RR scheduling, per-service priority (1 → 99, e.g. MPD at 80, AirPlay at 60), CPU affinity (dedicated cores), MEMLOCK (audio stays in RAM, never swapped mid-track), RTPRIO ceiling, CPU governor (Performance / Powersave / Schedutil / Ondemand) — all written as systemd drop-in files beside the originals, upgrade-safe, one-click revert.
  • Latency measurement (cyclictest): run it from the browser, read the result in microseconds. Reference achieved: max 47 µs on a tuned Pi 5 with FIFO/80 + CPU pinning + MEMLOCK. Each run timestamped and archived.
  • Thermal map: per-core heat map. THROTTLED badge the instant the machine slows itself down — before your ear catches it.
  • HQPlayer DSP remote: change interpolation filter, noise shaper, output mode and volume without leaving the couch. Auto-discovered on the LAN. Play any UPnP library track through HQPlayer’s DSP engine.
  • UPnP Control Point: discover every renderer on the network — network amps, dedicated streamers, DLNA speakers — and drive them directly. Bit-perfect, full resolution. Live “Up next” strip.
  • Auto-discovery: MPD, Roon Bridges, UPnP servers, AirPlay receivers, HQPlayer — SSDP + service-specific probes.
  • Network stability tests: iPerf3 throughput + jitter, high-precision ping. Verify the link is stable enough for DSD64/128/256.

Where it sits — five layers, three owned, two managed

Audiogravity does not compete with audio engines — it orchestrates them, installs and configures them, and tunes the OS underneath.

#LayerComponentsRole
5User InterfaceBrowser · phone · tablet · PWAowns
4Control / OrchestrationSource switching · transport · volume · UPnP renderer control · monitoringowns
3Content SourcesNAS · Qobuz · Tidal · HIGHRESAUDIO · Internet radio · MinimServermanages
2Audio EnginesMPD · Roon Bridge · HQPlayer NAA · AirPlay · upmpdcli · UPnP renderersmanages
1OS / KernelRT scheduling · CPU pinning · IRQs · ALSAtunes

How it compares

CapabilityAudiogravityRoonVolumioMoodeHQPlayer EmbeddedJPLAY iOS
Product natureStreamer (orchestrates audio engines)Streamer + cloud platformStreamerStreamerStreamer (DSP focus)Controller only
Multi-player orchestration (MPD + Roon + HQPlayer + AirPlay)partialpartialpartial (HQPlayer)
Native Tidal / Qobuz / HIGHRESAUDIO (vendor APIs, no UPnP required)✓ (Pro)partial (via upmpdcli)
UPnP MediaServer browse & search (NAS via MinimServer, upmpdcli)
UPnP MediaRenderer control (push to external streamer)control point
Acts as UPnP MediaRenderer (controllable from JPLAY / BubbleUPnP)via upmpdclipartial (RAAT)
Roon Bridge integrationnative
HQPlayer integrationDSP remote + NAAas endpoint
AirPlay receiver
System tuning for audio (FIFO, MEMLOCK, CPU affinity)
Latency measured in µs (cyclictest from the UI)
Live signal-path visualizationpartial
Config editor (diff + validation)partialpartial
Per-source bit-perfect lock (DSD volume protection)partialpartial
Internet radio (Radio Browser + custom stations)
PWA / web-installable
WebAuthn / biometric login
Self-hosted (no cloud account)account required
PricingFree / €49 lifetime$14.99 / mo or $829.99 lifetimeFree / €69.99 / yrFree€265 lifetime$49.99 / yr or $199 lifetime

Comparison based on public information from each vendor’s documentation as of 2026.

Audio priority — example drop-in

A concrete example of what Audiogravity writes for MPD when you enable RT priority:

# /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

Product Tour

Profiles — one-click orchestration

Audiogravity Audio Profile Management and Orchestration Tiles Profile tiles on laptop and mobile

Services — granular control & sparklines

Audiogravity Real-time Service Monitoring and Systemd Control Services tab with real-time CPU / memory / I/O per unit

Audio Software — install & update

Audiogravity Audio Software Package Manager and Installer Interface One-click install, update and uninstall for MPD, Shairport-Sync, Roon Bridge, HQPlayer NAA, upmpdcli…

Audio Pipeline (Pro) — interactive signal path

Audiogravity Interactive Hi-Fi Signal Path and Audio Pipeline Visualization Live SVG topology of the entire Hi-Fi chain — pan, zoom, minimap, hot-reroute

Performance (Pro) — measure & tune

Audiogravity System Performance Monitoring and CPU Governor Control Per-core governor control and thermal mapping

Audiogravity High-Resolution Latency Test and Cyclictest Histogram Cyclictest latency histogram — run from the browser, archived with timestamp

Audiogravity Network Stability and Iperf3 Throughput Testing iPerf3 stability test

Systemd — safe RT drop-ins

Audiogravity Systemd Service Tuning and CPU Affinity Configuration CPU affinity, RT scheduling, I/O priority — vendor unit files stay untouched

System dashboard

Audiogravity System Dashboard and Host Health Monitoring Kernel, uptime, partitions, secure reboot / shutdown / backend restart

Admin & RBAC

Audiogravity Administrative Dashboard and User Access Control Admin / User / Guest roles — enforced at API and UI level

Configuration editor

Audiogravity Audio Engine Configuration and Topology JSON Editor Structural editor for services, profiles, topology — with validation and diff

Architecture

graph LR
    subgraph CLIENT["Browser / PWA"]
        UI["Lit 3.3 Web Components"]
        SSE_C["SSE Client"]
        SW["Service Worker\n(offline / push)"]
    end

    subgraph API["FastAPI Backend (core)"]
        REST["REST API\nX-API-Key + JWT RBAC"]
        SSE_S["SSE Telemetry\nadaptive 2s→10s→30s"]
        MOD["21 Modules"]
    end

    subgraph SYS["Linux System"]
        DBUS["D-Bus / systemd\ndbus-fast"]
        ALSA["ALSA"]
        CONF["/etc/audiogravity/*.json"]
    end

    UI -->|"HTTP/REST"| REST
    UI -->|"EventSource"| SSE_S
    SSE_C --> SSE_S
    REST --> MOD
    SSE_S --> MOD
    MOD -->|"native D-Bus"| DBUS
    DBUS -->|"systemd units"| SYS
    MOD -->|"ioctl / procfs"| ALSA
    MOD --> CONF

Tech stack. Python 3.13 · FastAPI · Uvicorn · uvloop · dbus-fast · Pydantic v2 · orjson · JWT HS256 · BCrypt · WebAuthn (FIDO2 / Passkeys) · slowapi · Lit 3.3 · Vite 7 · CodeMirror · Service Worker · Web Push (VAPID).

Mobile · PWA · WebAuthn

An app on your phone — without an app store.

  • Install: Safari (iOS) or Chrome (Android) → Add to Home Screen → full-screen PWA, dedicated icon.
  • Login: Face ID, Touch ID, Android fingerprint, Windows Hello, YubiKey.
  • Multi-device: several passkeys per user, managed one-by-one.
  • Push: notification when a service fails, CPU hits critical temperature, or an update ships — even with the app closed.
  • Touch targets: WCAG 2.1 AA · 44 px minimum · responsive layout.

On iOS, only Safari supports PWA installation, and PWA installation is what enables push notifications.

Installation

One command on your DietPi / Debian box — core and interface together, keys generated, services started. Typically under five minutes from curl to the interface.

Early-access token required. During Early Access, a GitHub token is shared with approved testers. Request one.

curl -fsSL https://audiogravity.app/install.sh \
  | sudo bash -s -- --token ghp_xxx

Then open the interface:

https://<ip-of-your-streamer>

On first run, a 30-day trial activates automatically. Sign in as admin / admin123 and change the password immediately from Admin › your card.

Advanced — split core and UI

Run each installer on its target host:

curl -fsSL https://audiogravity.app/install-core.sh | sudo bash -s -- --token ghp_xxx
curl -fsSL https://audiogravity.app/install-ui.sh   | sudo bash -s -- --token ghp_xxx

One-click self-update updates a co-located core + ui together. If they live on different hosts, update each side separately.

Optional flags (core installer)

FlagEffect
--vapid-email you@example.comContact address for Web Push (VAPID sub). Omitted → placeholder, push stays basic.
--public-url https://your.domainEnables passkeys (WebAuthn) and derives the WebAuthn origin / RP ID. Passkeys need a real HTTPS domain — they do not work over a bare IP.
curl -fsSL https://audiogravity.app/install-core.sh | sudo bash -s -- \
    --token ghp_xxx \
    --vapid-email you@example.com \
    --public-url https://audiogravity.example.com

The installer generates a complete, working config (API key, session key, VAPID keys). You do not edit .env by hand for the standard setup. The one exception is Roon, enabled in .env.

HTTPS — for passkeys and push

Passkeys and push both require the browser to see Audiogravity on a real HTTPS domain — a bare IP or self-signed cert won’t do. The recipe for a home box, without exposing anything to the internet:

  1. A domain name you control, with a record pointing at the box’s LAN address (e.g. ag.example.com → 192.168.1.30). Name only has to resolve on your LAN.
  2. A real cert via Let’s Encrypt DNS-01 (no port needs opening).
  3. A reverse proxy (nginx / Caddy / Traefik) terminating TLS in front of Audiogravity in plain-HTTP mode (default port 8080).
  4. --public-url https://ag.example.com on the core installer.

Caddy handles steps 2–3 in two lines.

Uninstalling

sudo /opt/audiogravity/uninstall.sh          # core — keeps your configuration
sudo /var/www/audiogravity-ui/uninstall.sh   # ui

Keeps /etc/audiogravity (topology, profiles, audio settings) and /var/backups/audiogravity. Reinstall picks up where you left off. Add --purge to remove those too. Audio software installed from the Audio Software page (MPD, Shairport-Sync, upmpdcli, HQPlayer NAA, Roon Bridge) is never removed — use your package manager.

Updates

From the Admin tab: banner → one click + password → the box downloads, swaps and health-checks the new version with live progress across the restart. Automatic rollback to the previous version if anything fails. No terminal, no re-running the installer. All v1.x updates included with the Pro licence.

Privacy & Security

  • No account. No telemetry. Credentials and system state stay on your network.
  • 0 cloud dependencies for playback. Only cover-art and radio-catalogue lookups query public metadata services. Licence activation and periodic validation require internet.
  • Dual-layer auth: mandatory X-API-Key + JWT with RBAC. Optional mTLS via nginx PKI.
  • WebAuthn / FIDO2 / Passkeys (Face ID, Touch ID, YubiKey, Windows Hello).
  • Rate limiting on authentication routes.
  • Secure defaults: production startup refuses insecure secrets; .env permissions enforced to 600; JWT in sessionStorage by default (cleared on tab close).

Documentation

A fully illustrated User Manual covers the whole journey — installation, first run, listening, streaming, outputs & engines, administration, updating, troubleshooting, glossary, FAQ. Readable inside the app (the Manual tab, always up to date) and online. One-page Quick Start.

License

Core: proprietary — EULA (French law).
UI: open source, MIT — fork it, contribute, or build on it.

© 2026 Audiogravity · Made in 🇪🇺 · contact@audiogravity.app

Acknowledgments

Developed with the assistance of Claude.ai (Anthropic).