hello,
im really tired of google music and spotify, and want to self host my downloaded music and create my library.
however, i know nothing about self hosting. My knowledge is absolutely zero. And Im completely lost about how to self host my own music. Dont find any good tutorial for dummies and i have a lot of question. I dont understand nothing. I see the tutorials of Navidrome and Ampache and still understand nothing. All of that looks extremely complicated to me.
How can i self host my music? I need to pay something? A very old and slow pc is enough?
Im completely lost. If someone can suggest something - like a tutorial , dunno - to build/self host my own music I appreciate a lot.
ty
What’s wrong with just throwing MP3s on an SD card, or hard drive?
MP3’s are so old the patents have expired. OPUS is where it’s at it ones going for lossy music compression nowadays.
Harddrives are a bit unpractical when listening on phones.
And please don’t throw music onto storage devices, it’s better to transfer them.
Better?
I use Jellyfin. You can find a very easy to deploy docker container by linuxserver.io team. Jellyfin has dedicated music only apps as well, for phones as desktops.
deleted by creator
When I first used Jellyfin, the official Docker image didn’t have AMD video acceleration working out of the box and the LinuxServer one did.
LinuxServer images often solve problems and work out of the box better than the official option.
I think I’m right in saying they have a standardised and reliable option for running as a none-root user too.
They’re relatively easy to deploy.
For normal docker self hosters the biggest is similar structures across their images.
It config is always /config
Also they run the same user so it helps with file permission issues
Or just run Jellyfin on your desktop and sync the phone app from time to time. Finamp even allows downloads, so no connection to the server needed at all times.
I got jellyfin ln my synology nas. Been working fine for a year or two now. Finamp is the dedicated audio app for that.
Maybe this is a stupid question, but what do you achieve with self-hosting music? What do you do with it? If it’s only on localhost then I could just play the music locally? what is it for? :)
You can stream it wherever you are in the world without having to keep it on your phone
I forward it to my domain, so that I can listen to music in my office or anywhere else.
I have a VPS on hetzner, and I forward all my local traffic through that VPS via TLS-passthrough, not TLS termination using WireGuard amd HAProxy.
To know more about my setup, you can this this. https://blog.aiquiral.me/bypass-cgnat
Depends what you want to play it on. In my house we have:
3 laptops 2 tablets 2 mobile phones (1 android, 1 iPhone) TV
Not all these devices support local storage for music and it’s a pain to sync files between them. With Jellyfin the complete library is in one location with a consistent interface. It can also be made available remotely if I choose.
That actually makes a lot of sense, thanks!
jellyfin is a streaming server. get yourself a domain name and you can connect your apps to it from anywhere.
So, self hosting is complicated. Everyone in this comment section has had tons of experience with it. I tried Plex, failed. Jellyfin, didn’t connect. Entire OSes on a raspberry pi, didn’t work.
I don’t know your situation but for me giving up and just keeping it stored on my phone and manually updating is good enough.
however, i know nothing about self hosting. My knowledge is absolutely zero […] I dont understand nothing
This is going to be a problem, unfortunately. You’ll need to define your use case first:
- How much music do you want to have access to? Hundreds, thousands, millions of files? How large is your collection?
- Do you have downloaded copies of all the music you want to listen to? Are they all in one place, well organized and tagged? If you just have downloads in the Spotify app, you won’t be able to use those files, you don’t actually own that music. You’ll need DRM-free audio files.
- Where and how do you want to be able to access them? Just from one device like your phone? Many devices? Is having access at home good enough, or do you want to be able to access your collection while you’re away from home?
- Will you be the only user?
- What kind of budget do you have to work with?
An old PC might be enough to act as a server, but there’s more involved and the answer to what you need depends on what exactly you want to do. You will not be able to build a personal version of Spotify with just an old PC, for instance.
There are lots of solutions, but as others have noted, Plex with Plexamp is great.
I’d recommend getting a NAS for storage and running mirrored disks. This way you’ve got some redundancy in the event of a disk failure.
You pretty much just need an Intern et connection though it would be best if it was unmetered. It doesn’t take much as far as resources go to host music. You could also think about just syncing playlists to your mobile device. Lots of people forget about that.
I use a Plex server and the PlexAmp app wherever I want to listen. There are probably better options, but it’s something I set up years ago which was dead simple and requires almost no maintenance.
PlexAmp is an amazing bit of software for a phone. It doesn’t translate well to the desktop, but it’s still pretty good.
Your flacs will play lossless on wifi, and transcode to 128kbps opus on mobile. You can tweak those settings too.
Most smart TVs have a native plex app available too.
Plexamp is the best music service I’ve ever used and it’s a great way to get into self hosting. Once it’s set up why not add some tv and movies?
Agh Plex always rubs me the wrong way… It acts like closed source software as much as is possible. Went with Jellyfin and it’s been great. But haven’t tried music.
I actually plan on switching to Jellyfin soon but I think I’ll keep Plex running just for Plexamp
Take a look at the Finamp desktop client. It comes very close to the Plexamp client from back when I was using Plex.
I have heard symphonium is very good if they are looking at closed source Plex anyway. It works with jellyfin and navidrome.
I just use syncthing to sync all of my music to my phone’s SD card. Then PowerAmp since there aren’t many fully featured foss music players. I am keeping my eye on Auxio though, keeping it installed and updated.
I started with TV and movies and thought why not add some music!
There are many different ways, but personally (and hopefully I don’t get crucified for saying this) I use Plex and Plexamp. Plexamp has got to be the best music app I’ve ever used. I even tied it into Last.fm to get recommendations for new music based on my listening.
You’d need to set up Plex media server to go this route: https://support.plex.tv/articles/200264746-quick-start-step-by-step-guides/
Personally I host via Docker.
It might be a little overkill if you don’t have other media, though, and it’s not fully open source.
I use Plex and jellyfin, honestly, plex only stays around because of plexamp. It’s just too good. I don’t like using streaming apps like Spotify or whatever because they’re not as good
Not necessarily overkill, you can run Plex on almost anything. I used to run it on an old NUC6 I had laying around, then upgraded to a NUC8, and more recently I setup it up as a VM on Proxmox on a Ryzen 5700u mini-PC and just reimported the DB.
Virtualizing it has been good for my purposes since now it’s running alongside AssetUPnP, AudioBookshelf, and a dockerized squeezelite setup, and I’ve another VM on the host running Home Assistant with still plenty of resources to spare. Crazy we can do that now with a “server” that literally fits in my palm.
But virtualizing it makes hardware acceleration for video transcode be I more complicated, just a heads up. I play everything native so don’t use it, but YMMV.
———
Edit - Plexamp is an awesome radio/DJ player, though I generally send to a Wiim Mini, as AirPlay quality with Plexamp can be kind of ass compared to direct DLNA.
Plex is good and the Plexamp app for music is excellent.
Symphonium is a great Android music player which connects to a Subsonic or Jellyfin server (or any other protocol like SMB).
Navidrome is a music server which implements the Subsonic protocol. This means apps like Symphonium can connect to it.
Any old PC is enough, even a Raspberry Pi is fast enough for a music server.
- Install Navidrome on the server/pc
- Configure Navidrome (open ports, add your music library/folder)
- Connect a subsonic-compatible music app to to the server (I.e. type in IP or domain as well as the port).
Anything more like SSL (https) and a domain is optional for getting it working, and only a benefit if used outside of your home network. Using Tailscale makes a domain/SSL unnecessary and also no longer needs messing around with networking (e.g. no opening ports on the router).
On the topic of SMB. If OP is mostly interested in accessing the music from their phone, a symfonium + SMB server setup may be even easier than setting up navidrome
I use synphonium with my jellying server, works just fine.
I checked out Tailscale, and my 👀 popped when I realized what it does! 😄
I proceeded to install it on my phone, only to realize a moment later that my connection was down. I headed over to my Rethink DNS firewall and saw that Tailscale had taken over my VPN connection, causing Rethink to shut everything down (as it’s supposed to).
Now, unfortunately, I’m probably gonna find out that Tailscale needs highly sought out for VPN slot on Android, and that I can’t use it because I’d have to drop my firewall? 🙈
Yes, the restriction to a single VPN client is annoying.
Blocking ad/telemetry domains can be done by adding Adguards DNS servers in the OS settings. Sadly blocking apps Internet permissions completely is not possible (except on OS like LineageOS, CalyxOS or GrapheneOS).
Can confirm. I have an arm board from 2010 with 256MB of RAM. it hosts music fine through minidlna and still has memory and cpu free
@zeromoney I have a self hosted streaming service for music with #Jellyfin. But i think there’s no an easy way to deploy it. You need to have some basic linux knowledge.
I’m going to go another route here: do you need streaming?
Like, I’ve simply gone with a giant pile of FLACs that I put on a SD card for my phone, and use over the NAS for when I’m at home and don’t currently use any fancy-pants streaming stuff.
So like, depending on how you’re using your music library, you might not even need to drop deep into the giant self-hosting rabbithole for this.
FLACs
on a phone
in SD card
¿??? it’s not like you’re going to be able to autism at a -0.0002dB disparity on the trumpets channel with those audio chips, why not just store the files there as opus or MP3 for ~6x more capacity? (not to mention faster overall reads)
I’ve been using ogg vorbis for music since about the mid 2000s. In the begining I was ripping them from my CD collection using grip on mandrake Linux (anyone remember?)
Nowadays I download vorbis direct from bandcamp.
Recently I compared 192 kbps vorbis files to FLACs and couldn’t discern the difference, which I’m happy about since my 15000 file collection can fit on a very cheap 128GB SD card in my phone.
I use syncthing to sync music to my phone automatically.
Really happy with the setup.
Because I stuck a 1TB sd card in my phone and don’t have to deal with transcoding or dealing with, well, anything, but copying new files over and listening to things.
I’ve developed quite the liking for stupidly simple solutions, and ‘copy the files to a sd card’ is about as simple as it gets.
OPUS is such a delightful format I transcoded my FLACs just for fun.
OPUS is such a delightful format
Agreed. My audiobook library was transcoded from various formats to 32kbit OPUS and they still sound about the same.
Shocking how decent it is with spoken voice and stupid low bitrates.
Are you retarded or deaf?
Based on OPs experience this is the best solution.
If they want to learn, I found plex + plexamp was pretty easy to get going.
I mean, most high-end phones today doesn’t support SD cards so this can be a reason why to selfhost.
that I put on a SD card for my phone
Pretty soon you won’t be able to buy a phone without expandable storage. On the plus side, internal storage is going up, but it’s still not big enough to hold a complete FLAC collection if it’s a reasonably large library. You can re-encode your library just for phone usage, but that’s a bit annoying to maintain.
Also, I’ve found all of the offline music players on Android kind of suck, and don’t support the workflow I like or have bugs.
Music assistant on home assistant or without HA will let you host your own music but also allow for the addition of streaming providers. It lets you cast your collection to pretty much any speakers. You can even build your own cast receivers with any android device and squeeze cast.
There are two main ways you can do it. You’ve already mentioned you have your library/music files, so that’s a good start, you’re basically looking for a way to access it on other devices. The first way would be to set up an old PC/rent a cloud server, and set up the service you want to use, though for now this may be a bit too complex if all you want to do is stream your own music, and have no experience. That being said, it’s always good to have a look and see, there may be a tutorial that works for you if you want to go down this route.
You’ve mentioned Navidrome, and it’s a good shout, basically just looks at the folders of music you have, and lets you stream them to your phone/PC (and more) like Spotify or Google Music. For the simplest possible setup, I’d recommend a service like Pikapods (https://pikapods.com), which essentially selfhosts applications for you, and gives you access to the files. For Navidrome, for 50GB storage (and the recommended settings of 1 CPU core and 0.5GB RAM), it’s $3.01 a month, which, though not free, is very affordable if that’s all you want to do, plus they handle updates, etc. You shouldn’t need to set any variables, and can upload your music to their service via FTP (File Transfer Protocol, a way to copy files to another PC/server from your PC), and they have docs on how to do that on the site.
Hope this helps :P
I just use Auxio on Android or GNOME Music on Linux to listen to my downloaded files, and sync them via Syncthing.