SUB/WAVE Hosting

SUB/WAVE is a self-hosted radio stack whose AI DJ plays a Navidrome library, speaks between tracks, and takes listener requests.

  • One click deploy
  • 25 GB Disk Space Needed
  • 2 GB RAM Memory needed
  • From 5 € Price
Order now No setup fees

What you get
on AvaHost

One-click deployment, a custom domain, free HTTPS, automatic application updates, and scheduled backups come with every Cloud App. You can run multiple apps on one server, and terminal access is included.

This template does not include a database container.

Order Server

Tech

Docker image
ghcr.io/perminder-klair/subwave-controller:latest
Default port
0

How SUB/WAVE works

SUB/WAVE, published by perminder-klair, is a self-hosted station that points at a Navidrome or Subsonic library and a language model. The model picks tracks, talks between them, and can take requests from people you share the URL with. The production compose is a split stack: a Caddy edge, an Icecast plus Liquidsoap broadcast container, a controller, and a web UI. Tagged releases publish those images on GHCR, including ghcr.io/perminder-klair/subwave-controller. Optional analyzer and TTS sidecars exist for heavier voices and acoustic matching.

The music files stay in the music server. The language model stays wherever you run it, often Ollama on another machine, or a hosted provider. Neither is inside this baseline. The station wizard collects the library URL, the model endpoint, a DJ persona, and jingles. Listeners then use one origin for the page, the API, and the stream, which is why the project documents a reverse proxy that routes all three.

Key SUB/WAVE features

The web UI is the onboarding and the public player. The controller holds station state. Icecast carries the live audio. You can run the bundled Caddy or bring your own proxy, with web, controller, and broadcast on separate internal ports in the BYO compose. A heavy TTS image is opt-in. GPU analyzer images are opt-in and are not assumed here.

AvaHost applies updates to the station deployment and backs up its persistent state on a schedule. That does not back up your Navidrome library or the remote model. Test a short broadcast after an upgrade, because Liquidsoap and Icecast wiring is easy to break if a route changes. Application mail is not part of this package.

SUB/WAVE vs AzuraCast

1

SUB/WAVE

SUB/WAVE is a DJ layer over a library you already have, with a language model in the booth. AzuraCast is a fuller radio control panel for station libraries, mounts, and DJ accounts of the classic kind. If you want that panel, AzuraCast is the product to evaluate. If you want requests against Navidrome and a generated presenter, SUB/WAVE matches the job more closely.

2

AzuraCast

They are both self-hosted radio tools and they are not the same workflow. Hardware for the model is the large variable SUB/WAVE adds and AzuraCast does not.

Who uses SUB/WAVE

Collectors who already run Navidrome and want a shared listening room use SUB/WAVE. Small communities that like requests on a single URL do too. Skip it if you have no music server and no plan for a language model, because the station cannot invent a library or a voice backend on its own.

Self-hosting SUB/WAVE: requirements and cost

This baseline reserves 2048 MB of RAM and 1 CPU core for the station containers, not for a local LLM and not for Navidrome. No separate database container is part of the minimum. On AvaHost the recommended minimum for SUB/WAVE is Plan 2 at €5. You get one-click deployment, a hostname, automated HTTPS on the web player, automatic updates, and scheduled backups of station state. Budget RAM for the model somewhere else if you run it yourself. The library disk lives with the music server, so this page does not treat SUB/WAVE itself as the storage plan.

F.A.Q

  • SUB/WAVE is listed from €5 on Plan 2. That price is the station stack, not your Navidrome library and not the language model. A local model, heavy TTS, or a GPU analyzer needs its own capacity. Listener count and request volume can also push you upward. External model providers bill you on their own terms.

  • Yes. Point a hostname at the deployment and automated HTTPS covers the player and the site. The stream and the API should stay on that same origin, matching the project’s proxy notes, or the page can load without audio. DNS and who may see the URL remain your settings.

  • AvaHost updates the SUB/WAVE deployment automatically and backs up station state on a schedule. Your music files and the remote model are outside that backup. After an update, play a short request and confirm Icecast is still mounted. Keep the wizard values you care about written down.

  • SUB/WAVE needs a reachable Navidrome or Subsonic library and a language model endpoint. Those are not installed by this package. Without them the DJ has nothing to play and nothing to say. Rights to the audio in the library stay with you. This minimum does not include a GPU sidecar.