Blackcandy: Self hosted music streaming server

24 days ago (github.com)

I love self hosting useful apps. I wish finding more things was easier. Right now I self host a jellyfin server and home assistant. When I learned a subscription for home security was $75/mo I said “there has to be something out there” and there was. I pay the developer their $6/mo even though everything works without it.

Jellyfin has been amazing for physical media backups. It’s nice to experience old VHSes and DVDs in a user friendly way.

  • nginx-proxy becomes almost a must have if you have multiple services and prefer remembering domain names instead of port numbers https://github.com/nginx-proxy/nginx-proxy

  • > When I learned a subscription for home security was $75/mo I said “there has to be something out there” and there was.

    Can I ask what it was you found?

    • Heck you can even cobble stuff together with Home Assistants and various door/window/presence/water/humidity sensors. I was able to build a notification system when doors, windows, or fence gates are open. Same with panic buttons that alert my SO if any of us need assistance when putting kids to bed without whipping out the phones.

      All of that can be loaded into HASS using a $26 Sonoff Zigbee dongle and various Zigbee devices like Aqara and others.

    • ADT; there’s a program through my employer where employees get deals and so I made first contact with them. I chatted with a salesperson who walked me through a sign up process before I could ask any questions (I made contact saying I wanted to inquire about services and then said we couldn’t talk until he collected all my information).

      He said normally it’s $100/mo but with this deal, it’s $75/mo.

      No thanks. $900/yr to $1200/yr + installation fee for home security kinda stinks. I was told the equipment wouldn’t work if I didn’t have the subscription.

      I’m sure I was taken for a ride too, being told false information (the equipment really wouldn’t work? It’s really $75/mo?). I indeed felt like I was being treated like a mark. At the end I said delete my information but honestly I doubt they did. But who cares because now I got myself into this pretty fun world of home automation and security through Home Assistant and self hosting.

    • Have you looked at Konnected? Really great if you already have a system installed but dead like I do.

    • Frigate is worth looking at as well if you have RTSP cameras as part of your security solution.

I've been using Plex (connecting via Tailscale) with their Plexamp music player.

It's been working pretty well, but I might have to give this a try to compare. Although, it's not clear from the GitHub README or the Apple App Store listing if the mobile app allows you to download music for offline listening.

  • Also using Plex and Plexamp, and very happy with that combo. Curious about why talescale is needed - I'm on a static IP, but I believe Plex also provides a forwarding service (?)

    I think you were talking about Blackcandy in the second paragraph, but just to be clear, Plexamp does allow downloading for offline listening.

    • It's free, extremely easy (not that port forwarding is complicated) and you don't need to port forward.

      I point DNS records on my personal domain to tailscale IPs so it some subdomains can only be accessed when connected to tailscale, I can do app.mydomain.com etc without exposing anything online.

  • Same here - Plexamp is working out great for self hosted music on-the-go. Was happy to contribute the small amount towards development.

  • Pretty much the same here;

      - Cloudflare tunnel for public access
      - Tailscale for private use and sharing over WebDAV
      - Nextcloud for general file management 
      - Jellyfin for music and video streaming
    

    Have this running in containers: https://github.com/gbraad-homelab.

    Nextcloud's WebDAV has issues with filenames or at least how it works. A large amount of files in non-'standard' characters wouldn't show up, so Ampache/Subsonic wouldn't work. This is why I tried Jellyfin.

I tried this (among a bunch of others) about a year ago and landed on Gonic[1] for the server and Supersonic[2] on PC and Amperfy[3] on mobile. Yes it's a few different tools to maintain (plus beets etc), but it's the ideal set of features etc for me.

Self-hosting has been fun and I've started experimenting with local LLMs to build playlists which is helping discoverability.. or more /rediscovering/ artists that I haven't listened to in a while

[1] https://github.com/sentriz/gonic/ [2] https://github.com/dweymouth/supersonic [3] https://github.com/BLeeEZ/amperfy

  • Why did you chose gonic over navidrome[1]?

    My stack [2] is: navidrome (music - subsonic server) substreamer (app) beets (music organization) EAC (audio cd ripping) audiobookshelf (audiobooks)

    Most important part of navidrome are smart playlists[3], with these I didn't need AI support just yet...

    1: https://github.com/navidrome/navidrome/issues/1417

    • I didn’t need a web client and Gonic shows the actual directory layout for the folder API. I have a few albums that requires gapless playback and most web players can’t accommodate them. My music library layout is mostly ‘collection/album-key/track-key.ext’ where album-key is something that uniquely identifies the album and make it easy to search for. For my main collection it’s’artist - year - album’ while for others it can be just ‘year - album’. Gonic shows the same layout to clients.

      1 reply →

    • Another +1 for navidrome. I use along with play:sub on ios, and feishin with desktop , and couldn't be happier.

      I also use Lidarr for PVR needs

    • I have chosen jelly over it because of the way navi stores music. I prefer to organize music in folders myself, and tag them with picard. Jelly then just shows everything nicely with 0 configuration.

      10 replies →

    • +1 for navidrome. I’ve had better luck with the play:Sub app (iOS).

      I think it’s important that these servers use a common API (subsonic), but it seems like the slickest apps are always targeted to one specific backend (plexamp, finamp, prism music).

    • I did try Navidrome and used it for a while.. I honestly don't remember why I switched but I suspect the reason was probably more related to the client I was using at the same (Submariner on macOS) than the server-side.

  • I have both Gonic and MPD on my home server (an old mac mini running debian). It's connected directly via optical to my AVR and MPD can be controlled with the Rigelian app on my iPhone. Gonic is for Amperfy when I want to stream to the Homepod.

    On my desk, I used to have a satellite instance of MPD for my desktop setup, but I copied over my library to an external drive and use that as my main instance (rsync to the server when I update it). I rarely play from my laptop (I control the others instead). but could use either the satellite config, a subsonic client, or a quick sshfs mount.

    And for offline sessions, I have a DAP with a 512GB card and most of my collection.

  • I currently host icecast/ices. Does your above options allow multiple clients to listen to same stream. I see it mention jukebox mode.

  • Is there an Apple Watch app for this tech stack? That’s what my current (totally different) solution is missing.

  • +1 to Amperfy, I use it with the Music app on my Nextcloud. The App Store version is a bit barebones last I checked but the Testflight version feels like a completely different app, it’s just like Apple Music but self-hosted. Kind of like Apollo felt like an app Apple would make.

    • I'm hyped about Amperfy but it doesn't have gapless playback which is a hard must for me. Last time I checked, anyway. Looks like it's been committed recently though: https://github.com/BLeeEZ/amperfy/issues/96

      Also it seems transcoding is mp3 only, whereas play:Sub can use (and seems to default to using) OPUS which is better in every conceivable way.

      Edit: Trying gapless with the TestFlight - seems to work, however, it doesn't change the displayed track.

  • OK, I will ask. I presume you purchased all those music files that you host on that certain server, didn’t you? I will also assume that there is no tool that lets you acquire music MP3s (or some appropriate file type which is non-audiophile listenable) the Linux ISO way (without having to hunt them songs one by one), right? I am talking about someone already having a Spotify/apple music playlists/likes/favourites.

    Also, these self hosted music services mean — no new music reco/discover, right? Not necessarily a bad thing. I was curious. Never done this.

    How is the cost/spec need of this self hosting like? Does it have to be stand alone or it can live with other things like maybe an archiving/bookmarking service and small self hosted utilities like that (of course not all being used at once).

    • >OK, I will ask. I presume you purchased all those music files that you host on that certain server, didn’t you?

      I self-host my music streaming with Plex, and I'll go ahead and admit to you that no -- not all of my music is paid for.

      >Also, these self hosted music services mean — no new music reco/discover, right?

      I've discovered more music, and more interesting music, through my Plex server in 6 months than I have on Spotify/Apple music in 6+ years. On the site where I get my music, I have downloaded thousands of albums - 75+% of which I have never heard in my life. I did this by downloading albums I liked, and then snatching all related albums on top, and then snatching all the albums collected by people who like the albums I like, and so on. And so I now have a collection of music all relatively close to my taste but FULL of stuff I've never heard in my life.

      On top of that, this site also has ways to follow users and has a way to see albums that they enjoy. It has a top 10 board of the most popular albums on the site that day/month/year.

      Then, on the Plex side, Plexamp (which I stream with) has many many ways to start "stations". "Time travel radio", Decade radio, Style (genre), Mood ("Ambitious radio", "Cerebral radio", "Passionate radio", etc.) and more such as algo-DJs with specific styles.

      It's all much higher quality mechanisms for discovery than payola-weighted streaming algorithms and "curated" playlists.

      5 replies →

    • Self hosted music service doesn't necessarily imply new music discovery problems, because a lot of people still discover music the old non-algorithmic way, by being interested in certain genres, studying labels and artists and going through their albums, adding to their collection what they would love to hear again. Buying and owning the song/album somehow brings me more satisfaction than paying a monthly fee for a song library where I won't even listen to 99% of the tracks. Regarding the cost – it is most certainly magnitudes cheaper than renting music from spotify or apple music, but it is ofc more expensive in terms of attention.

      15 replies →

    • For some people music is a hobby — looking for new stuff, buying and sorting it is their passion.

      The worst thing you could do to me is tell me that I pay $5 a month and the rest of my musical journey is solved and gets decided by a corporate algorithm that pays emerging musicians and niche artists a starving wage.

      1 reply →

    • Not OP, but gonic is very lightweight and takes little resources. It lives on a machine that serves a few websites and also hosts my photos with photoprism (by far the most resource intensive service on this server). It's a basic N100 machine with 8GB RAM.

      As for my music, although I own a physical copy of most of it that I bought legally, I downloaded almost everything through bittorrent as is easier than ripping CDs.

      A sizable part of my collection consists of things I was unable to buy because it's unavailable here or unavailable at all, though. Some albums I received from friends. I don't feel guilty about it, to be clear.

      8 replies →

    • Bandcamp has a massive amount of _legal_ free / zero cost / €1 per album music if you spend the time digging. As a hobby DJ I really enjoy the digging aspect!

      Please don't be so quick to assume all music is pirated by those with large audio collections.

    • Buying new tracks like when I was still using iTunes would be nice. Bandcamp comes close but I don't mind the extra step of downloading the zip file and running my script to have it in my music server. Where I also have plenty of digitalized CDs that I own.

      Spec-wise, start cheap and upgrade the CPU/RAM when you hit limits. It's not like you'll use all those services at the same time. My home containers all run on a recently purchased HP Mini G2 that I upgraded from a 6100 to a 8-core 6700 and the RAM is an odd 24GB. It even has a rarely used minecraft server. Docker containers are bundled into proxmox instances per user or whatever makes the most sense.

    • > Also, these self hosted music services mean — no new music reco/discover, right?

      Sure they can do. Mine gets suggestions from lastfm.

      > How is the cost/spec need of this self hosting like?

      Mine is a raspberrypi4 on my local network, probably less than 20€ of electricity per year. Hosts other things...

    • You don't do music discovery by blogs, music journalism, word of mouth, genre databases and so on? You're fully subservient to some algo an ad corp is using?

      As for purchasing, many artists give away their works (e.g. "name your price") or don't deserve payment but should be archived and studied anyway (e.g. nazis, billionaires and so on). It's probably not that hard to build a Bandcamp crawler that fetches name-your-price-albums from specific genre tags.

      For a few clients and simple browsing you can run an audio cast off a router or cheap SoC.

    • Some, ie Roon, allow you to play back both your local library and music from certain streaming services so you get the benefit from both

I have tried every music playing option under the sun for the last 15 years and am now happily back to creating playlists on my computer and periodically dragging them to my phone's local storage. There is still no better overall experience.

  • Same! I use syncthing-fork to automate the process: https://github.com/Catfriend1/syncthing-android

    • Storage costs being what they are now, I'm just syncthing'ing my entire mp3 collection to my phone now. According to syncthing it's 27.9GB, and while I'm sure there are people out there with another factor of magnitude more, a 512GB SD micro card, where the value sweet spot appears to currently reside, is ~$38 now. You can stick a lot of music on your phone now. At 256kb/s or so that's roughly half-a-year straight of music [1]; if you really just can't cut your collection down to that, well, I mean, you can nearly get the full year straight for $90 or so now, and I'm sure 2TB will be along shortly. We're not that many exponential doublings away from you being able to store enough music to last your entire life on your phone.

      Assuming your phone still takes an SD card, of course. I get the whole "push into the cloud" thing but SD card prices have been consistently running ahead of cloud storage options and bandwidth plans for a while now; it's kind of amusing that it's the high end phones that lack this option. It's nice to be able to slam music, movies, entire seasons of TV on to my phone without it interfering with the main OS space.

      [1]: https://www.wolframalpha.com/input?i=512GB+%2F+256kilobits%2...

      6 replies →

  • Sam here. I used to have huge library of MP3 tracks to listen while driving, but as car multimedia systems evolve, now I pull music videos from youtube and enjoy "selfhosted" VH1 (for those who know). Too sad modern VH1 is a shadow of it's past, broadcasting stupid shows instead of great music (please allow me to be a grumpy uncle here).

    This approach requires way lot more space (even if I pull videos in 1024x768, which is my car multimedia system resolution). For now it's just a plenty of SD cards, will see how it is going to change.

  • Even more niche with headphones that have storage. Why would anyone not handpick music for those headphone with other than a 170bpm?

I’ve been searching for services that host personal music collections, but there doesn’t seem to be much available. I came across a product called Vox [1], which I might try. There are also plenty of self-hosted projects of varying quality (but I hadn’t seen Black Candy before).

I'd like a service where I can upload a large folder of MP3s, and it would help organize them into albums, perform useful processing like ReplayGain normalization, BPM and key analysis, etc. It should also have a good playlist manager and player for desktop and mobile.

Some existing services allow you to add your own music files, like MP3s, but this often feels like a second-class citizen. Services like SoundCloud are focused more on social interactions, which I don’t really need.

Have I missed any services like this?

There's some growing dissatisfaction around algorithm-driven music services like Spotify. Also, these services carry the risk of music disappearing for various reasons. I think a service allowing curation of own MP3 collections could appeal a significant fraction of all music lovers out there.

--

1: https://vox.rocks/

  • All you need is this:

    1. Self-hosted web server with local file system access to your media.

    2. One HTML page that I will generate for you. This page will contain a media player and a play list of your media files.

    With this approach the solution is ridiculously simple, but you are at the mercy of the client device web browser for media codec/container support. For audio this is not so restricting but for video this is really restricting.

    The application that generates that one HTML page for you is this: https://github.com/prettydiff/mp3-master-list

    It is a Node.js application and you will need to run npm install in the application directory before the other commands will work.

    Enjoy!

  • Navidrome has worked well for me for the last couple years. My collection (~80 GB) is pre-organized FLAC but Navidrome will transcode to MP3 if needed. I use Substreamer on Android to connect to it (Airsonic API/protocol) or the WebUI at home or work.

    Just the right balance of simplicity and features for me.

    • if not for the work requirement, at 80gb you could likely do what I do: use syncthing to make there be a full copy of the files on your phone. I've got a media terminal, my laptop, and my phone each keeping each other up to date. it's never broken or been frustrating. it works offline perfectly.

      1 reply →

  • I use iBroadcast[0], it's a service dedicated exactly for this. Costs me a bit each year but I've felt it worth it. There's some differences to organising in iTunes like the handling of compilation albums that I'm not so fond of but you can see how it works on the free tier.

    The browser client only does 128 kbps streaming but their mobile client can set the streaming quality (I have it at 256, max is 320) and I'm working on my own PWA client using their API that I've also set to 256, which would work on both mobile and desktop.

    You can also set the browser client to stream the original file directly but browsers don't play most of my formats like ALAC so it just doesn't play anything then.

    [0] https://ibroadcast.com/

    • Thanks for the pointer!

      From the "outside" this looks like such a strange product. The landing page is very obscure and, together with the name of the service, I would automatically think this is a super old school product (being generous) or some sort of weird scam (being overly critical). There are no docs or pictures or any further description of what the product looks like, I guess the authors expect people to sign up to see (it is free! :-).

      Other than that, I wonder how they address their costs [0]. It seems free accounts have unlimited uploads. Anyway, I guess I'll have to give this a try to learn more about it.

      EDIT: I found some pics by clicking in their facebook page, which in turn links to a news page [1] (...).

      EDIT: This product is fascinating. Seems like they've been around for 12 years, have a bunch of loyal users, and support their product (?) via reddit (at minimal approve of the reddit channel since they link to it themselves!). I wish we could know more about the team behind it. Related: [2].

      --

      0: https://www.ibroadcast.com/premium/

      1: https://ibroadcast.com/news/

      2: https://www.reddit.com/r/ibroadcast/comments/1d1iaht/is_ibro...

  • Most self-hosted services metadata is only as good as the metadata on your audio files. I think using something like MusicBrainz Picard or beets to tag your media well is required, along with making sure that all files of a given album are in the same folder. (Plex has what seems like strict file naming conventions for music, but really all you need to do is make sure each album has all its files in one folder).

    If you're interested in something more automated than having to use a program to tag your media, then I'm not sure what a good option is. Most people that don't use streaming services and have a digital music collection are tech-savy and don't mind going through the extra effort of tagging the media.

    • So here is my question, or one of them, as someone starting this whole journey: exactly what metadata do you want outside of artist, song title, album title? Because I can see there's a lot to be had. Embedded album covers, subgenre tagging, synchronized lyrics ... hyperlinks to Discogs and MusicBrainz, maybe? Tempo in BPM? Key?

      ID3v2.3 or IDv2.4? Can you even do that to FLAC? And where do you get that metadata, using what tools?

      I just don't want to be the guy who has to re-rip three thousand CDs because he did his workflow in a lazy or careless manner.

      3 replies →

  • I’ve been wanting the same thing for a while now too. I’ve thought about trying to build it myself but the thought of requiring users to manage their own library seems too niche. A hosted, music-focused Plex competitor sounds awesome but also not sustainable. Surely the majority of those users who care about managing their music library are also happier owning their storage too, no?

    • Storage is tricky... I know how to self-host software and get storage but I find it too much of a hassle to do it for me only, so I just have a folder in a google drive, which I need to migrate from soonish.

      Why do you think a Plex competitor would not be sustainable?

  • Huge shout out to astiga which I've used for a year and a half. It'll run a streaming service for you out of cloud storage (eg s3, but also stuff like dropbox or google drive).

    I'd love to self host but have a toddler and not much time, so astiga is a great "take my money and do it for me" kind of service!

    [0] https://asti.ga

Large microsd cards are very cheap these days. Using all this cloud stuff seems like a waste of multiple resources. And if you ever don't have a good connection then it's worthless. I've given stuff like this a try and only found it worth it on internal networks.

  • > Large microsd cards are very cheap these days

    How reliable are they? I've had a couple of cards that I was playing music off mysteriously wipe themselves over the past year so I've subconsciously labelled SD cards as unsafe for long term storage.

    Is this common or was I just unlucky?

    > if you ever don't have a good connection then it's worthless

    Here in Vietnam, internet is more stable even than electricity. We can be in the middle of a typhoon, trees and roofs being destroyed, no power for several days, and mobile data never even drops in speed.

  • Syncthing and local files are a much better strategy. Internet access is just too unreliable even when its ubiquitous.

A lot of talk here about different solutions. I wonder if there's a universal interoperable standard for self hosted music streaming these days? I'm still using the old Logitech Media Server (with some physical Squeezeboxen), but something a bit more featureful would be great. Especially with good indexing and search. And if it could interoperate so I could choose different clients and server, and wouldn't be tied to that software.

  • OpenSubsonic (https://opensubsonic.netlify.app) is the closest. It's a collaborative effort to extend and modernize the Subsonic API, which had become a sort of de-facto standard API. Navidrome, Gonic, LMS (Lightweight Music Server, not Lyrion/Logitech), and other servers implement the API, and Supersonic, Symfonium, and other clients consume it. (And it's backward compatible with the original Subsonic, so older Subsonic clients will work, just not support all the new features that have been added.

  • Same here, love Logitech Media Server... (and also the iPeng app.)

    For reference:

    - https://lyrion.org/

    - https://github.com/LMS-Community/slimserver

    • +100 for Lyrion. I have been running it for over 20 years from back in the slimserver days. I also was a huge iPeng app fan until I installed the newer "Material Skin" plugin. If you have not used it yet, I highly recommend you check it out. I use the HTML5 interface full time over the iPeng app on my mobile for controlling the house/music selection. Also the "AirPlay Bridge" and "Chromecast bridge" plugins allow me to use my homepod devices/AppleTV's and Google Nest Hub devices as speakers which expanded my audio experience. There is also a host of ESP32 dac+amp devices and raspberry pi devices that you can use a players, its endless!

      1 reply →

  • The closest I know of is subsonic. Since it’s come and gone compatible apps have also worked with backends like airsonic and Navidrome.

    I stick with that family because I don’t want to have to change apps (I use play:sub on iOS)

  • UPNP/DLNA is supported on many devices, especially audio-related devices, though maddeningly not so much on desktop OSes.

  • Not so much a planned standard, but Airsonic is about the closest thing. Many servers, clients, and third party tools are airsonic compatible. Navidrome, the current server I'm using is compatible for instance.

If you’re willing to pay for proprietary software, I’ve been incredibly happy with Roon for music organization. Handles 99% of albums I add without an issue, great multi-room support, best suggestions of any existing service (Rest in peace Google Play Music). They added remote streaming a few years ago and it’s all I use now.

  • Note that it is a $12.49 subscription, or $829.99 one-time. So you really need to love its featureset.

    • That's some serious price. If you're a professional music maker and need top-of-the-line audio production software, Ableton 12 Suite is ~600 EUR, and that's for making music, not consuming.

      4 replies →

  • I have friends that use Roon and say it's great, and has some nice features for room-based EQ, however I want to spend £0/mo standing cost (all extra goes to bandcamp).

  • They do not have a Linux player so the price tag is a bit hefty compared to Plex or the free options...

    • You can control the playback via a phone if you need to play music through a Linux system though.

      Music playback via a PC isn’t really what Roon seems to be going for though, so much as allowing you to control music playback through proper audio systems via a PC or other device.

I guess this is the time I ask the question I ask whenever a new self-hosted media streaming server gets posted...does anybody know of any similar server for demoscene tracker files and/or retroconsole music format (bit tunes) hosting, transcoding and serving the stream?

chip-player-js [1][2] has more or less exactly what I'm looking for, and I'd be perfectly happy with it, but I can't seem to get any of the docker containers I find to build properly or the repo to build due to dependency issues (probably ignorance on my part) [3][4].

1 - https://chiptune.app/ 2 - https://www.mattmontag.com/music/chip-player-js 3 - https://github.com/mmontag/chip-player-js 4 - https://github.com/soltune/chip-player-js-docker

I run Jellyfin and Symfonium. Symfonium isn't free but it is feature filled and it seems to be a passion for the Dev.

All for other options in this area as it has taken me a few goes at finding something that works for me. Usually it is the client that is lacking.

  • Symfonium + Navidrome here (Plex running on raspberry pi couldn't stomach my music collection, and Jellyfin is even worse).

    What I really like about Symfonium compared to other subsonic clients is that it keeps the db locally.

    • I have had Jellyfin running as a media server on an i7 gen4 PC that I have setup as a NAS as well. I first tried subsonic client and Nextcloud but I was only running it on an Odroid H2. I think the extra CPU performance helps.

  • I've started using Navidrome with Symfonium a few months ago. Navidrome is pretty good, but I'm very impressed with Symfonium. It's simple, responsive, and straightforward, but it's got a ton of options so you can fine-tune the client quite a bit.

  • Thanks for a tip to try out Symfonium. Seems to work great with Plex and Navidrome. I have a few issues with Plex for music, especially when it wants to convert DSF files into flac, which is fine but unnecessary. Plexamp on Android also sometimes fails to download full albums for offline playback.

    Jellyfin I've tried a few times, but it still cannot encode and stream music as opus, which I find the best format when using low bitrates. Navidrome and Plex support opus by default.

Longtime Navidrome user so that's what I'm comparing this to.

This project looks cool, albeit simple at this point, but what I'd really love is a solution for music discovery for folks who self host their collection.

Is there something that sets this project apart from other easily self hostable tools?

  • Yes, I'm also interested in this project but Navidrome does a great job alongside Jellyfin and Audiobookshelf. A great trio.

    • Hey @hebocon I've been using jellyfin for both music and movies for close to a year...but keep hearing of navidrome (for music) as well. So, can i assume that you don't really use jellyfin for music, and instead use navidrome for that? How does that work for you? Any issues of interference, etc? I guess if i wanted jellyfin only for movies/tv, i could point it only at the folder where such media is saved, and then separately manage music via navidrome...but wondered what the benefits would be? Genuinely curious if you woiuld kindly share more info about your setup. Thanks! :-)

      2 replies →

    • This is my stack too. Initially tried to stuff everything into jellyfin (and plex before that) but am confident this is the best stack today.

I've been using Navidrome to great success, but will look into this. Any particular differences between the two?

Wow! Complete with custom mobile player! That's quite a ways up from "set up a ssh tunnel home and use vlc", I may have to take this for a spin.

Seems the theme going into the new year might just be self hosting things... This and this https://github.com/siyuan-note/siyuan are both on the front page of HN

  • People are fed up with subscriptions and things like minipcs and docker have made this all very accessible

    • (Are you havoc from the JB community?)

      I agree! I just don’t know if this would pass the wife test. All of our music and photos and videos tc etc being hosted by me where I could potentially lose everything.

      All the work needed to properly store enough backups and test upgrades and maintain things I just figure the tens of dollars I spend monthly to host this stuff for me in iCloud and other places is worth it.

      2 replies →

Hmm.. I have a different use case. There are 7 years of a radio show with daily recordings of about 2-3 hours in length, including images. About 400GB in size.

It used to all be hosted on a heavily ad plastered Drupal site, but I took it down a few years ago, because reasons.

I would like to make the archive available to the public, it would be such a waste to delete it. When I write available, I mean via a website. This blackcandy seems to be private only, requiring auth.

I would also prefer if the shows were streamed not directly downloaded, to keep bandwidth down, if you know what I mean.

Does software for this use case exist?

  • This isn't quite what you're asking for, but sticking a copy on archive.org for the folks who want to download the whole thing might be a good idea.

There's also owntone, formerly forked-daapd. It implements DAAP, which is what iTunes/Apple Music uses.

Works with Rhythmbox, at least. IDK if there is a compatible Android client.

  • Owntone http stream works on any browser, ios, droid.

    Works well enough i haven’t bothered to set up anything else.

    Wireguard is pretty great for all this stuff.

I run multiple minidlna instances in Podman and let BubbleUPNP connect to them through Wireguard. Getting the multicast discovery to work was a bit challenging.

  • This is by far the nicest solution out there. All the others, plex, etc are resource hogs that want to transcode everything, unlike minidlna, which can run on a router, if needed, without docker, or all that jazz.

    People might not like it because bubbleupnp is not open source, but it's a very nice piece of software nonetheless.

    • BubbleUPNP is so nice that I emailed the author to please consider taking yearly payments instead of the very lenient one-time price of less than €10.

Does this support the OpenSubsonic API[1]? I didnt see it mentioned. I miss subsonic (except that it was java). All of the current servers have quirks i havent enjoyed, but having the subsonic mobileapp all through them has been great.

[1] https://opensubsonic.netlify.app/

What's the benefit in using a "self hosted streaming server", when I can just mount a network share and connect to a personal VPN when I'm out and about? This is what I've been doing for awhile and I've had zero issues. As far as I can tell it's secure.

Is it just to allow others to use the server with login credentials?

  • I find it easier to stream music from my phone, especially with a slow uplink and the real time encoding to a lossy format with the servers.

The UI looks nice but it doesn't look like there's CarPlay support unfortunately.

I don't use my car that often but when I do I want to be able to access my music library. Right now I'm stuck with Plex and Prism on iOS because other solutions are not good in that regard as far as I've seen in my testing.

This looks interesting for an eventual project.

I want to separate out music into groups, then into shuffleable playlists. I would eventually stream each to one of those local FM transmitters so I could build a few radio stations for my mother, who is absolutely terrible with technology and, at eighty, is not likely to get better. I am figuring a late Fifties/early Sixties (stuff she won dance competitions to), then your basic angry music starting around the mid-eighties (Killing Joke's "Eighties," a few Ministry albums, NIN) and on, a classic rock "station," and now, disturbingly, a yacht rock playlist. Then she can just jump around as needed.

I'd love to find something that works effectively at randomly streaming my music video collection, esp out as an rtsp stream. Kodi's music video support has a tendency to choke and has some weird deficiencies in how it handles them, such as audio leveling.

I'm about to use my existing jellyfin setup. Amy advantage here over jellyfin?

  • Not op but I’ve been running jellyfin for a few years. At least 2 years ago when I tried it for my music it felt clunky . I haven’t checked since but I encourage you to feel out the experience with a few albums, playlists, carplay, &c before going all in.

    Fwiw I ended up using Navidrome m as a server, beets to manage metadata, and play:sub on mobile.

I'm currently using icecast and ices to host a music stream. It'll effectively stream music to a port, and multiple clients can enjoy.

Anyone doing something similar, I'd like to migrate to something more modern.

People who use this or something similar (Jellyfin, Navidrome, etc.), what do you use to easily add new music?

Ideally I'd like to automate this to the point where I can look up an album and it gets downloaded automatically, similar to how Overseerr[1] works for movies and series but without the dependency on Plex.

[1] https://github.com/sct/overseerr

I use mpd and ncmpcpp but arguably I don't need much in terms of features, I just play all the things on shuffle.

No point in using my phone as when I'm on the LAN, I don't need it, and when I'm out of it, it's counter productive to connect to it (because Canada still has third world mobile data rates) and better off replicating the entire library on-device.

  • In Nepal I pay $4.38 per month for 60 GB of 4G mobile data.

    • A quick search on planhub.ca for 60GB with BYOD and unlimited calls in Canada is $35. That's 8x your cost, and that's the minimum, with obscure telcos that piggyback on others' networks, so quality is not great. The Big 3 are more around $45-50.

      It's often cheaper to buy an European eSIM and roam, it's laughable and has been stifling innovation for decades. But hey, someone's getting rich.

I've been using mopidy plus Snapcast to do this (via wireguard when remote) and have enjoyed it. Good multi-room, multi-site audio.

Lyrion should get a mention. It's a brand fork of Logitech Media Server, aka squeezeboxserver aka slimserver.

It has multi-room, quite broad hardware support and support for Spotify, Chromecast, etc through plugins. There are also a few DIY devices you can run squeezelite on to add cheap, good players.

What do people use for a NAS nowadays?

  • I've been using TrueNAS for six years already. I've built a custom server

    - Intel dual core Atom CPU

    - Passive cooling for the CPU, two fans for the HDDs

    - A small Supermicro motherboard with IPMI and six SATA connectors

    - 16 gigabytes of ECC RAM

    - Six 14 terabyte hard disks

    - Fractal Design Node case

    - ZFS with RAIDz2

    But this setup is getting old, I've had a few errors already from the CPU. My plan next year is to build a rack server with a modern AMD Ryzen CPU, 64 GB of RAM, Proxmox with TrueNAS scale in a virtual machine and re-use the disks I have in the current setup.

    Proxmox is much nicer for virtual machines and LXC, and if you need Docker, you can run them in the TrueNAS Scale VM.

  • Hardware wise I bought a TerraMaster F4-423 used last year for about 300€. It's a great device.

    Software wise, I use Fedora Server, although if I had to reinstall now I would use AlmaLinux because I don't need the new stuff coming with Fedora Server on my NAS.

  • mostly an excuse to play with virtualization, filesystems, and networking

    • No sorry, I meant which NAS are people using to run music servers like Blackcandy. I used to run a FreeNAS but need to upgrade badly.

I've been looking for a music server to stream music from my local NAS to our Alexa Echo speakers. Tried Plex, and I can't get it and Alexa to play nice. Are any of these able to integrate with Alexa speakers????

Perfect! I was looking for a way to replace YouTube music. I’ve been slowly migrating away from YouTube, while maintaining the ability to watch my favorite content creators. I use pinch flat, Jellyfin and audiobookshelf.

I don't see any mention of UPnP. Is anyone using a set up where they have some kind of headless device plugged in to a hi-fi amp and just want to control it from their phone without switching on another screen?

  • The combination of OwnTone running on your server and a Wiim Mini (or any of the other Wiim products) is great for this:

    OwnTone is a media server that lets you play audio sources such as local files, Spotify, pipe input or internet radio to AirPlay 1 and 2 receivers, Chromecast receivers, Roku Soundbridge, a browser or the server’s own sound system. Or you can listen to your music via any client that supports mp3 streaming.

    You control the server via a web interface, Apple Remote, an Android remote (e.g. Retune), an MPD client, json API or DACP.

    OwnTone also serves local files via the Digital Audio Access Protocol (DAAP) to iTunes (Windows), Apple Music (macOS) and Rhythmbox (Linux), and via the Roku Server Protocol (RSP) to Roku devices.

    Runs on Linux, BSD and macOS

  • Raspberry Pi Zero 2W running Moode Audio. It's perfect. I have an old iPad running a kiosk-like browser to control but the norm is via web UI remotely.

Never crossed my mind to self host my own music streaming server, great idea!

  • Music is straightforward to self-host. Go for it!

    Video can be a bit harder if you have to transcode.

  • It is really only a thing because smartphone OS vendor make it difficult for people to mount filesystem over the network.

    If you could ssh/sftp mount from android or iOS easily, your favorite smartphone audio player would just play those files from a remount mount without any need of a streaming server.

I'm probably missing something. Why self-host when for $10/mo. you can access a nearly unlimited catalog of music on Spotify with integration on phone, PC, car, Sonos, etc?

  • Because:

    * You don't have any control, if some paperwork fucks up you can lose access (rarer with music but very common with video services)

    * They don't have a lot of rare stuff, demos, EPs, singles, dubplates, etc.

    * You can't choose which version of an album you want.

    * If you run out of money for whatever reason you can't listen to music.

    * Offline is unreliable.

    * Screw having my taste and discovery defined by an algorithm

    * Artists get fuck all money compared to buying stuff off of Bandcamp/buying CDs and ripping them, even if you still pirate a lot of stuff.

    * They have questionable ethics as a company.

    * No lossless.

    * When you curate your own collection you develop in my opinion a deeper relationship with it.

    I have to rent my home and most other stuff in life, music is one of the most important things in the world to me. I'm done with renting that.

    • You forgot disappearing music. Add a song to a playlist, switch countries (or who knows what), it becomes greyed out, or perhaps simply removed. Annoying.

      Their tendency to add random music to my playlists is annoying. I think there's some control over it, but I'm too old to follow up on how it works this week.

      I'm on the most expensive family plan they have, but would pay more to get those two fixed properly.

      I do still buy music on albums and digitally, mostly as a backup exactly for the reasons you mention. But I can't afford to do that for everything I listen to.

      1 reply →

    • To add to this - as someone who is traveling a lot, multiple issues with it saying "Ohh you can't play in this country so I will just stop working" are annoying to say the least.

      Dumped spotify and couldn't been happier.

      1 reply →

  • Because a person might be willing:

    -to directly support artists with buying the albums or songs at full price, rather than letting Spotify barely pay artists anything for their music (especially independent ones without industry connections)

    -knowing you own your library and that once you’ve purchased media, there is nothing to take it away other than the sands of time taking back its silicate

    -one does not need unlimited access to songs they will never hear, especially when natural discoverability on Spotify is so so versus trawling through sites like Bandcamp, Earmilk, RCRDLBL (I know it doesn’t exist anymore), or other places where new artists show their work in a way that Spotify doesn’t provide

    • > to directly support artists with buying the albums or songs at full price, rather than letting Spotify barely pay artists anything for their music (especially independent ones without industry connections)

      You can't post an open source project on this site without half the thread speculating that you're a grifting sociopath. <1% are going to pay for music on here.

      3 replies →

  • It's renting vs. owning. I care a lot about music, so I don't like paying monthly for it without even getting to build a real collection.

    Also, it's just nice to not be at the whims of corporations and copyright lawyers. It sucks when some song you love gets taken down, or your streaming app introduces some shitty UI changes, or you find out the company you're paying has been doing unethical shit, or the monthly fee goes up, or any number of other annoyances.

  • People are already self-hosting other things maybe, and you can self-host from a PC at home without needing to pay hosting.

    The advantages are control over data, greater privacy, etc.

    • I home-selfhost Jellyfin, so I can access media (music, movies and series) from mobile, tablet or TV.

      I can imagine a group of friends hosting on a common VPS, like some sort of private Netflix but nearly unlimited.

  • Apart from many reasons mentioned by others, I find the "nearly unlimited" catalog to be very overrated. Every time someone asks me to queue a song, it's on Spotify maybe 50% of the time - as soon as you start delving into dance/single-oriented genres of the past, streaming services just won't cut it.

    For the record (heh) I also have an extensive vinyl/tape/CD collection in addition to a few TB of pirated FLACs.

Server: Icecast + deefuzzer + directories with music files on a ssd.

Clients: VLC or Transistor on Android.

Search: a web form to a script (Python? Lua?) that uses find to look for files into the music directories.

I didn’t see synology or qnap mentioned here. They are probably the easiest way to self host and stream the músic, even if they are simpler, but for me worked well.

Instead of streaming, it would be nice if the server kept flac than transcoded the library and automatically synced it to mobile devices.

  • Finamp app for Jellyfin can auto-download favourites/playlists/5 latest albums, transcoded by the server. It also mentions being able to lock albums to keep them available offline. Unsure if it syncs without opening the app though.

I use piCorePlayer + LMS (Lyrion Music Server, previously Logitech Music Server) on a Raspberry Pi with a DAC plugged to my amplifier.

Is there a way to play YouTube music and create it as a playlist using this, bonus if it can also block ads?

Slightly off-topic, but does anybody know something easy to create online radios from music collection?

I wish i could send the audio signal to my Sonos/airplay devices. That would make it awesome

[flagged]

  • While there’s a lot of piracy, there’s also a lot of people buying music. Not everyone runs the *arr stuff, I buy several albums every month on bandcamp.

  • If I copy a song from a friend the interpret earns nothing.

    If I stream a song from spotify the interpret maybe earns something depending if he is big.

    => The interpret don't loss anything, only the labels does nowadays.

    Music streaming is piracy for most indie interprets.

  • You have no idea how much "product development" is done for that if this strikes you as odd

Why would I do this over a Synology DiskStation which allows me a hassle-free way to stream my music anywhere I have a internet connection... I use it daily in my car without a problem, going on my 3rd DSM and ~10 years of this setup.

  • For me, the reason is that Synology is not open source, and additionally because their NASes are overpriced for their size and capabilities. I have a 12 disk NAS that cost me a total of $500 (before drives), with no software licensing fees at all, and that's not even an especially cheap one. My earlier NAS was slower but only $120. Of course, it needs a deep 19" rack to mount, but that's actually an advantage for me, as I have a dedicated homelab rack to play with.

  • Because not everyone owns a synology. Some of us have home built NAS. Others would prefer something with lower energy consumption like a raspberry pi.

    • Dedicated NAS hardware is often pretty efficient. The Synology DS224+ (a 2-bay model) for example claims to idle at 4.41W when the drives are allowed to hibernate. That's within spitting distance of a Raspberry Pi, and a lot better than most people will be able to achieve with repurposed desktop/server hardware. Lots of desktops will idle at tens of watts.

      If you keep your spinning rust drives spun up all the time, it's another 5ish watts per drive.