I’ve been on Tidal for years, but it’s frustrating to use for lots of reasons (they only pay their artists slightly better than Spotify, streaming services are flaky, works poorly with my DLNA home speakers). I’m looking for something I can selfhost with the following features, and I would appreciate any suggestions in this direction:
- integrates with downloading services (nzbget and qbittorrent; or better yet prowlarr)
- has a suggestions/radio/mix feature, or integrates well with something that does. I currently use jellyseerr for other kinds of media, so something in that vein.
- has a mobile app which lets me download all the tracks I want, or integrates with one that does. Big bonus points if the mobile app can play to DLNA speakers.
A bit about my lab:
- Proxmox-based, lots of VMs and containers on 2 different cluster nodes. Lots of underprovisioned RAM in the cluster. Nodes run Fedora and I’m partial to quadlets, but I can convert anything to a quadlet if I need to.
- Airvpn port tunneling is available to me.
TIA!
Oh, a shameless self-plug opportunity. TLDR: I’m making a Subsonic server trying to replicate a somewhat passable self-hosted Spotify/… experience.
My current setup is a Subsonic stack: gonic as a server, Lidarr as a library organizer/downloader (it works natively with Prowlarr BTW) and Sonixd/Tempo as desktop/mobile clients. Frankly, it sucks - no discovery and almost nothing gets auto-downloaded. Even ignoring the crucial discovery part, I got tired of manually downloading albums from Bandcamp - manually tagging, manually feeding files into Lidarr, manually adding metadata to MusicBrainz so Lidarr actually works, …
So, I’ve been working on a Subsonic-compatible server for quite a while. The basic idea is:
- regular user libraries are already covered by various Subsonic (and other) servers, no need to reinvent this
- we can, uuuuh, cache stuff from YouTube/Bandcamp/… to stream it via Subsonic API to leverage existing clients
- we can fetch recommendation lists from somewhere else (ListenBrainz/…) and use the existing library or even auto-search YouTube/Bandcamp/… if the track’s missing
Well then, what can Tapesonic already do?
- given a YouTube/Bandcamp/maybe-more URL, download it and then two-click import it as a playlist or an album, making it listenable via most Subsonic clients (single-video “mixtapes” with timecoded chapters and playlists are supported)
- combine your “main” library (from probably most other Subsonic servers like gonic/Navidrome/…) with it’s own so you don’t have to switch servers back and forth
What’s broken/not implemented yet?
- acceptable server UI; features are far more important especially considering that the goal is to use the existing clients for almost everything
- seeking in clients; working on a fix for the past few days
- transcoding; not a priority for now
- auto-searching YouTube/Bandcamp/…; not a priority for now
- ListenBrainz playlists; I have “already listened” playlists kinda working in a stash, but those are paused until seeking works; “discovery” will just work after auto-searching gets implemented
No user documentation, half-broken, breaking changes one after another, slow progress - but hey, it doesn’t mess with your existing library and already made my life quite easier with Bandcamp albums. A docker image is available - so give it a spin if you want to
and then ragequit because it sucksI am loving lidarr+jellyfin+symphonium. The symphonium app integrate perfectly and is 1000% worth the one time payment.
Plexamp can do all of this (not sure about mdna speakers though) and it has Tidal integration.
Finamp will also work but it lacks library/genre radio and mix support last time I checked.
I love Plex, but Plexamp leaves a lot to be desired. In my use case, especially for folks with bad mobile service and/or spotty wifi or folks who don’t want to be hitting their servers as frequently. I just want a good UX for downloaded music off my server.
I was messing around with another jellyfin/emby instance specifically for my tunes and podcasts/audiobooks.
I think the app from fdroid was fintunes or finamp or something like that. Worked okay!
i really really enjoy jellyfin + symfonium - it’s a paid app but it’s super awesome imo
Good suggestion! I intend to mess with finamp and symfonium. I had no idea jellyfin was so popular as a music backend so I’ll just keep using that.
i switched from plex to jellyfin because i like the FOSS approach more. But plex is so incredibly much better as a music backend than jellyfin.
Jellyfin is fine, but not perfect
I probably won’t switch to Plex because of what they did with sharing all your activity without your consent, but I’m curious what you liked better about it as a music backend?
I switched for that exact reason. And I certainly did not want them to share any of my activities 😁
It was just better with metadata, it was snappier when finding songs.
I second jellyfin / finamp combo. Make sure to checkout the beta version if you’re getting it from the playstore, they are redoing some parts of the UI.
Thanks for this. Finamp looks really nice.
jellyfin and finamp is an amazing combo
+1 for Jellyfin and Finamp but check out Audiobookshelf for podcasts and audiobooks. It even has regular checks for podcasts that you can set for rss feeds.
I used to use Subsonic, but it’s become too outdated for me sadly. I switched to a fork Navidrome which updates a few times a year and enjoy the improvements it’s been providing. I use it with the mobile app Symfonium and love that they are both improving the API to add additional features and options over what Subsonic offered. I run it on my Synology in Docker so you should have no issues either.
I personally really liked using jellyfin and finamp. Both were pretty great once i figured out how to set it up lol.
The issues i had were due to my lack of knowledge and trying to set things up to use it outside of my home network. Jellyfin itself was great as was finamp when i used them.
Thanks! Yeah, figuring out how to get gluetun working properly with a vpn and downloaders was a chore and a half. Glad I got that sorted, now I feel pretty confident I can punch a mobile app through into the network pretty easily.
Yea the real fun is always the set up when selfhosting. Then you look for the next project lol.
Im not familiar with gluetun, is that what you’re using to download tracks or something?
Gluetun is kind of a wrapper around wireguard or openvpn, that greatly simplifies setup and configurability.
I have a VM that runs wireguard to airvpn, in a container made of gluetun. Then you share that container’s network with a qbittorrent container (or pick your torrent) and an nzbget container (or pick your nzb downloader). Tada, your downloaders are VPN’d forever.
Ah ok, thats pretty cool. I dont do much torrenting anymore cause my internet is not only limited but is kinda slow and unsteady.
Might check that out once im back in civilization with a decent connection. I miss gigabit speeds man.
Deemix is a good way to build up your local cache from Deezer, at which point you can serve it locally.
It will mess with artist renumeration though (which seems important to you), so you might want to find another way to compensate your favourite artists.
Yeah, I’ll probably just buy a few more albums than I used to. Streaming payments has always been a way to wring dollars out of artists, so I’d rather find other ways anyhow.
If Tidal isn’t your cup of tea, check out Qobuz - I’ve had a better experience with it. It doesn’t pay artists as well as spotify, but I think it’s still more than Spotify (iirc)
Piracy is a illegal and should stay out of this community
I guarantee you half the people are here and got started self-hosting BECAUSE they wanted to start pirating.
I just think it is a legal liability to do anything outside of the piracy community.