What does HackerNews think of navidrome?

🎧☁️ Modern Music Server and Streamer compatible with Subsonic/Airsonic

Language: Go

#3 in Raspberry Pi
My Pi4 (8GB ram) runs:

1. Mox mail server at home (PTR record set up with ISP) - https://github.com/mjl-/mox.

2. Web server (no external hosting hurray); TLS set up via LetsEncrypt.

3. Navidrome for streaming my music collection to my phone/computers. I ripped my thousands of CDs to MP3. I use subtracks on my phone for listening to it, and sonixd on my computers (Mac/PC). https://github.com/navidrome/navidrome

4. mpd for driving some speakers via a USB audio interface so I can use some speakers plugged into the Pi for listening to music in the same room as the Pi (practicing guitar). I control this via the Supersonic app on my phone.

5. Wireguard VPN so I can connect home.

6. PiHole for my network at home. Combined with Wireguard, it means my phone is permanently connected to my home network and gets ad-blocking and stops apps dialing home. I use DroidHole on my phone to see what's going on.

7. xrdp server running, so a usable desktop is always available.

8. miniDLNA running connected to a NAS box so that I can watch all my DVDs easily on my TV downstairs (I spent weeks ripping them).

9. Tuya IoT API for turning some smart plugs in the house on/off via cronjob; I do this instead of using the timer in their app because it means my phone can be off the network/abroad and these plugs/lights still turn on/off.

10. linx-server (https://github.com/andreimarcu/linx-server) for sharing files so that I don't have to use Google Drive and share with people that way.

11. Peer Calls (https://github.com/peer-calls/peer-calls) so I can video conference in decent quality without having to use Google Meet / Teams etc. I also host a STUN and TURN server on the Pi so that Peer Calls works behind NAT.

12. Runs CUPS so that my very cheap Samsung wireless laser printer actually shows up as an AirPrint printer for my wife's iPad/iPhone and shows up in Android printing. (The printer does not natively have AirPrint capability but CUPS means I can provide it to users on the network).

It fetches time over NTP on a cron job. It also blocks various ASNs and IPs by country on a cron job to stop annoying remote pests and cloud providers. It also runs Monitorix so I can see system load, and goaccess on a cron job so that I can see who's hitting my website without having to resort to analytics nonsense.

It boots from USB3 (it has a NVMe in an IcyBox caddy).

Incredibly useful device.

I was a Spotify subscriber for about a decade (I was successfully hooked by their discounted college student rates), but I switched back to my own music curation recently: I noticed that Spotify would consistently "rabbithole" me into the same ~150 songs, most of which I didn't even like. They would also frequently lack small artists or independent labels, so I ended up having two media libraries anyways.

I switched over to Navidrome[1] as a self-hosted solution about a year ago, and I've been extremely happy with it (especially since it exposes a Subsonic-compatible API that most clients know how to use). The only thing I really miss is the mobile client experience: Spotify handled periodic disconnects (like on public transit) very gracefully, while no Subsonic clients that I've tried do so nearly as well.

[1]: https://github.com/navidrome/navidrome

If you're willing to check out self-hosting, Navidrome is fast, slick, and under active development. It provides a Spotify-like experience from your local collection and is compatible with dozens of clients for different platforms.

https://github.com/navidrome/navidrome

I recently setup Navidrome (https://github.com/navidrome/navidrome) for listening to my music collection, and it’s pretty good. Kodi/Plex work, but their apps are really built for the video use case, music is different enough that I like having the specialized tool.

Navidrome supports the Subsonic API, so there are a number of native clients compatible with it. I chose Substreamer on iOS. It’s not free, but it’s a one-time cost that doesn’t try and drag you into any subscriptions or anything. There are free alternatives like iSub, but I found their UI lacking & decided Substreamer was worth the few bucks.

My audio workflow is basically command line / self-hosted:

- beets [1] for music tagging

- m4b-tool [2] and tone [3] for audio books merging and tagging (Note: I'm the author of these)

- iTunes and an iPod Nano 7g and iPod classic 2009 to listen "offline" (although audiobookshelf supports offline downloads)

- self-hosted navidrome [4] + substreamer[5] for music and audiobookshelf [6] for audio books on my android / ios devices

Everything with docker containers without further dependencies. I must say, that this works pretty good so far and I never missed something really bad on id3v2.3 or mp4/m4b native tags.

[1]: https://beets.io/

[2]: https://github.com/sandreas/m4b-tool/

[3]: https://github.com/sandreas/tone

[4]: https://github.com/navidrome/navidrome

[5]: https://substreamerapp.com/

[6]: https://www.audiobookshelf.org/

Navidrome is far and away the best self hosted streaming music server. I set up half a dozen and wasn't happy until I tried that one. The developer is very friendly and responsive too.

https://github.com/navidrome/navidrome

Navidrome [0] has been a solid replacement for me. It has all the features I want aside from Keycloak/generic oidc integration, and the author is very responsive.

0: https://github.com/navidrome/navidrome

My current solution is Navidrome[0], which is a similarly lightweight music server (also written in Go and FOSS [1]), with a similary nice Web UI that works well as a responsive webapp / PWA.

Probably the biggest difference however is that, instead of a custom API, it supports the somewhat-standard Subsonic API, which makes it usable via a large collection of native clients. It also has a few more features like multiple user accounts, etc.

TBH, the overlaps are big enough that I'm not seeing the space for Euterpe. I suppose the installation is a little bit simpler if you don't use Docker?

[0] https://www.navidrome.org/about/

[1] https://github.com/navidrome/navidrome/

For anyone who wants to stream music from a server they run, I strongly recommend my setup. I run Navidrome [0] on my media machine, and then connect to it via Jamstash [1] on my desktop browser or play:Sub [2] on my iPhone. Lots of features, few bugs, pretty easy.

[0] https://github.com/navidrome/navidrome

[1] https://jamstash.com

[2] https://apps.apple.com/us/app/play-sub-music-streamer/id9553...

Check out Navidrome [0]. It's the closest one that I've found. It supports the Subsonic API so there are plenty of mobile apps and probably some desktop ones that work with it. I use play:Sub on iOS.

0: https://github.com/navidrome/navidrome

Navidrome [2] is another relatively new option for music streaming servers. Lightweight, written in Go, can handle very large music collections, and is compatible with Subsonic/Madsonic/Airsonic.

[2] https://github.com/navidrome/navidrome

Yes!

I purchase music from Bandcamp, where everything can be downloaded DRM-free. https://bandcamp.com/

I have a VPS with Navidrome as a web streamer/front-end. Navidrome also provides an API compatible with Subsonic. https://github.com/navidrome/navidrome

For iOS, play:Sub has a pretty nice UI, streams everything from the server, transcoded on-the-fly from FLAC to Opus. https://apps.apple.com/us/app/play-sub-music-streamer/id9553...

It's quite a joy to use and it feels good that the artists (especially lesser known) get paid more than through spotify/apple. I also throw a little bit of money at the Navidrome dev every month.

Transcoding is a fairly common feature, although typically to mp3. I use Navidrome [0] to self-host my own music, and it lets me set up custom transcoding profiles with ffmpeg.

[0]: https://github.com/navidrome/navidrome