Trying to ditch YouTube Music & Spotify for self-hosted music has been a struggle. I’ve subscribed to YT Premium today.
Here’s how my attempts have gone:
-
Nextcloud Music (with Recognize): The web UI is great, has all the features I need. Downside: no transcoding and playback through Subsonic or Ampache clients is slow, sometimes causing server issues.
-
Jellyfin: Streaming works fine, but it doesn’t recognize individual artists (my files are in one big folder, so albums are jumbled).
-
Navidrome: Similar to Jellyfin, artist recognition is off and playback isn’t as smooth.
I’ll try Plexamp next. What else should I try?
All of my songs are stored in NextCloud.
(my files are in one big folder, so albums are jumbled)
This doesn’t give you anxiety?
Exactly this… It’s like throwing your silverware in the draw and then saying I can’t find my special knife
That’s all I can think of honestly…I have a collection of over 40,000 songs…EVERYTHING is in the proper place/folders etc… ain’t no way would I ever consider my music folder to look like the windows download folder.
That’s also how my Linux download folder looks from time to time XD But since I’m on Arch bases distro I try to be more organized and clean-up that Download folder mess !!!
Download Picard and get your music sorted and tagged correctly!
Even Picard gets some metadata wrong on auto. Don’t trust it blindly.
Be careful and only do changes manually.
I guess this isn’t what you want to hear… but like others here I’d recommend you organise and tag your music properly. Then software like Jellyfin or Navidrome should work properly.
I use MusicBrainz Picard and have seen people recommend https://beets.io/, which I still haven’t looked into.
Beets is great. I’ve used it for years now
Good to know. Thanks. I have my music in my server, which runs Jellyfin and Navidrome on Docker…
Would it make sense to install it on Docker too or would it be OK install it on my computer and then have it check the music oh my server over NFS?
I don’t see why an nfs setup wouldn’t work but it could generate a lot of network traffic.
In the end test for yourself if the performance is acceptable and keep a backup
You want beets to organize your music https://beets.io/
You want to use the musicbrainz database
And you want to scrobble your plays to listenbrainz.
You will serve your music however you want. Navidrome is one of the best, you can’t go wrong.
Navidrome does not take car eof tagging. You have to make sure your music is tagged properly. You can also use other software for it that uses beets under the hood. Someone shall chime in and suggest the best app for that as beets isn’t end user friendly.
Lidarr might help, like other said you need to start by organizing your library first then look at hosting.
Jellyfin: Streaming works fine, but it doesn’t recognize individual artists (my files are in one big folder, so albums are jumbled).
Yeah, but like MusicBrains and AudioDB plugins. It should scan through and try to match the metadata to better organize your files.
Then for mobile you can connect to the Symfonium app.
For mobile I also recommend Finamp. It is FOSS and built for Jellyfin, with offline support.
I am using the beta which has more clean UI and is very stable.
+1 for Finamp beta. It is great and under active development.
You can get the latest version here: https://github.com/jmshrv/finamp/releases/tag/0.9.11-beta
Nextcloud Music (…) Downside: it is Nextcloud.
The funny part is that they sell it as modern yet they use Java like if it was a banking software from the 90’s. Thanks for the tip.
@TCB13 👍 🙂
I’ve subscribed to YT Premium today.
If you’re on Android there’s InnerTune. It’s basically YouTube music but for free ! Just to bad you can’t directly access downloaded files to export them elsewhere. (Yeah that’s practically piracy and illegal)
I like navidrome + Tempo as self-hosted solution. Works well without any issues. However, I read about horror stories people losing all their media or fucking up their media library ?
Also, that’s a huge song library (20.000?)… Not sure this can be easily handled over to a self-hosted solution? But first you need to organize your songs
It’s piracy to use the app too. There’s no line between downloading through a third party app vs exporting those files for personal use.
I cant seem to use it without signing in which sucks, might consider just submitting to youtube soon anyway since no good competitor is being made. Too big to fail and all that.
For jellyfin/Plex you can try downloading everything with lidarr
Only if you are ok with piracy.
Physical media and YouTube via third party clients.
Lidarr also serves as a music organization tool. You can set up rules for folders and how music files should be renamed. It can also apply metadata tags automatically.
Still I think you should point out that it is a downloader
Only if you hook up a torrent client. There’s no requirement to do so
I use Synphonium on my phone, it links to my Jellyfin and I can sync/sort and download directly from there. I use just use Spotify free in Firefox with Ublock on PC, that way I get no ads
Not sure if this fits your need, but if you just want to own the files, maybe try playing locally?
I don’t have an unlimited data plan, so I use “Gelli” which can download from Jellyfin and play them offline. However, it’s buggy and haven’t been updated in a while, so I’m planning on ditching that, and switch to locally storing the music files.
I found an Android music player named “Symphony”. It reads directories as album, as well as metadata. Importantly, it also saves the queue for me. I have a self-hosted Nextcloud so I can sync music to my phone. Symphony would read them from the directory.
If you’re interested in an alternative to Gelli, check Finamp (https://github.com/jmshrv/finamp): it is a Jellyfin client for Android that can also download music to play offline. Try the latest beta version, it is way ahead the stable version and works perfectly for me as a daily driver.
I did try it. It doesn’t let me download the entire album though :<
Mmmm, did you try the latest beta or the stable version?
The stable version is quite outdated and download doesn’t work great there. With the beta version (0.9.11) I’m able to download full albums, full artists or individual songs. I’m very happy with it. I’d recommend you give it another a try if you have time.
Interesting. I didn’t know the beta version exists. I’ll try it out later. Thanks!
Is there a thing that can hook into my library and auto-generate playlists that also contain songs that aren’t there and/or recommend songs to me?
These are nice free options:
- Re-vanced YT Music
- Spotube
Not self hosted though
Plex is excellent, and even if you prefer the features or interface of Jellyfin, you should never expose any application (Plex, Jellyfin, or otherwise) directly to the Internet. This should be non-negotiable. Plex solves for external access with the mobile/desktop apps and app.plex.tv by brokering client connections into your network without a NAT/PAT on your router or firewall.
For a music library, even a small one, tracks should have proper metadata applied to them and be stored in directories. Plex provides guidance on this here: https://support.plex.tv/articles/200265296-adding-music-media-from-folders/
My own strategy: I deviate slightly from Plex’s file and directory naming strategy, but it works perfectly. I start with high quality music, mostly from Bandcamp and process it through Musicbrainz Picard into ALBUMARTIST\YYYY - ALBUMNAME\01 - TRACKNAME.FLAC. Picard sets the metadata and ensures that there is an album cover image also.
Before moving the organized files to my Plex server, I run them through MP3Tag and overwrite any mismatched artist names with the album artist (getting rid of artist fields with 'feat xxxx artist’s). This is important for when I sync files in Media Monkey to my iPod, since the iPod would break apart albums with multiple artists. My preference is to keep them grouped together.
Hope this helps good luck 👍. Let me know if you want to know a decent strategy on movie backups also.
I used a NAS and VLC for a long time. It’s pretty easy and works quite well if the meta data is correct.