Sign in to continue
Playlists saved on this server.
Saved from a shared Spotify/Deezer link. These stream — they aren't in Navidrome until you download them.
Read-only — browse and download from your Spotify account.
No favorite artists yet. Open an artist and choose Follow — followed artists show up here with their new releases.
DJ adds EQ/filter transitions; changing reloads the app.
MP3 streams faster and uses less data. Lossless serves the original file (larger, best for audiophile/DLNA).
Pre-downloads upcoming tracks for faster playback. Turn off to save data or if playback stutters.
Chooses only which track plays next — the DJ crossfades and beat-sync apply either way. Playlist order keeps your queue exactly as it is; the BPM modes instead pick the best-matching track from the ones still unplayed (analyzed tracks only). Neither reorders the queue. Tracks that are not downloaded have no tempo data and are marked "no BPM" in the queue; while the current track is one of them, Smart Queue is not used for the next pick (the next track follows queue order, or is random with shuffle on).
Constrains Smart Queue picks to a tempo band. Tracks without a known BPM are skipped while a band is active; if none match, the band is ignored so playback never stalls.
Used when BPM/beat grid is not yet analyzed.
Per-device override. Applies only to this device when its Output Mode is DLNA Only.
Global server-side renderer, shared by all devices. For a single-device override, use the per-device DLNA Renderer URL under This Device.
Run MusicSeeker as a standalone app with its own window. The app connects to the server — no updates needed when the backend changes.
Installing from inside the app replaces the bundle and clears macOS
quarantine for you. A copy downloaded through a browser instead opens as
"MusicSeeker is damaged" — clear it once with
sudo xattr -cr /Applications/MusicSeeker.app.
macOS 10.15+ / Android 7.0+. Built with Tauri.
Tracks marked "no BPM" have no tempo data (usually not downloaded); with one playing, Smart Queue is skipped for the next pick.
Queue is empty
Queue is empty