checkOne single binary. The whole server is one ~7 MB statically linked executable in modern C++. Drop it on a box and run. No runtime dependencies except ffmpeg.
checkSQLite storage. Your catalogue lives in one SQLite database; accounts and playlists in a separate one.
checkRuns anywhere. A Raspberry Pi, a NAS, a spare VPS; no runtime, no container required. Binaries for arm64 and x86 provided.
database
Storage features
checkAutomatic scanning. Watches your folders (using inotify) and automatically updates the library as you add, move or retag files.
checkUnified metadata. Reads ID3 tags or folder structure, then presents one clean, consistent library to every app.
checkMusicBrainz lookups. Pulls artist and album metadata and artwork from MusicBrainz (and other sources to fill the gaps).
checkMulti-disc albums. Full support for box sets (inferred from folder structure or ID3 tags). Discs and track numbers stay correctly grouped and ordered.
cast
Anything anywhere
checkSubsonic API. Speaks the OpenSubsonic protocol, so any compatible app on iOS, Android or desktop just works.
checkAudio and video. Supports the Subsonic audio and video API.
checkBuilt-in web player. Open a browser, sign in, and you're listening; nothing extra to install.
checkChromecast. Send audio straight from the server to any Chromecast on your network, from any browser (uses its own Chromecast implementation).
checkTranscoding. Automatic on-the-fly transcoding of audio and video using ffmpeg, with optional cache.
group
Multi-user
checkMultiple accounts. Everyone gets their own login, playlists and listening history, all from one instance.
checkDirect uploads. An upload API endpoint lets you add whole albums right from the web player.
Get started
Download the server.
Download the binary, point it at your music folder, and open the player in your browser.