I’ve tried a few options over the years, including SMB and NFS, XBMC as well as HTML with javascript I found online.
I don’t have a large collection of music (fewer than 100 albums), so hand coding things was actually one of the quicker options to setup. That’s despite then hassle of hand coding the URL to each FLAC file as well as the album art. But sometimes the javascript doesn’t handle large collections of FLAC and each implementation I tried had different quirks so I’ve sunk a lot of time into that in other ways without a satisfactory result.
I’ve heard of Emby, Jellyfin, Plex, Roon and Servio. I just need something that’s simple to set up and access. I don’t need fancy features beyond the ability to play the music with a pleasant UI that can be accessed from the web (HTTP, not HTTPS). I’d be running this from a Raspberry Pi 3B which already has the lighttpd server running.
I’m also considering just getting a portable, 128GB FLAC player with a minijack connection and moving on with my life without getting involved in networking at all.
Any recommendations for an uncomplicated way to approach to doing this?
Edit: Thanks so much for the helpful and enthusiastic comments! I tried Navidrome and had it up and running in ten minutes thanks to this tutorial video: https://invidious.nerdvpn.de/watch?v=7V5UUJlSknY
I had to install docker-compose on the RPi. Then I got an error which turned out to be because I also needed a separate docker daemon which I installed following these instructions: https://www.simplilearn.com/tutorials/docker-tutorial/raspberry-pi-docker
In just 10+ minutes I had my music collection accessible from all my devices - thanks again!
I like Navidrome, it also supports the… Subsonic(?) protocol so one can use dedicated apps with on-device caching, which is nice for mobile devices without unlimited data.
Yeah, I’m using Amperify app (iOS) and it’s great. I’m very happy with my choice of Navidrome now.
ReadyMedia (formerly MiniDLNA) works fine for me as a container via podman on a raspberry pi.
podman run -d --name=minidlna \ --net host \ -v dir/to/music:/media/audio \ -e MINIDLNA_MEDIA_DIR_1=A,/media/audio \ -e MINIDLNA_FRIENDLY_NAME=Music \ --restart on-failure:3 \ --platform linux/arm64 \ docker.io/vladgh/minidlna:latest
No http interface though for playback. Still very simple and does the job for me.
That looks quick to get going
dankpods used vlc on a ipod touch
Do NOT use funkwhale!
What’s wrong with it?
You got to give us some context my dude. Why is funk whale not recommended by you?
I prefer Airsonic-Advanced over Navidrome when using the web interface. Airsonic-Advanced and the Substreamer android app are a nice combo. You can run both severs side by side if you are setting up docker containers.
Thanks. I’m happy enough with Navidrome but if I can try ASA in parallel I might give it a try sometime.
I really like the turntable effect in the Navidrome web app, though :)
Jellyfin or funkwhale
I have a RaspberryPi with a Plex container sitting upstairs. Works like a charm
Plex is moving in the app direction… So Plex is probably moving away from what you want despite being one of the easiest options.
It would probably be helpful to know what you’re trying to accomplish beyond “what”. Like, why do you want to host your music and play it via a web browser.
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:
Fewer Letters More Letters HTTP Hypertext Transfer Protocol, the Web NAS Network-Attached Storage Plex Brand of media server package SMB Server Message Block protocol for file and printer sharing; Windows-native VPN Virtual Private Network
5 acronyms in this thread; the most compressed thread commented on today has 6 acronyms.
[Thread #971 for this sub, first seen 16th Sep 2024, 05:35] [FAQ] [Full list] [Contact] [Source code]
Currently I use Jellyfin and found it simple enough to setup. My personal setup is https on the public internet using Caddy as a reverse proxy to handle the https part, but you can set it up for local network access only using http.
Jellyfin itself is not the greatest music player ever, (UI is more setup for movies and tv) but there are music-centric apps that use it as a backend that are really good, for most platforms. On my phone and tablet, I really like Finamp, and on the desktop I use Sonixd.
I’m also considering just getting a portable, 128GB FLAC player with a minijack connection and moving on with my life without getting involved in networking at all.
I used this setup for the better part of 20 years. Nothing wrong with it, my music collection simply expanded to the point where it simply wasn’t feasible to store all of it on my iPod anymore and from day to day I never really know what I’m going to be in the mood to listen to. Setting up a streaming service made more sense for me.
Why would you stream flacs? If you download lossless is to hear directly with ASIO or WASAPI .
I used Plex for a long time but moved to Jellyfin after reading about the general direction Plex is going (trying to commercialize it, partner up with industry, make it more than just a self hosted media service).
Both have what you’re looking for.
I would say Plex is slightly easier and has the benefit of PlexAmp (available for Linux, Windows, and mobile).
That being said, Jellyfin is about the same ease to get set up, but it’s just a tad less polished, but in sort of a nice way. It feels more like “yours”, if that makes sense.
For both, I recommend hosting them in Docker, using Docker Compose, and using the LinuxServer version. LinuxServer maintains updated software, packaged in an easy to install format and they help you out with sample Docker Compose files and explanations to get things running.
I’m using a Jellyfin server with Symonium on android. It’s almost as good as plexamp, but sadly not available on other platforms. Symfonium will work with any media player that uses subsonic. My current jellyfin implementation is http with a VPN for external use.
I’ve been very happy with Navidrome. I have it accessible on a subdomain, so I can just use it from wherever I want. Feishin is a great frontend for Linux desktop, and Tempo is a great frontend for Android.
My friend uses Jellyfin instead of Navidrome, and he’s also happy with it. Both the frontends that I mentioned work with Jellyfin as well.
Second Navidrome. I use it with the android app Symfonium and have thoroughly enjoyed it.
I’m using Jellyfin, but navidrome worked just as well when I tried it