Subsonic compatible music server

GainDrive: Server

Serves your music and video collection over the Subsonic API, with a built-in web player. Open source, single binary, written in C++. On Linux and macOS.

~10 MB
Single binary
SQLite
Zero-config storage
Subsonic
API compatible
What's inside

Server features.

memory

C++ server

  • checkOne single binary. The whole server is one ~10 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.Fast multi-threaded scanner 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. Uses the Subsonic rule: a folder that directly contains media is itself an album.
  • 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, with some extensions to make mixed content nicer to browse.
  • 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.
  • checkShare with deep links.Share links to music on your server that take you straight to the shared track.
Get started

Download the server.

Download the binary, point it at your music folder, and open the player in your browser.

Linux

Grab the statically linked x86_64 binary from the latest release.

macOS

Install with Homebrew (Apple silicon only).

brew install gaindrive-server