UPDATE: Thank you guys for all the suggestions! I got Navidrome installed on my NAS in a matter of minutes, got to test like a half dozen Subsonic compatible apps (both FOSS and Play Store), and it looks like Symfonium + Navidrome meets my needs. I’ll keep testing before my free trial for Symfonium ends, but I really appreciate the nudge to try a new music server!


I’m self-hosting my music collection (synology NAS), and while I’ve liked Poweramp, it only reads local music files, which means I have to copy many GB of music to my phone, even if I’m not particularly listening to it.

The Synology DS Audio app actually does what I want: it caches music locally as you’re streaming it, but it reads directly from the NAS.

The only problem with DS Audio is that it sucks as an actual music player.

Are there any Android music players, preferably FOSS or at least privacy-friendly, that will read from the NAS and cache in an intelligent way but also works well as an actual music player?

I did try Symfonium, but couldn’t get it to work with Webdav or SMB, plus the dev comes off as a real asshole, so I’d rather not give them money.

EDIT: To clarify what I’m looking for:

  • The app must be able to connect to my NAS music collection (through my local network is fine).
  • Most importantly, the app must be able to cache my music either as I’m streaming it, or in advance when I’m running through a playlist… then future plays of the song should be from the cache.
  • I do NOT want to have to manually download or sync files, which is how I’ve been doing, and I don’t like this at all.

If you’ve used the Synology DS Audio app, then you’ll know exactly the behaviour I’m looking for. It really is a shame that DS Audio sucks as a music player, or else it would be exactly what I’m looking for.

  • @[email protected]
    link
    fedilink
    English
    623 hours ago

    My offline android music workflow:

    • Server: Navidrome but any music server supporting Subsonic API would work here. Navidrome has a nice UI, and reads MusicBrainz IDs, and can scrobble to ListenBrainz, that’s why I settled with this.
    • Mobile app: Ultrasonic, on Fdroid. There are a lot of ways you can set up caching. I set up that it should automatically download everything from my “Now playing” playlist, at home on wifi I just add a bunch of albums and playlists to the “Now playing” list, it takes a while but it transcodes and downloads everything in a couple of minutes. It has very good Android Auto support, and a widget. Due to an annoying bug I had to downgrade to version 4.7.1, but otherwise I love it.
    • @AbidanYre
      link
      English
      1123 hours ago

      Tempo is my favorite Navidrome client at the moment.

      • @[email protected]
        link
        fedilink
        English
        1
        edit-2
        21 hours ago

        I tried that recently. I didn’t like that it doesn’t have a widget, and the downloads and current playlist are completely separate. Also there was no option to automatically continue when connecting to a headset (this was working in Ultrasonic 4.8, but not in 4.7.1 I hope they fix that bug sometime…) So after some weeks use I switched back to Ultrasonic.

        • @AbidanYre
          link
          English
          26 hours ago

          I like having my downloads and current playlist separate, that seems like a personal preference. A widget would be nice; I guess I don’t use it enough for that to be a deal breaker. For a while it seemed like all the clients I tried had some weird quirk that made it kind of suck to use. Tempo was the first one that didn’t. I don’t think I ever tried Ultrasonic though. I’ll keep it in mind.